ATLAS Offline Software
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | List of all members
LArOnlineID Class Reference

#include <LArOnlineID.h>

Inheritance diagram for LArOnlineID:
Collaboration diagram for LArOnlineID:

Public Types

typedef Identifier::size_type size_type
 
using id_iterator = std::vector< HWIdentifier >::const_iterator
 Type for iterators over identifiers. More...
 
using id_range = boost::iterator_range< id_iterator >
 Type for range over identifiers. More...
 
enum  HelperType {
  HelperType::Unimplemented = -1, HelperType::Silicon = 0, HelperType::Pixel, HelperType::PLR,
  HelperType::SCT, HelperType::TRT, HelperType::LArEM, HelperType::LArFCal,
  HelperType::LArFCalSuperCell, HelperType::LArHEC, HelperType::LArHEC_SuperCell, HelperType::LARMiniFCal,
  HelperType::Tile, HelperType::TileSuperCell, HelperType::LArOnline, HelperType::LArOnlineSuperCell,
  HelperType::LArElectrode, HelperType::LArHVLine, HelperType::TileHardware, HelperType::TileTestbeam,
  HelperType::CaloCell, HelperType::CaloSuperCell, HelperType::CaloDM, HelperType::CaloLvl1,
  HelperType::GTower, HelperType::JTower, HelperType::Muon, HelperType::LUCID,
  HelperType::LUCID_Hardware, HelperType::Zdc, HelperType::ZdcHardware, HelperType::TT
}
 enum class for eventual final derived types of this class More...
 

Public Member Functions

 LArOnlineID ()
 Default constructor. More...
 
 ~LArOnlineID ()
 Default destructor. More...
 
int initialize_from_dictionary (const IdDictMgr &) override final
 initialization from the identifier dictionary More...
 
bool isHECchannel (const HWIdentifier id) const override final
 
bool isEMECIW (const HWIdentifier id) const override final
 
bool isEMECOW (const HWIdentifier id) const override final
 
bool isEMECchannel (const HWIdentifier id) const override final
 
bool is_H8 (const HWIdentifier channelId) const
 
bool is_H8crack (const HWIdentifier channelId) const
 
bool is_H8low (const HWIdentifier channelId) const
 
bool is_H8high (const HWIdentifier channelId) const
 
bool is_H6 (const HWIdentifier channelId) const
 
bool is_H6FT (const HWIdentifier feedthroughId) const
 
bool is_H6fcal (const HWIdentifier id) const
 
bool is_H6hec (const HWIdentifier id) const
 
bool is_H6emec (const HWIdentifier id) const
 
bool is_H8onlineOnly (const HWIdentifier id) const
 
HWIdentifier feedthrough_Id (int barrel_ec, int pos_neg, int feedthrough) const
 Create a feedthrough identifier from fields. More...
 
HWIdentifier feedthrough_Id (int barrel_ec, int pos_neg, int feedthrough, bool checks) const
 
HWIdentifier feedthrough_Id (IdentifierHash feedthroughHash) const
 Create a feedthrough identifier from hash_id. More...
 
HWIdentifier feedthrough_Id (const HWIdentifier Id) const
 Define a channel identifier from a feedthrough identifier. More...
 
IdentifierHash feedthrough_Hash (HWIdentifier feedthroughId) const
 Create hash id from feedthrough identifiers. More...
 
id_iterator feedthrough_begin () const
 Return an iterator pointing to Feedthrough identifiers collection. More...
 
id_iterator feedthrough_end () const
 
id_range feedthrough_range () const
 
HWIdentifier feb_Id (int barrel_ec, int pos_neg, int feedthrough, int slot) const
 Create feb_Id from fields. More...
 
HWIdentifier feb_Id (int barrel_ec, int pos_neg, int feedthrough, int slot, bool checks) const
 
HWIdentifier feb_Id (IdentifierHash febHash) const
 create feb identifier from hash id More...
 
HWIdentifier feb_Id (const HWIdentifier channelId) const
 Define a feb identifier from a channel identifier. More...
 
HWIdentifier feb_Id (const HWIdentifier feedthroughId, int slot) const
 Define a feb identifier from a feedthrough identifier. More...
 
IdentifierHash feb_Hash (HWIdentifier febId) const
 Create feb hash identifiers from feb identifiers. More...
 
id_iterator feb_begin () const
 Returns an iterator pointing to a feb identifier collection. More...
 
id_iterator feb_end () const
 
id_range feb_range () const
 
HWIdentifier channel_Id (int barrel_ec, int pos_neg, int feedthrough, int slot, int channel) const
 create channel identifier from fields More...
 
HWIdentifier channel_Id (int barrel_ec, int pos_neg, int feedthrough, int slot, int channel, bool checks) const
 
HWIdentifier channel_Id (IdentifierHash channelHash) const
 Create channel identifiers from hash id. More...
 
HWIdentifier channel_Id (const HWIdentifier feedthroughId, int slot, int channel) const
 Define a channel identifier from a feedthrough identifier. More...
 
HWIdentifier channel_Id (const HWIdentifier feedthroughId, int slot, int channel, bool checks) const
 
HWIdentifier channel_Id (const HWIdentifier febId, int channel) const
 Define a channel identifier from a feb identifier. More...
 
HWIdentifier channel_Id (const HWIdentifier febId, int channel, bool checks) const
 
IdentifierHash channel_Hash (HWIdentifier channelId) const
 Create channel_hash from channel_Id. More...
 
id_iterator channel_begin () const
 Returns an iterator pointing to a channel identifier collection. More...
 
id_iterator channel_end () const
 
id_range channel_range () const
 
size_type feedthroughHashMax () const
 Define feedthrough hash tables max size. More...
 
size_type febHashMax () const
 define feb hash tables max size More...
 
size_type channelHashMax () const
 Define channel hash tables max size. More...
 
HWIdentifier calib_module_Id (int barrel_ec, int pos_neg, int feedthrough, int slot) const
 Build calibration module identifier from fields. More...
 
HWIdentifier calib_module_Id (IdentifierHash calibModuleHash) const
 Create calibration module identifier from hash identifiers. More...
 
HWIdentifier calib_module_Id (const HWIdentifier ChannelId) const
 Define a calibration module identifier from a channel identifier. More...
 
HWIdentifier calib_module_Id (const HWIdentifier FeedthroughId, int slot) const
 Define a calibration module identifier from a feedthrough identifier. More...
 
IdentifierHash calib_module_Hash (HWIdentifier calibModuleId) const
 create calibration module_hash identifier from module Identifier More...
 
id_iterator calib_module_begin () const
 Return an iterator pointing to a calibFeb identifier 's collection. More...
 
id_iterator calib_module_end () const
 
id_range calib_module_range () const
 
HWIdentifier calib_channel_Id (int barrel_ec, int pos_neg, int feedthrough, int slot, int channel) const
 create calibration channel identifiers from fields More...
 
HWIdentifier calib_channel_Id (IdentifierHash calibChannelHash) const
 create calibration channel identifiers from hash identifiers More...
 
HWIdentifier calib_channel_Id (const HWIdentifier FeedthroughId, int slot, int channel) const
 Define a calibration channel identifier from a feedthrough identifier. More...
 
HWIdentifier calib_channel_Id (const HWIdentifier febId, int ChannelId) const
 Define a calibration channel identifier from a feb identifier. More...
 
id_iterator calib_channel_begin () const
 Return an iterator pointing to a collection of calibration channel identifiers. More...
 
id_iterator calib_channel_end () const
 
id_range calib_channel_range () const
 
IdentifierHash calib_channel_Hash (HWIdentifier channelId) const
 
size_type calibModuleHashMax () const
 Define calibration module hash tables max size. More...
 
size_type calibChannelHashMax () const
 Define calibration channel hash tables max size. More...
 
bool isEMBchannel (const HWIdentifier id) const
 
bool isFCALchannel (const HWIdentifier id) const
 
bool isEMBPS (const HWIdentifier id) const
 
bool isEMECPS (const HWIdentifier id) const
 
bool isPS (const HWIdentifier id) const
 
bool isNotWarmCableConnected (const HWIdentifier id) const
 
bool isCalibration (const HWIdentifier id) const
 
bool isHecOnline (const HWIdentifier id) const
 
bool isHecOnlineFebId (const HWIdentifier febId) const
 
bool isEMECinHECchannel (const HWIdentifier id) const
 
bool isEmBarrelOnline (const HWIdentifier id) const
 
bool isEmEndcapOnline (const HWIdentifier id) const
 
bool isEndcapOnline (const HWIdentifier id) const
 
bool isFcalOnline (const HWIdentifier id) const
 
bool isEmEndcapStandardOnline (const HWIdentifier id) const
 
bool isEmEndcapSpecialOnline (const HWIdentifier id) const
 
int channelInSlotMax (const HWIdentifier Id) const
 Return the Maximum channel number of a given feb slot. More...
 
std::string feedthrough_name (const HWIdentifier id) const
 Return a string corresponding to a feedthrough name given an identifier. More...
 
std::string channel_name (const HWIdentifier id) const
 Return a string corresponding to a feedthrough name given an identifier. More...
 
int barrel_ec (const HWIdentifier id) const
 Return the position barrel or endcap of a hardware cell identifier:
barrel_ec = [0,1] : Barrel / EndCap. More...
 
int pos_neg (const HWIdentifier id) const
 Return the side of a hardware cell identifier
pos_neg = [0,1] positive-side or negative-side Barrel/Endcap. More...
 
int feedthrough (const HWIdentifier id) const
 Return the feedthrough of a hardware cell identifier :
feedthrough = [0,31] Barrel - A/C side or H/I half barrel
feedthrough = [1,25] Endcap-Standard EMEC 1.6<|eta|<2.4 - A/C side
feedthrough = [1,25] Endcap-Special EMEC 1.5<|eta|<1.6 and 2.4<|eta|<3.2
feedthrough = [1,25] HEC A/C side. More...
 
int slot (const HWIdentifier id) const
 Return the slot number of a hardware cell identifier:
slot = [1,15] Slot-ID in top part of the crate (higher phi)
Note that a crate is = Slot(1-15)L + Slot(1-15)R. More...
 
int channel (const HWIdentifier id) const
 Return the channel number of a hardware cell identifier
channel = [0,127] in all FEB. More...
 
int is_slar (const HWIdentifier id) const
 Return whether the channel is in slar or not is_ slar = [0,1] in all FEB. More...
 
bool isValidId (const HWIdentifier id) const
 Returns false if the identifier is not a LAr-online id or any of the sub-fields is out of range. More...
 
IdContext cryostatEndContext () const
 Define context for cryostat (obsolete) More...
 
IdContext feedthroughContext () const
 Define context for feedthroughs. More...
 
IdContext febContext () const
 Define context for feb. More...
 
IdContext channelContext () const
 Define context for channel. More...
 
bool msgLvl (const MSG::Level lvl) const
 Test the output level. More...
 
MsgStream & msg () const
 The standard message stream. More...
 
MsgStream & msg (const MSG::Level lvl) const
 The standard message stream. More...
 
void setLevel (MSG::Level lvl)
 Change the current logging level. More...
 

Protected Types

enum  { NOT_VALID_HASH = 256000 }
 

Protected Member Functions

IdentifierHash feb_Hash_binary_search (HWIdentifier channelId) const
 
IdentifierHash channel_Hash_binary_search (HWIdentifier channelId) const
 
void channel_Id_checks (int barrel_ec, int pos_neg, int feedthrough, int slot, int channel) const
 
void channel_Id_checks (const HWIdentifier feedthroughId, int slot, int channel) const
 
void channel_Id_checks (const HWIdentifier febId, int channel) const
 
void feb_Id_checks (int barrel_ec, int pos_neg, int feedthrough, int slot) const
 
void feedthrough_Id_checks (int barrel_ec, int pos_neg, int feedthrough) const
 
int get_expanded_id (const HWIdentifier &id, ExpandedIdentifier &exp_id, const IdContext *context) const
 create expanded HWIdentifier from HWIdentifier (return == 0 for OK) More...
 
int get_expanded_calib_id (const HWIdentifier &id, ExpandedIdentifier &exp_id, const IdContext *context) const
 
int initLevelsFromDict (const std::string &group_name)
 
int init_hashes ()
 
int init_calib_hashes ()
 

Protected Attributes

bool m_this_is_slar
 
size_type m_laronlineRegion_index
 
size_type m_lar_index
 
size_type m_laronline_index
 
size_type m_bec_index
 
size_type m_side_index
 
size_type m_feedthrough_index
 
size_type m_slot_index
 
size_type m_channel_in_slot_index
 
size_type m_slar_index
 
const IdDictDictionarym_dict
 
MultiRange m_full_laronline_range
 
MultiRange m_full_feedthrough_range
 
MultiRange m_full_feb_range
 
MultiRange m_full_channel_range
 
size_type m_feedthroughHashMax
 
size_type m_febHashMax
 
size_type m_channelHashMax
 
std::vector< HWIdentifierm_feedthrough_vec
 
std::vector< HWIdentifierm_feb_vec
 
std::vector< HWIdentifierm_channel_vec
 
MultiRange m_full_calib_laronline_range
 
MultiRange m_full_calib_module_range
 
size_type m_calibModuleHashMax
 
size_type m_calibChannelHashMax
 
std::vector< HWIdentifierm_calib_module_vec
 
std::vector< HWIdentifierm_calib_channel_vec
 
IdDictFieldImplementation m_lar_impl
 Field Implementation. More...
 
IdDictFieldImplementation m_laronline_impl
 
IdDictFieldImplementation m_bec_impl
 
IdDictFieldImplementation m_side_impl
 
IdDictFieldImplementation m_feedthrough_impl
 
IdDictFieldImplementation m_slot_impl
 
IdDictFieldImplementation m_channel_in_slot_impl
 
IdDictFieldImplementation m_bec_ft_impl
 
IdDictFieldImplementation m_bec_slot_impl
 
IdDictFieldImplementation m_slar_impl
 
std::vector< HashCalcFebm_feb_hash_calcs
 
std::vector< HashCalcm_chan_hash_calcs
 

Private Member Functions

bool isLArCalibOnline (const HWIdentifier id) const
 
int init_H8Hashes ()
 
int init_H6Hashes ()
 
void initMessaging () const
 Initialize our message level and MessageSvc. More...
 

Private Attributes

std::string m_nm
 Message source name. More...
 
boost::thread_specific_ptr< MsgStream > m_msg_tls
 MsgStream instance (a std::cout like with print-out levels) More...
 
std::atomic< IMessageSvc * > m_imsg { nullptr }
 MessageSvc pointer. More...
 
std::atomic< MSG::Level > m_lvl { MSG::NIL }
 Current logging level. More...
 
std::atomic_flag m_initialized ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT
 Messaging initialized (initMessaging) More...
 

setting pointer to the MessageService

virtual void setMessageSvc (IMessageSvc *msgSvc) override
 
void set_quiet (bool quiet)
 Set flag for suppressing informational output. More...
 
std::string m_group
 Group name. More...
 
bool m_do_checks {}
 Flag for subclasses to know whether or not to perform checks. More...
 
bool m_do_neighbours {true}
 Flag for subclasses to know whether or not to perform neighbour initialization. More...
 
IMessageSvc * m_msgSvc {}
 pointer to the message service More...
 
bool m_quiet {}
 If true, suppress DEBUG/INFO messages. More...
 
std::vector< std::string > m_dict_names
 List of dictionary names used by this helper. More...
 
std::vector< std::string > m_file_names
 List of dictionary file names used by this helper. More...
 
std::vector< std::string > m_dict_tags
 List of dictionary versions used by this helper. More...
 
virtual void setDictVersion (const IdDictMgr &dict_mgr, const std::string &name) override
 
std::string to_range (const ExpandedIdentifier &id) const
 
std::string fix_barrel_ec (const std::string &barrel_ec) const
 
ExpandedIdentifier indet_exp (void) const
 Detector systems: More...
 
ExpandedIdentifier lar_exp (void) const
 
ExpandedIdentifier tile_exp (void) const
 
ExpandedIdentifier muon_exp (void) const
 
ExpandedIdentifier calo_exp (void) const
 
ExpandedIdentifier fwd_exp (void) const
 
ExpandedIdentifier pixel_exp (void) const
 Inner Detector: More...
 
ExpandedIdentifier sct_exp (void) const
 
ExpandedIdentifier trt_exp (void) const
 
ExpandedIdentifier hgtd_exp (void) const
 
ExpandedIdentifier lumi_exp (void) const
 
ExpandedIdentifier lar_em_exp (void) const
 LAr. More...
 
ExpandedIdentifier lar_hec_exp (void) const
 
ExpandedIdentifier lar_fcal_exp (void) const
 
ExpandedIdentifier alfa_exp (void) const
 Forward. More...
 
ExpandedIdentifier bcm_exp (void) const
 
ExpandedIdentifier lucid_exp (void) const
 
ExpandedIdentifier zdc_exp (void) const
 
int indet_field_value () const
 Provide efficient access to individual field values, for subclass idhelpers. More...
 
int lar_field_value () const
 
int tile_field_value () const
 
int muon_field_value () const
 
int calo_field_value () const
 
int pixel_field_value () const
 
int sct_field_value () const
 
int trt_field_value () const
 
int hgtd_field_value () const
 
int lumi_field_value () const
 
int plr_field_value () const
 
int lar_em_field_value () const
 
int lar_hec_field_value () const
 
int lar_fcal_field_value () const
 
int mdt_field_value () const
 
int csc_field_value () const
 
int rpc_field_value () const
 
int tgc_field_value () const
 
int stgc_field_value () const
 
int mm_field_value () const
 
int forward_field_value () const
 
int alfa_field_value () const
 
int bcm_field_value () const
 
int lucid_field_value () const
 
int zdc_field_value () const
 
int register_dict_tag (const IdDictMgr &dict_mgr, const std::string &dict_name)
 Register the file and tag names for a particular IdDict dictionary. More...
 
bool reinitialize (const IdDictMgr &dict_mgr)
 Test whether an idhelper should be reinitialized based on the change of tags. More...
 
enum  ID { ATLAS_ID = static_cast<Identifier::value_type>(0), MAX_BIT = Identifier::MAX_BIT, PIXEL_MASK = static_cast<Identifier::value_type>(0xFF), ALL_BITS = Identifier::ALL_BITS }
 
std::string m_dict_version
 
bool m_is_initialized_from_dict {}
 
size_type m_DET_INDEX {999}
 
size_type m_SUBDET_INDEX {999}
 
size_type m_MUON_SUBDET_INDEX {999}
 
int m_INDET_ID {2}
 
int m_LAR_ID {4}
 
int m_TILE_ID {5}
 
int m_MUON_ID {7}
 
int m_CALO_ID {10}
 
int m_PIXEL_ID {1}
 
int m_SCT_ID {2}
 
int m_TRT_ID {3}
 
int m_HGTD_ID {4}
 
int m_LUMI_ID {3}
 
int m_LUMI_PLR_ID {1}
 
int m_LAR_EM_ID {1}
 
int m_LAR_HEC_ID {2}
 
int m_LAR_FCAL_ID {3}
 
int m_LAR_FCAL_MODULE_INDEX {999}
 
int m_MDT_ID {0}
 
int m_CSC_ID {1}
 
int m_RPC_ID {2}
 
int m_TGC_ID {3}
 
int m_STGC_ID {4}
 
int m_MM_ID {5}
 
int m_FWD_ID {13}
 
int m_ALFA_ID {1}
 
int m_BCM_ID {3}
 
int m_LUCID_ID {5}
 
int m_ZDC_ID {7}
 
bool m_isHighLuminosityLHC {}
 
Range::field m_lvl1_field
 
Range::field m_lvl1_onl_field
 
Range::field m_lar_dm_field
 
Range::field m_tile_dm_field
 
IdDictDictionarym_atlas_dict {}
 
IdDictDictionarym_indet_dict {}
 
IdDictDictionarym_lar_dict {}
 
IdDictDictionarym_tile_dict {}
 
IdDictDictionarym_muon_dict {}
 
IdDictDictionarym_calo_dict {}
 
IdDictDictionarym_fwd_dict {}
 
AtlasDetectorIDHelperm_helper {}
 
IdDictFieldImplementation m_det_impl
 
IdDictFieldImplementation m_indet_part_impl
 
IdDictFieldImplementation m_calo_side_impl
 
IdDictFieldImplementation m_lar_part_impl
 
IdDictFieldImplementation m_lar_fcal_module_impl
 
IdDictFieldImplementation m_muon_station_name_impl
 
IdDictFieldImplementation m_muon_mdt_impl
 
IdDictFieldImplementation m_muon_rpc_impl
 
IdDictFieldImplementation m_fwd_part_impl
 
std::vector< unsigned int > m_muon_tech_bits
 

Detailed Description

Definition at line 20 of file LArOnlineID.h.

Member Typedef Documentation

◆ id_iterator

using LArOnlineID_Base::id_iterator = std::vector<HWIdentifier>::const_iterator
inherited

Type for iterators over identifiers.

Definition at line 103 of file LArOnlineID_Base.h.

◆ id_range

using LArOnlineID_Base::id_range = boost::iterator_range<id_iterator>
inherited

Type for range over identifiers.

Definition at line 105 of file LArOnlineID_Base.h.

◆ size_type

Definition at line 24 of file LArOnlineID.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
protectedinherited
Enumerator
NOT_VALID_HASH 

Definition at line 436 of file LArOnlineID_Base.h.

436 {NOT_VALID_HASH = 256000};

◆ HelperType

enum AtlasDetectorID::HelperType
stronginherited

enum class for eventual final derived types of this class

Enumerator
Unimplemented 
Silicon 
Pixel 
PLR 
SCT 
TRT 
LArEM 
LArFCal 
LArFCalSuperCell 
LArHEC 
LArHEC_SuperCell 
LARMiniFCal 
Tile 
TileSuperCell 
LArOnline 
LArOnlineSuperCell 
LArElectrode 
LArHVLine 
TileHardware 
TileTestbeam 
CaloCell 
CaloSuperCell 
CaloDM 
CaloLvl1 
GTower 
JTower 
Muon 
LUCID 
LUCID_Hardware 
Zdc 
ZdcHardware 
TT 

Definition at line 55 of file AtlasDetectorID.h.

55  {
56  Unimplemented = -1,
57  Silicon = 0,
58  Pixel, PLR, SCT, TRT,
59  //inherits from CaloIDHelper
60  LArEM, LArFCal, LArFCalSuperCell,
61  LArHEC, LArHEC_SuperCell, LARMiniFCal,
62  Tile, TileSuperCell,
63  //
64  //inherit from LArOnlineId
65  LArOnline, LArOnlineSuperCell,
66  //
67  LArElectrode, LArHVLine,
68  TileHardware, TileTestbeam,
69  CaloCell, CaloSuperCell,
70  CaloDM, CaloLvl1,
71  //inherit from JGTowerBase
72  GTower, JTower,
73  //
74  Muon,
75  LUCID, LUCID_Hardware,
76  Zdc,ZdcHardware,
77  TT
78  };

◆ ID

enum AtlasDetectorID::ID
privateinherited
Enumerator
ATLAS_ID 
MAX_BIT 
PIXEL_MASK 
ALL_BITS 

Definition at line 389 of file AtlasDetectorID.h.

389  { ATLAS_ID = static_cast<Identifier::value_type>(0),
391  // mask to distinguish a pixel id from lvl1 id (bit 1 set)
392  PIXEL_MASK = static_cast<Identifier::value_type>(0xFF),

Constructor & Destructor Documentation

◆ LArOnlineID()

LArOnlineID::LArOnlineID ( )

Default constructor.

Definition at line 22 of file LArOnlineID.cxx.

22  :
23  LArOnlineID_Base("LArOnlineID", "LArOnline", false)
24 {
25 }

◆ ~LArOnlineID()

LArOnlineID::~LArOnlineID ( )
default

Default destructor.

Member Function Documentation

◆ alfa_exp()

ExpandedIdentifier AtlasDetectorID::alfa_exp ( void  ) const
inlineprotectedinherited

Forward.

Definition at line 578 of file AtlasDetectorID.h.

579 {
581  return (result << m_ALFA_ID);
582 }

◆ alfa_field_value()

int AtlasDetectorID::alfa_field_value ( ) const
inlineprotectedinherited

Definition at line 668 of file AtlasDetectorID.h.

668 {return (m_ALFA_ID);}

◆ barrel_ec()

int LArOnlineID_Base::barrel_ec ( const HWIdentifier  id) const
inherited

Return the position barrel or endcap of a hardware cell identifier:
barrel_ec = [0,1] : Barrel / EndCap.

Definition at line 1942 of file LArOnlineID_Base.cxx.

1944 {
1945  return (m_bec_impl.unpack(id));
1946 }

◆ bcm_exp()

ExpandedIdentifier AtlasDetectorID::bcm_exp ( void  ) const
inlineprotectedinherited

Definition at line 585 of file AtlasDetectorID.h.

586 {
588  return (result << m_BCM_ID);
589 }

◆ bcm_field_value()

int AtlasDetectorID::bcm_field_value ( ) const
inlineprotectedinherited

Definition at line 670 of file AtlasDetectorID.h.

670 {return (m_BCM_ID);}

◆ calib_channel_begin()

LArOnlineID_Base::id_iterator LArOnlineID_Base::calib_channel_begin ( ) const
inlineinherited

Return an iterator pointing to a collection of calibration channel identifiers.

Definition at line 705 of file LArOnlineID_Base.h.

707 {
708  return(m_calib_channel_vec.begin());
709 }

◆ calib_channel_end()

LArOnlineID_Base::id_iterator LArOnlineID_Base::calib_channel_end ( ) const
inlineinherited

Definition at line 710 of file LArOnlineID_Base.h.

712 {
713  return(m_calib_channel_vec.end());
714 }

◆ calib_channel_Hash()

IdentifierHash LArOnlineID_Base::calib_channel_Hash ( HWIdentifier  channelId) const
inlineinherited

Definition at line 662 of file LArOnlineID_Base.h.

664 {
665  std::vector<HWIdentifier>::const_iterator it = std::lower_bound(m_calib_channel_vec.begin(),m_calib_channel_vec.end(),channelId);
666  if ( it != m_calib_channel_vec.end() ){
667  return (it - m_calib_channel_vec.begin());
668  }
669  return(0) ;
670 }

◆ calib_channel_Id() [1/4]

HWIdentifier LArOnlineID_Base::calib_channel_Id ( const HWIdentifier  febId,
int  ChannelId 
) const
inlineinherited

Define a calibration channel identifier from a feb identifier.

Definition at line 646 of file LArOnlineID_Base.h.

648 {
649  HWIdentifier result(febId);
650  /* Pack fields independently */
653 
654  return result;
655 }

◆ calib_channel_Id() [2/4]

HWIdentifier LArOnlineID_Base::calib_channel_Id ( const HWIdentifier  FeedthroughId,
int  slot,
int  channel 
) const
inlineinherited

Define a calibration channel identifier from a feedthrough identifier.

Definition at line 633 of file LArOnlineID_Base.h.

635 {
636  HWIdentifier result(feedthroughId);
637  /* Pack fields independently */
642 
643  return result;
644 }

◆ calib_channel_Id() [3/4]

HWIdentifier LArOnlineID_Base::calib_channel_Id ( IdentifierHash  calibChannelHash) const
inlineinherited

create calibration channel identifiers from hash identifiers

Definition at line 656 of file LArOnlineID_Base.h.

658 {
659  return(m_calib_channel_vec[channelHashId]);
660 }

◆ calib_channel_Id() [4/4]

HWIdentifier LArOnlineID_Base::calib_channel_Id ( int  barrel_ec,
int  pos_neg,
int  feedthrough,
int  slot,
int  channel 
) const
inlineinherited

create calibration channel identifiers from fields

Definition at line 616 of file LArOnlineID_Base.h.

619 {
620  HWIdentifier result(0);
621  /* Pack fields independently */
629 
630  return result;
631 }

◆ calib_channel_range()

LArOnlineID_Base::id_range LArOnlineID_Base::calib_channel_range ( ) const
inlineinherited

Definition at line 715 of file LArOnlineID_Base.h.

717 {
719 }

◆ calib_module_begin()

LArOnlineID_Base::id_iterator LArOnlineID_Base::calib_module_begin ( ) const
inlineinherited

Return an iterator pointing to a calibFeb identifier 's collection.

Definition at line 689 of file LArOnlineID_Base.h.

691 {
692  return(m_calib_module_vec.begin());
693 }

◆ calib_module_end()

LArOnlineID_Base::id_iterator LArOnlineID_Base::calib_module_end ( ) const
inlineinherited

Definition at line 694 of file LArOnlineID_Base.h.

696 {
697  return(m_calib_module_vec.end());
698 }

◆ calib_module_Hash()

IdentifierHash LArOnlineID_Base::calib_module_Hash ( HWIdentifier  calibModuleId) const
inlineinherited

create calibration module_hash identifier from module Identifier

Definition at line 606 of file LArOnlineID_Base.h.

608 {
609  std::vector<HWIdentifier>::const_iterator it = std::lower_bound(m_calib_module_vec.begin(),m_calib_module_vec.end(),calibModuleId);
610  if ( it != m_calib_module_vec.end() ){
611  return (it - m_calib_module_vec.begin());
612  }
613  return (0);
614 }

◆ calib_module_Id() [1/4]

HWIdentifier LArOnlineID_Base::calib_module_Id ( const HWIdentifier  ChannelId) const
inlineinherited

Define a calibration module identifier from a channel identifier.

Definition at line 592 of file LArOnlineID_Base.h.

594 {
595  HWIdentifier result(calibChannelId);
597  return(result);
598 }

◆ calib_module_Id() [2/4]

HWIdentifier LArOnlineID_Base::calib_module_Id ( const HWIdentifier  FeedthroughId,
int  slot 
) const
inlineinherited

Define a calibration module identifier from a feedthrough identifier.

Definition at line 582 of file LArOnlineID_Base.h.

584 {
585  HWIdentifier result(feedthroughId);
586  /* Pack fields independently */
589  return(result);
590 }

◆ calib_module_Id() [3/4]

HWIdentifier LArOnlineID_Base::calib_module_Id ( IdentifierHash  calibModuleHash) const
inlineinherited

Create calibration module identifier from hash identifiers.

Definition at line 600 of file LArOnlineID_Base.h.

602 {
603  return(m_calib_module_vec[calibModuleHashId]);
604 }

◆ calib_module_Id() [4/4]

HWIdentifier LArOnlineID_Base::calib_module_Id ( int  barrel_ec,
int  pos_neg,
int  feedthrough,
int  slot 
) const
inlineinherited

Build calibration module identifier from fields.

Definition at line 567 of file LArOnlineID_Base.h.

570 {
571  HWIdentifier result(0);
572  /*Pack fields independently */
579  return result;
580 }

◆ calib_module_range()

LArOnlineID_Base::id_range LArOnlineID_Base::calib_module_range ( ) const
inlineinherited

Definition at line 699 of file LArOnlineID_Base.h.

701 {
703 }

◆ calibChannelHashMax()

LArOnlineID_Base::size_type LArOnlineID_Base::calibChannelHashMax ( ) const
inlineinherited

Define calibration channel hash tables max size.

Definition at line 678 of file LArOnlineID_Base.h.

680 {
681  return m_calibChannelHashMax;
682 }

◆ calibModuleHashMax()

LArOnlineID_Base::size_type LArOnlineID_Base::calibModuleHashMax ( ) const
inlineinherited

Define calibration module hash tables max size.

Definition at line 673 of file LArOnlineID_Base.h.

675 {
676  return m_calibModuleHashMax;
677 }

◆ calo()

Identifier AtlasDetectorID::calo ( void  ) const
inherited

Definition at line 83 of file AtlasDetectorID.cxx.

83  {
84  Identifier result{0};
85  // Pack field
87  return result;
88 }

◆ calo_exp()

ExpandedIdentifier AtlasDetectorID::calo_exp ( void  ) const
inlineprotectedinherited

Definition at line 508 of file AtlasDetectorID.h.

509 {
511  return (result << m_CALO_ID);
512 }

◆ calo_field_value()

int AtlasDetectorID::calo_field_value ( ) const
inlineprotectedinherited

Definition at line 618 of file AtlasDetectorID.h.

618 {return (m_CALO_ID);}

◆ channel()

int LArOnlineID_Base::channel ( const HWIdentifier  id) const
inherited

Return the channel number of a hardware cell identifier
channel = [0,127] in all FEB.

Definition at line 1967 of file LArOnlineID_Base.cxx.

1969 {
1970  return (m_channel_in_slot_impl.unpack(id));
1971 }

◆ channel_begin()

LArOnlineID_Base::id_iterator LArOnlineID_Base::channel_begin ( ) const
inherited

Returns an iterator pointing to a channel identifier collection.

Definition at line 1926 of file LArOnlineID_Base.cxx.

1928 {
1929  return(m_channel_vec.begin());
1930 }

◆ channel_end()

LArOnlineID_Base::id_iterator LArOnlineID_Base::channel_end ( ) const
inherited

Definition at line 1931 of file LArOnlineID_Base.cxx.

1933 {
1934  return(m_channel_vec.end());
1935 }

◆ channel_Hash()

IdentifierHash LArOnlineID_Base::channel_Hash ( HWIdentifier  channelId) const
inherited

Create channel_hash from channel_Id.

Definition at line 1636 of file LArOnlineID_Base.cxx.

1637 {
1638  const HashCalc& hc = m_chan_hash_calcs[m_bec_slot_impl.unpack(channelId)];
1639  return (hc.m_hash + channel(channelId));
1640 }

◆ channel_Hash_binary_search()

IdentifierHash LArOnlineID_Base::channel_Hash_binary_search ( HWIdentifier  channelId) const
inlineprotectedinherited

Definition at line 554 of file LArOnlineID_Base.h.

556 {
557  std::vector<HWIdentifier>::const_iterator it = std::lower_bound(m_channel_vec.begin(),m_channel_vec.end(),channelId);
558  if ( it != m_channel_vec.end() ){
559  return (it - m_channel_vec.begin());
560  }
561  return(0) ;
562 }

◆ channel_Id() [1/7]

HWIdentifier LArOnlineID_Base::channel_Id ( const HWIdentifier  febId,
int  channel 
) const
inherited

Define a channel identifier from a feb identifier.

Definition at line 1630 of file LArOnlineID_Base.cxx.

1631 {
1632  return channel_Id (febId, channel, do_checks());
1633 }

◆ channel_Id() [2/7]

HWIdentifier LArOnlineID_Base::channel_Id ( const HWIdentifier  febId,
int  channel,
bool  checks 
) const
inherited

Definition at line 1611 of file LArOnlineID_Base.cxx.

1614 {
1615  HWIdentifier result(febId);
1616  /* Pack fields independently */
1619  if ( m_this_is_slar )
1620  m_slar_impl.pack (1, result);
1621 
1622  /* Do checks */
1623  if(checks) {
1624  channel_Id_checks( febId, channel );
1625  }
1626  return result;
1627 }

◆ channel_Id() [3/7]

HWIdentifier LArOnlineID_Base::channel_Id ( const HWIdentifier  feedthroughId,
int  slot,
int  channel 
) const
inherited

Define a channel identifier from a feedthrough identifier.

Definition at line 1605 of file LArOnlineID_Base.cxx.

1606 {
1607  return channel_Id (feedthroughId, slot, channel, do_checks());
1608 }

◆ channel_Id() [4/7]

HWIdentifier LArOnlineID_Base::channel_Id ( const HWIdentifier  feedthroughId,
int  slot,
int  channel,
bool  checks 
) const
inherited

Definition at line 1584 of file LArOnlineID_Base.cxx.

1587 {
1588  HWIdentifier result(feedthroughId);
1589  /* Pack fields independently */
1594  if ( m_this_is_slar )
1595  m_slar_impl.pack (1 , result);
1596 
1597  /* Do checks */
1598  if(checks) {
1599  channel_Id_checks( feedthroughId, slot, channel );
1600  }
1601  return result;
1602 }

◆ channel_Id() [5/7]

HWIdentifier LArOnlineID_Base::channel_Id ( IdentifierHash  channelHash) const
inherited

Create channel identifiers from hash id.

Definition at line 1576 of file LArOnlineID_Base.cxx.

1578 {
1579  return(m_channel_vec[channelHashId]);
1580 }

◆ channel_Id() [6/7]

HWIdentifier LArOnlineID_Base::channel_Id ( int  barrel_ec,
int  pos_neg,
int  feedthrough,
int  slot,
int  channel 
) const
inherited

create channel identifier from fields

Definition at line 1569 of file LArOnlineID_Base.cxx.

1571 {
1573  do_checks());
1574 }

◆ channel_Id() [7/7]

HWIdentifier LArOnlineID_Base::channel_Id ( int  barrel_ec,
int  pos_neg,
int  feedthrough,
int  slot,
int  channel,
bool  checks 
) const
inherited

Definition at line 1544 of file LArOnlineID_Base.cxx.

1548 {
1549  HWIdentifier result(0);
1550  /* Pack fields independently */
1552  m_laronline_impl.pack (s_lar_online_field_value , result);
1558  if ( m_this_is_slar )
1559  m_slar_impl.pack (1 , result);
1560 
1561  /* Do checks */
1562  if(checks) {
1564  }
1565  return result;
1566 }

◆ channel_Id_checks() [1/3]

void LArOnlineID_Base::channel_Id_checks ( const HWIdentifier  febId,
int  channel 
) const
protectedinherited

Definition at line 706 of file LArOnlineID_Base.cxx.

709 {
710  // Check that id is within allowed range
711  // Fill expanded id
712  ExpandedIdentifier expId;
713  IdContext context = febContext();
714  if (get_expanded_id(febId, expId, &context)) {
715  std::string errorMessage = "LArOnlineID_Base::channel_Id_checks(febId) result is not OK: ID = "
716  + show_to_string(febId) ;
717  LArOnlID_Exception except(errorMessage , 99);
718  throw except ;
719  }
720 
721  expId << channel;
722  if ( m_this_is_slar ) expId << 1;
723  if (!m_full_laronline_range.match(expId)) {
724  std::string errorMessage = "LArOnlineID_Base::channel_Id_checks(febId) result is not OK: ID, range = "
725  + std::string(expId) + " , " + (std::string)m_full_laronline_range;
726  LArOnlID_Exception except(errorMessage , 99);
727  throw except ;
728  }
729 }

◆ channel_Id_checks() [2/3]

void LArOnlineID_Base::channel_Id_checks ( const HWIdentifier  feedthroughId,
int  slot,
int  channel 
) const
protectedinherited

Definition at line 732 of file LArOnlineID_Base.cxx.

735 {
736  // Check that id is within allowed range
737  // Fill expanded id
738  ExpandedIdentifier expId;
739  IdContext context = feedthroughContext();
740  if (get_expanded_id(feedthroughId, expId, &context)) {
741  std::string errorMessage = "LArOnlineID_Base::channel_Id_checks(feedthroughId) result is not OK: ID = "
742  + show_to_string(feedthroughId) ;
743  LArOnlID_Exception except(errorMessage , 99);
744  throw except ;
745  }
746 
747  expId << slot << channel;
748  if ( m_this_is_slar ) expId << 1;
749  if (!m_full_laronline_range.match(expId)) {
750  std::string errorMessage = "LArOnlineID_Base::channel_Id_checks(feedthroughId) result is not OK: ID, range = "
751  + std::string(expId) + " , " + (std::string)m_full_laronline_range;
752  LArOnlID_Exception except(errorMessage , 99);
753  throw except ;
754  }
755 }

◆ channel_Id_checks() [3/3]

void LArOnlineID_Base::channel_Id_checks ( int  barrel_ec,
int  pos_neg,
int  feedthrough,
int  slot,
int  channel 
) const
protectedinherited

Definition at line 687 of file LArOnlineID_Base.cxx.

690 {
691  // Check that id is within allowed range
692  // Fill expanded id
693  ExpandedIdentifier expId(lar_exp());
694  expId << s_lar_online_field_value << barrel_ec << pos_neg << feedthrough << slot << channel ;
695  if ( m_this_is_slar ) expId << 1;
696 
697  if (!m_full_laronline_range.match(expId)) {
698  std::string errorMessage = "LArOnlineID_Base::channel_Id_checks() result is not OK: ID, range = "
699  + std::string(expId) + " , " + (std::string)m_full_laronline_range;
700  LArOnlID_Exception except(errorMessage , 99);
701  throw except ;
702  }
703 }

◆ channel_name()

std::string LArOnlineID_Base::channel_name ( const HWIdentifier  id) const
inherited

Return a string corresponding to a feedthrough name given an identifier.

Definition at line 225 of file LArOnlineID_Base.cxx.

225  {
226 //==================================================================
227  std::ostringstream s1;
228  //std::string s2;
229  int Nchan = channel(id);
230  int Nslot = slot(id);
231  int Nft = feedthrough(id);
232  std::string det_barrel_endcap = "NODETE";
233  std::string det_side = "/X-SIDE";
234 
235  if( barrel_ec(id) == 0 ) det_barrel_endcap = "BARREL";
236  if( barrel_ec(id) == 1 ) det_barrel_endcap = "ENDCAP";
237  if( pos_neg(id) == 1 ) det_side = "/A-SIDE";
238  if( pos_neg(id) == 0 ) det_side = "/C-SIDE";
239 
240  s1 << det_barrel_endcap
241  << det_side
242  << "/FT-" << Nft
243  << "/SLOT-" << Nslot
244  << "/CHAN-" << Nchan;
245  return s1.str();
246  //return s2;
247 }

◆ channel_range()

LArOnlineID_Base::id_range LArOnlineID_Base::channel_range ( ) const
inherited

Definition at line 1936 of file LArOnlineID_Base.cxx.

1938 {
1939  return {channel_begin(), channel_end()};
1940 }

◆ channelContext()

IdContext LArOnlineID_Base::channelContext ( ) const
inherited

Define context for channel.

Definition at line 273 of file LArOnlineID_Base.cxx.

275 {
277  return (IdContext(id, 0, m_channel_in_slot_index));
278 }

◆ channelHashMax()

LArOnlineID_Base::size_type LArOnlineID_Base::channelHashMax ( ) const
inherited

Define channel hash tables max size.

Definition at line 1901 of file LArOnlineID_Base.cxx.

1903 {
1904  return m_channelHashMax;
1905 }

◆ channelInSlotMax()

int LArOnlineID_Base::channelInSlotMax ( const HWIdentifier  Id) const
inherited

Return the Maximum channel number of a given feb slot.

Definition at line 293 of file LArOnlineID_Base.cxx.

295 {
296 
297  ExpandedIdentifier expId;
298  IdContext context = channelContext();
299  if(!get_expanded_id(channelId, expId, &context)) {
300  int result = -999;
301  for (unsigned int i = 0; i < m_full_laronline_range.size(); ++i) {
303  if (range.match(expId)) {
304  const Range::field& channel_in_slot_field = range[m_channel_in_slot_index];
305  if (!channel_in_slot_field.empty()) {
306  int channel_in_slotmax = channel_in_slot_field.get_maximum();
307  if (result < channel_in_slotmax) result = channel_in_slotmax + 1;
308  }
309  }
310  }
311  return (result);
312  }
313  return (-999); // default
314 }

◆ cryostatEndContext()

IdContext LArOnlineID_Base::cryostatEndContext ( ) const
inherited

Define context for cryostat (obsolete)

Definition at line 252 of file LArOnlineID_Base.cxx.

254 {
256  return (IdContext(id, 0, m_side_index));
257 }

◆ csc()

Identifier AtlasDetectorID::csc ( void  ) const
inherited

Definition at line 40 of file AtlasDetectorID.cxx.

40  {
41  return Identifier{};
42 }

◆ csc_field_value()

int AtlasDetectorID::csc_field_value ( ) const
inlineprotectedinherited

Definition at line 651 of file AtlasDetectorID.h.

651 {return (m_CSC_ID);}

◆ detsystem_context()

IdContext AtlasDetectorID::detsystem_context ( void  ) const
inherited

IdContext (indicates id length) for detector systems.

Definition at line 178 of file AtlasDetectorID.cxx.

178  {
179  ExpandedIdentifier id{};
180  return IdContext{id, 0, m_DET_INDEX};
181 }

◆ dict_names()

const std::vector< std::string > & AtlasDetectorID::dict_names ( void  ) const
inherited

Dictionary names.

Definition at line 467 of file AtlasDetectorID.cxx.

467  {
468  return m_dict_names;
469 }

◆ dict_tags()

const std::vector< std::string > & AtlasDetectorID::dict_tags ( void  ) const
inherited

Version tags for subdet dictionaries.

Definition at line 473 of file AtlasDetectorID.cxx.

473  {
474  return m_dict_tags;
475 }

◆ dictionaryVersion()

std::string AtlasDetectorID::dictionaryVersion ( void  ) const
overridevirtualinherited

Implements IdHelper.

Definition at line 281 of file AtlasDetectorID.cxx.

281  {
282  return m_dict_version;
283 }

◆ do_checks()

bool AtlasDetectorID::do_checks ( void  ) const
overridevirtualinherited

Checks are performed by default in debug compilation and NOT in optimized compilation.

One can switch or query this mode for any idHelper with the following methods:

Implements IdHelper.

Definition at line 476 of file AtlasDetectorID.cxx.

476  {
477  return m_do_checks;
478 }

◆ do_neighbours()

bool AtlasDetectorID::do_neighbours ( void  ) const
overridevirtualinherited

Neighbour initialization is performed by default One can switch or query this mode for any idHelper with the following method:

Implements IdHelper.

Definition at line 483 of file AtlasDetectorID.cxx.

483  {
484  return m_do_neighbours;
485 }

◆ feb_begin()

LArOnlineID_Base::id_iterator LArOnlineID_Base::feb_begin ( ) const
inherited

Returns an iterator pointing to a feb identifier collection.

Definition at line 1910 of file LArOnlineID_Base.cxx.

1912 {
1913  return(m_feb_vec.begin());
1914 }

◆ feb_end()

LArOnlineID_Base::id_iterator LArOnlineID_Base::feb_end ( ) const
inherited

Definition at line 1915 of file LArOnlineID_Base.cxx.

1917 {
1918  return(m_feb_vec.end());
1919 }

◆ feb_Hash()

IdentifierHash LArOnlineID_Base::feb_Hash ( HWIdentifier  febId) const
inherited

Create feb hash identifiers from feb identifiers.

Definition at line 1516 of file LArOnlineID_Base.cxx.

1518 {
1519  // Get the hash caculator for the febs
1520  const HashCalcFeb& hc = m_feb_hash_calcs[m_bec_ft_impl.unpack(febId)];
1521  // Two cases:
1522  // 1) slot values are enumerated and we must look for a matching
1523  // value to obtain the index
1524  // 2) slot values are a continuous range, then the slot index is
1525  // sufficient for the hash calculation
1526  if (!hc.m_slot_values.empty()) {
1527  // find matching value
1528  int slotValue = slot(febId);
1529  for (int i = 0; (unsigned int)i < hc.m_slot_values.size(); ++i) {
1530  if (slotValue == hc.m_slot_values[i]) return (hc.m_hash + i);
1531  }
1532  MsgStream log(m_msgSvc, "LArOnlineID_Base" );
1533  if(m_msgSvc) {
1534  log << MSG::WARNING << "LArOnlineID_Base::feb_Hash - ***** WARNING: could not match slot value for has calculation " << endmsg;
1535  } else {
1536  std::cout << "LArOnlineID_Base::feb_Hash - ***** WARNING: could not match slot value for has calculation " << std::endl;
1537  }
1538  }
1539  size_type slotIndex = m_slot_impl.unpackToIndex(febId);
1540  return (hc.m_hash + slotIndex);
1541 }

◆ feb_Hash_binary_search()

IdentifierHash LArOnlineID_Base::feb_Hash_binary_search ( HWIdentifier  channelId) const
inlineprotectedinherited

Definition at line 543 of file LArOnlineID_Base.h.

545 {
546  std::vector<HWIdentifier>::const_iterator it = std::lower_bound(m_feb_vec.begin(),m_feb_vec.end(),febId);
547  if ( it != m_feb_vec.end() ){
548  return (it - m_feb_vec.begin());
549  }
550  return (0);
551 }

◆ feb_Id() [1/5]

HWIdentifier LArOnlineID_Base::feb_Id ( const HWIdentifier  channelId) const
inherited

Define a feb identifier from a channel identifier.

Definition at line 1502 of file LArOnlineID_Base.cxx.

1504 {
1507  return(result);
1508 }

◆ feb_Id() [2/5]

HWIdentifier LArOnlineID_Base::feb_Id ( const HWIdentifier  feedthroughId,
int  slot 
) const
inherited

Define a feb identifier from a feedthrough identifier.

Definition at line 1489 of file LArOnlineID_Base.cxx.

1491 {
1492  HWIdentifier result(feedthroughId);
1493  /* Pack fields independently */
1496  if ( m_this_is_slar )
1497  m_slar_impl.pack (1 , result);
1498 
1499  return(result);
1500 }

◆ feb_Id() [3/5]

HWIdentifier LArOnlineID_Base::feb_Id ( IdentifierHash  febHash) const
inherited

create feb identifier from hash id

Definition at line 1510 of file LArOnlineID_Base.cxx.

1512 {
1513  return(m_feb_vec[febHashId]);
1514 }

◆ feb_Id() [4/5]

HWIdentifier LArOnlineID_Base::feb_Id ( int  barrel_ec,
int  pos_neg,
int  feedthrough,
int  slot 
) const
inherited

Create feb_Id from fields.

Definition at line 1483 of file LArOnlineID_Base.cxx.

1485 {
1487 }

◆ feb_Id() [5/5]

HWIdentifier LArOnlineID_Base::feb_Id ( int  barrel_ec,
int  pos_neg,
int  feedthrough,
int  slot,
bool  checks 
) const
inherited

Definition at line 1458 of file LArOnlineID_Base.cxx.

1462 {
1463  HWIdentifier result(0);
1464 
1465  /*Pack fields independently */
1467  m_laronline_impl.pack (s_lar_online_field_value, result);
1472  if ( m_this_is_slar )
1473  m_slar_impl.pack (1 , result);
1474 
1475  /* Do checks */
1476  if(checks) {
1478  }
1479  return result;
1480 }

◆ feb_Id_checks()

void LArOnlineID_Base::feb_Id_checks ( int  barrel_ec,
int  pos_neg,
int  feedthrough,
int  slot 
) const
protectedinherited

Definition at line 758 of file LArOnlineID_Base.cxx.

760 {
761  // Check that id is within allowed range
762  // Fill expanded id
763  ExpandedIdentifier expId(lar_exp());
764  expId << s_lar_online_field_value << barrel_ec << pos_neg << feedthrough << slot ;
765 
766  if ( m_this_is_slar ) expId << 0 << 1;
767  if (!m_full_feedthrough_range.match(expId)) { std::string errorMessage = "LArOnlineID_Base::feb_Id_checks() result is not OK: ID, range = "
768  + std::string(expId) + " , " + (std::string)m_full_feb_range;
769  LArOnlID_Exception except(errorMessage , 99);
770  throw except ;
771  }
772 }

◆ feb_range()

LArOnlineID_Base::id_range LArOnlineID_Base::feb_range ( ) const
inherited

Definition at line 1920 of file LArOnlineID_Base.cxx.

1922 {
1923  return {feb_begin(), feb_end()};
1924 }

◆ febContext()

IdContext LArOnlineID_Base::febContext ( ) const
inherited

Define context for feb.

Definition at line 283 of file LArOnlineID_Base.cxx.

285 {
287  return (IdContext(id, 0, m_slot_index));
288 }

◆ febHashMax()

LArOnlineID_Base::size_type LArOnlineID_Base::febHashMax ( ) const
inherited

define feb hash tables max size

Definition at line 1896 of file LArOnlineID_Base.cxx.

1898 {
1899  return m_febHashMax;
1900 }

◆ feedthrough()

int LArOnlineID_Base::feedthrough ( const HWIdentifier  id) const
inherited

Return the feedthrough of a hardware cell identifier :
feedthrough = [0,31] Barrel - A/C side or H/I half barrel
feedthrough = [1,25] Endcap-Standard EMEC 1.6<|eta|<2.4 - A/C side
feedthrough = [1,25] Endcap-Special EMEC 1.5<|eta|<1.6 and 2.4<|eta|<3.2
feedthrough = [1,25] HEC A/C side.

Definition at line 1948 of file LArOnlineID_Base.cxx.

1950 {
1951  return (m_feedthrough_impl.unpack(id));
1952 }

◆ feedthrough_begin()

LArOnlineID_Base::id_iterator LArOnlineID_Base::feedthrough_begin ( ) const
inherited

Return an iterator pointing to Feedthrough identifiers collection.

Definition at line 1435 of file LArOnlineID_Base.cxx.

1437 {
1438  return(m_feedthrough_vec.begin());
1439 }

◆ feedthrough_end()

LArOnlineID_Base::id_iterator LArOnlineID_Base::feedthrough_end ( ) const
inherited

Definition at line 1441 of file LArOnlineID_Base.cxx.

1443 {
1444  return(m_feedthrough_vec.end());
1445 }

◆ feedthrough_Hash()

IdentifierHash LArOnlineID_Base::feedthrough_Hash ( HWIdentifier  feedthroughId) const
inherited

Create hash id from feedthrough identifiers.

Definition at line 1416 of file LArOnlineID_Base.cxx.

1418 {
1419  std::vector<HWIdentifier>::const_iterator it = std::lower_bound(m_feedthrough_vec.begin(),m_feedthrough_vec.end(),feedthroughId);
1420  if ( it != m_feedthrough_vec.end() ){
1421  return (it - m_feedthrough_vec.begin());
1422  }
1423  return (0);
1424 }

◆ feedthrough_Id() [1/4]

HWIdentifier LArOnlineID_Base::feedthrough_Id ( const HWIdentifier  Id) const
inherited

Define a channel identifier from a feedthrough identifier.

Definition at line 1426 of file LArOnlineID_Base.cxx.

1428 {
1429  HWIdentifier result(Id);
1432  return(result);
1433 }

◆ feedthrough_Id() [2/4]

HWIdentifier LArOnlineID_Base::feedthrough_Id ( IdentifierHash  feedthroughHash) const
inherited

Create a feedthrough identifier from hash_id.

Definition at line 1410 of file LArOnlineID_Base.cxx.

1412 {
1413  return(m_feedthrough_vec[feedthroughHashId]);
1414 }

◆ feedthrough_Id() [3/4]

HWIdentifier LArOnlineID_Base::feedthrough_Id ( int  barrel_ec,
int  pos_neg,
int  feedthrough 
) const
inherited

Create a feedthrough identifier from fields.

Definition at line 1404 of file LArOnlineID_Base.cxx.

1405 {
1407 }

◆ feedthrough_Id() [4/4]

HWIdentifier LArOnlineID_Base::feedthrough_Id ( int  barrel_ec,
int  pos_neg,
int  feedthrough,
bool  checks 
) const
inherited

Definition at line 1382 of file LArOnlineID_Base.cxx.

1384 {
1385  HWIdentifier result(0);
1386 
1387  /*Pack fields independently */
1389  m_laronline_impl.pack (s_lar_online_field_value, result);
1393  if ( m_this_is_slar )
1394  m_slar_impl.pack (1 , result);
1395 
1396  /* Do checks */
1397  if(checks)
1398  {
1400  }
1401  return result;
1402 }

◆ feedthrough_Id_checks()

void LArOnlineID_Base::feedthrough_Id_checks ( int  barrel_ec,
int  pos_neg,
int  feedthrough 
) const
protectedinherited

Definition at line 775 of file LArOnlineID_Base.cxx.

777 {
778  // Check that id is within allowed range
779  // Fill expanded id
780  ExpandedIdentifier expId(lar_exp());
781  expId << s_lar_online_field_value << barrel_ec << pos_neg << feedthrough << 0 << 0 << (int)m_this_is_slar;
782 
783 // if ( m_this_is_slar ) expId << 0 << 0 << 1;
784  if (!m_full_feedthrough_range.match(expId)) { std::string errorMessage = "LArOnlineID_Base::feedthrough_Id_checks() result is not OK: ID, range = "
785  + std::string(expId) + " , " + (std::string)m_full_feedthrough_range;
786  LArOnlID_Exception except(errorMessage , 99);
787  throw except ;
788  }
789 }

◆ feedthrough_name()

std::string LArOnlineID_Base::feedthrough_name ( const HWIdentifier  id) const
inherited

Return a string corresponding to a feedthrough name given an identifier.

Definition at line 79 of file LArOnlineID_Base.cxx.

79  {
80 //==================================================================
81  std::string result;
82  int ft = feedthrough(id);
83  if( barrel_ec(id)== 0 ){
84  // if BARREL
85  if( pos_neg(id) == 1 ){
86  // if EMBA
87  if( ft==31 ){result = "I01R";}
88  if( ft==0 ){result = "I01L";}
89  if( ft==1 ){result = "I02R";}
90  if( ft==2 ){result = "I02L";}
91  if( ft==3 ){result = "I03R";}
92  if( ft==4 ){result = "I03L";}
93  if( ft==5 ){result = "I04R";}
94  if( ft==6 ){result = "I04L";}
95  if( ft==7 ){result = "I05R";}
96  if( ft==8 ){result = "I05L";}
97  if( ft==9 ){result = "I06R";}
98  if( ft==10 ){result = "I06L";}
99  if( ft==11 ){result = "I07R";}
100  if( ft==12 ){result = "I07L";}
101  if( ft==13 ){result = "I08R";}
102  if( ft==14 ){result = "I08L";}
103  if( ft==15 ){result = "I09R";}
104  if( ft==16 ){result = "I09L";}
105  if( ft==17 ){result = "I10R";}
106  if( ft==18 ){result = "I10L";}
107  if( ft==19 ){result = "I11R";}
108  if( ft==20 ){result = "I11L";}
109  if( ft==21 ){result = "I12R";}
110  if( ft==22 ){result = "I12L";}
111  if( ft==23 ){result = "I13R";}
112  if( ft==24 ){result = "I13L";}
113  if( ft==25 ){result = "I14R";}
114  if( ft==26 ){result = "I14L";}
115  if( ft==27 ){result = "I15R";}
116  if( ft==28 ){result = "I15L";}
117  if( ft==29 ){result = "I16R";}
118  if( ft==30 ){result = "I16L";}
119  }
120  else{
121  // EMBC
122  if( ft==15 ){result = "H01R";}
123  if( ft==16 ){result = "H01L";}
124  if( ft==13 ){result = "H02R";}
125  if( ft==14 ){result = "H02L";}
126  if( ft==11 ){result = "H03R";}
127  if( ft==12 ){result = "H03L";}
128  if( ft==9 ){result = "H04R";}
129  if( ft==10){result = "H04L";}
130  if( ft==7 ){result = "H05R";}
131  if( ft==8 ){result = "H05L";}
132  if( ft==5 ){result = "H06R";}
133  if( ft==6 ){result = "H06L";}
134  if( ft==3 ){result = "H07R";}
135  if( ft==4 ){result = "H07L";}
136  if( ft==1 ){result = "H08R";}
137  if( ft==2 ){result = "H08L";}
138  if( ft==31){result = "H09R";}
139  if( ft==0 ){result = "H09L";}
140  if( ft==29 ){result = "H10R";}
141  if( ft==30 ){result = "H10L";}
142  if( ft==27 ){result = "H11R";}
143  if( ft==28 ){result = "H11L";}
144  if( ft==25 ){result = "H12R";}
145  if( ft==26 ){result = "H12L";}
146  if( ft==23 ){result = "H13R";}
147  if( ft==24 ){result = "H13L";}
148  if( ft==21 ){result = "H14R";}
149  if( ft==22 ){result = "H14L";}
150  if( ft==19 ){result = "H15R";}
151  if( ft==20 ){result = "H15L";}
152  if( ft==17 ){result = "H16R";}
153  if( ft==18 ){result = "H16L";}
154  }
155  }
156  if ( barrel_ec(id) == 1 ){
157  // ENDCAP
158  if( pos_neg(id) == 1 ){
159  // EMEC-A
160  if( ft==0 ){result = "A01R";}
161  if( ft==1 ){result = "A01L";}
162  if( ft==2 ){result = "A02R";}
163  if( ft==3 ){result = "A02L";}
164  if( ft==4 ){result = "A03R";}
165  if( ft==5 ){result = "A03L";}
166  if( ft==6 ){result = "A04R";}
167  if( ft==7 ){result = "A05R";}
168  if( ft==8 ){result = "A05L";}
169  if( ft==9 ){result = "A06R";}
170  if( ft==10){result = "A06L";}
171  if( ft==11){result = "A07R";}
172  if( ft==12){result = "A07L";}
173  if( ft==13){result = "A08R";}
174  if( ft==14){result = "A08L";}
175  if( ft==15){result = "A09R";}
176  if( ft==16){result = "A09L";}
177  if( ft==17){result = "A10R";}
178  if( ft==18){result = "A10L";}
179  if( ft==19){result = "A11R";}
180  if( ft==20){result = "A11L";}
181  if( ft==21){result = "A12R";}
182  if( ft==22){result = "A12L";}
183  if( ft==23){result = "A13R";}
184  if( ft==24){result = "A13L";}
185  if( ft==25){result = "A14R";} // ft25-27 are sFCal; A14R, A14L, A15L
186  if( ft==26){result = "A14L";} // will need to be replaced by actual
187  if( ft==27){result = "A15L";} // crate name once it exists
188  }
189  else{
190  // EMEC-C
191  if( ft==11 ){result = "C01R";}
192  if( ft==12 ){result = "C01L";}
193  if( ft==9 ){result = "C02R";}
194  if( ft==10 ){result = "C02L";}
195  if( ft==7 ){result = "C03R";}
196  if( ft==8 ){result = "C03L";}
197  if( ft==4 ){result = "C05R";}
198  if( ft==5 ){result = "C05L";}
199  if( ft==2 ){result = "C06R";}
200  if( ft==3 ){result = "C06L";}
201  if( ft==0 ){result = "C07R";}
202  if( ft==1 ){result = "C07L";}
203  if( ft==23 ){result = "C08R";}
204  if( ft==24 ){result = "C08L";}
205  if( ft==21 ){result = "C09R";}
206  if( ft==22 ){result = "C09L";}
207  if( ft==19 ){result = "C10R";}
208  if( ft==20 ){result = "C10L";}
209  if( ft==17 ){result = "C11R";}
210  if( ft==18 ){result = "C11L";}
211  if( ft==15 ){result = "C12R";}
212  if( ft==16 ){result = "C12L";}
213  if( ft==13 ){result = "C13R";}
214  if( ft==14 ){result = "C13L";}
215  if( ft==6 ){result = "C04L";}
216  if( ft==25 ){result = "C14R";} // ft25-27 are sFCal; C14R, C14L, C15L
217  if( ft==26 ){result = "C14L";} // will need to be replaced by actual
218  if( ft==27 ){result = "C15L";} // crate name once it exists
219  }
220  }
221  return result;
222 }

◆ feedthrough_range()

LArOnlineID_Base::id_range LArOnlineID_Base::feedthrough_range ( ) const
inherited

Definition at line 1447 of file LArOnlineID_Base.cxx.

1449 {
1450  return {feedthrough_begin(), feedthrough_end()};
1451 }

◆ feedthroughContext()

IdContext LArOnlineID_Base::feedthroughContext ( ) const
inherited

Define context for feedthroughs.

Definition at line 262 of file LArOnlineID_Base.cxx.

264 {
266  return (IdContext(id, 0, m_feedthrough_index));
267 }

◆ feedthroughHashMax()

LArOnlineID_Base::size_type LArOnlineID_Base::feedthroughHashMax ( ) const
inherited

Define feedthrough hash tables max size.

Definition at line 1891 of file LArOnlineID_Base.cxx.

1893 {
1894  return m_feedthroughHashMax;
1895 }

◆ file_names()

const std::vector< std::string > & AtlasDetectorID::file_names ( void  ) const
inherited

File names for subdet dictionaries.

Definition at line 470 of file AtlasDetectorID.cxx.

470  {
471  return m_file_names;
472 }

◆ fix_barrel_ec()

std::string AtlasDetectorID::fix_barrel_ec ( const std::string &  barrel_ec) const
protectedinherited

◆ forward_field_value()

int AtlasDetectorID::forward_field_value ( ) const
inlineprotectedinherited

Definition at line 666 of file AtlasDetectorID.h.

666 {return (m_FWD_ID);}

◆ fwd_exp()

ExpandedIdentifier AtlasDetectorID::fwd_exp ( void  ) const
inlineprotectedinherited

Definition at line 515 of file AtlasDetectorID.h.

516 {
518  return (result << m_FWD_ID);
519 }

◆ get_expanded_calib_id()

int LArOnlineID_Base::get_expanded_calib_id ( const HWIdentifier id,
ExpandedIdentifier exp_id,
const IdContext context 
) const
protectedinherited

Definition at line 821 of file LArOnlineID_Base.cxx.

824 {
825  // We assume that the context is >= feedthrough
826  exp_id.clear();
827  exp_id << lar_field_value()
828  << s_lar_onlineCalib_field_value
829  << barrel_ec(id)
830  << pos_neg(id)
831  << feedthrough(id);
832  if(context && context->end_index() >= m_slot_index) {
833  exp_id << slot(id);
834  if(context->end_index() >= m_channel_in_slot_index) {
835  exp_id << channel(id);
836  if(context->end_index() >= m_slar_index) {
837  exp_id << is_slar(id);
838  }
839  }
840  }
841  return (0);
842 }

◆ get_expanded_id()

int LArOnlineID_Base::get_expanded_id ( const HWIdentifier id,
ExpandedIdentifier exp_id,
const IdContext context 
) const
protectedinherited

create expanded HWIdentifier from HWIdentifier (return == 0 for OK)

Definition at line 794 of file LArOnlineID_Base.cxx.

797 {
798  // We assume that the context is >= feedthrough
799  exp_id.clear();
800  exp_id << lar_field_value()
801  << s_lar_online_field_value
802  << barrel_ec(id)
803  << pos_neg(id);
804  if(context && context->end_index() >= m_feedthrough_index) {
805  exp_id << feedthrough(id);
806  if(context && context->end_index() >= m_slot_index) {
807  exp_id << slot(id);
808  if(context->end_index() >= m_channel_in_slot_index) {
809  exp_id << channel(id);
810  if(context->end_index() >= m_slar_index) {
811  exp_id << is_slar(id);
812  }
813  }
814  }
815  }
816  return (0);
817 }

◆ get_hash()

int AtlasDetectorID::get_hash ( const Identifier id,
IdentifierHash hash_id,
const IdContext context = 0 
) const
overridevirtualinherited

Create hash id from compact id (return == 0 for OK)

Implements IdHelper.

Reimplemented in SCT_ID, TRT_ID, PixelID, SiliconID, MuonIdHelper, TileHWID, CaloIDHelper, TileTBID, Tile_Base_ID, HGTD_ID, CaloLVL1_ID, and JGTowerBase_ID.

Definition at line 195 of file AtlasDetectorID.cxx.

197  {
198  return 0;
199 }

◆ get_id()

int AtlasDetectorID::get_id ( const IdentifierHash hash_id,
Identifier id,
const IdContext context = 0 
) const
overridevirtualinherited

Create compact id from hash id (return == 0 for OK)

Implements IdHelper.

Reimplemented in SCT_ID, TRT_ID, PixelID, SiliconID, MuonIdHelper, TileHWID, CaloIDHelper, TileTBID, Tile_Base_ID, HGTD_ID, CaloLVL1_ID, and JGTowerBase_ID.

Definition at line 189 of file AtlasDetectorID.cxx.

191  {
192  return 0;
193 }

◆ group()

const std::string & AtlasDetectorID::group ( ) const
inherited

Group name for this helper.

Definition at line 32 of file AtlasDetectorID.cxx.

33 {
34  return m_group;
35 }

◆ helper()

virtual HelperType AtlasDetectorID::helper ( ) const
inlinevirtualinherited

Type of helper, defaulted to 'Unimplemented'.

Reimplemented in SCT_ID, PLR_ID, and PixelID.

Definition at line 90 of file AtlasDetectorID.h.

90  {
92  }

◆ hgtd()

Identifier AtlasDetectorID::hgtd ( void  ) const
inherited

Definition at line 114 of file AtlasDetectorID.cxx.

114  {
115  Identifier result{0};
116  // Pack field
119  return result;
120 }

◆ hgtd_exp()

ExpandedIdentifier AtlasDetectorID::hgtd_exp ( void  ) const
inlineprotectedinherited

Definition at line 543 of file AtlasDetectorID.h.

544 {
546  return (result << m_HGTD_ID);
547 }

◆ hgtd_field_value()

int AtlasDetectorID::hgtd_field_value ( ) const
inlineprotectedinherited

Definition at line 630 of file AtlasDetectorID.h.

630 {return (m_HGTD_ID);}

◆ indet()

Identifier AtlasDetectorID::indet ( void  ) const
inherited

Detector systems:

Definition at line 55 of file AtlasDetectorID.cxx.

55  {
56  Identifier result{0};
57  // Pack field
59  return result;
60 }

◆ indet_exp()

ExpandedIdentifier AtlasDetectorID::indet_exp ( void  ) const
inlineprotectedinherited

Detector systems:

Definition at line 480 of file AtlasDetectorID.h.

481 {
483  return (result << m_INDET_ID);
484 }

◆ indet_field_value()

int AtlasDetectorID::indet_field_value ( ) const
inlineprotectedinherited

Provide efficient access to individual field values, for subclass idhelpers.

Definition at line 606 of file AtlasDetectorID.h.

606 {return (m_INDET_ID);}

◆ init_calib_hashes()

int LArOnlineID_Base::init_calib_hashes ( )
protectedinherited

Definition at line 1981 of file LArOnlineID_Base.cxx.

1983 {
1984  MsgStream log(m_msgSvc, "LArOnlineID_Base" );
1985  unsigned int nids=0;
1986  std::set<HWIdentifier> ids;
1987  for (unsigned int i = 0; i < m_full_calib_laronline_range.size(); ++i) {
1990  for (const auto & exp_id : rit) {
1991  HWIdentifier id = this->calib_channel_Id(exp_id[m_bec_index],
1992  exp_id[m_side_index],
1993  exp_id[m_feedthrough_index],
1994  exp_id[m_slot_index],
1995  exp_id[m_channel_in_slot_index]);
1996  if(!(ids.insert(id)).second) {
1997  if(m_msgSvc) {
1998  log << MSG::WARNING << " LArOnlineID_Base::init_calib_Hashes "
1999  << " Error: duplicated id for channel id. nids= " << nids
2000  << " compact Id " << std::string(exp_id) << " " << show_to_string(id) << endmsg;
2001  } else {
2002  std::cout << " LArOnlineID_Base::init_calib_Hashes "
2003  << " Error: duplicated id for channel id. nids= " << nids
2004  << " compact Id " ;
2005  exp_id.show();
2006  std::cout << " " << show_to_string(id) << std::endl;
2007  }
2008  }
2009  nids++;
2010  }
2011  }
2012  unsigned int nidtb=0;
2013  std::set<HWIdentifier>::const_iterator first = ids.begin();
2014  std::set<HWIdentifier>::const_iterator last = ids.end();
2015  for (;first != last && nidtb < nids; ++first) {
2016  m_calib_channel_vec.push_back(*first);
2017  nidtb++;
2018  }
2020 
2021  /* FEB hash */
2022  /*==========*/
2023  nids = 0;
2024  ids.clear();
2025  for (unsigned int i = 0; i < m_full_calib_module_range.size(); ++i) {
2028  for (const auto & exp_id : rit) {
2029  HWIdentifier febId = calib_module_Id( exp_id[m_bec_index],
2030  exp_id[m_side_index],
2031  exp_id[m_feedthrough_index],
2032  exp_id[m_slot_index] );
2033  if(!(ids.insert(febId)).second){
2034  if(m_msgSvc) {
2035  log << MSG::WARNING << " LArOnlineID_Base::init_calibhashes "
2036  << " Warning: duplicated id for feb id. nids= " << nids
2037  << " compact Id " << std::string(exp_id) << " " << show_to_string(febId) << endmsg;
2038  } else {
2039  std::cout << " LArOnlineID_Base::init_calibhashes "
2040  << " Error: duplicated id for feb id. nids= " << nids
2041  << " compact Id " ;
2042  exp_id.show();
2043  std::cout << " " << show_to_string(febId) << std::endl;
2044  std::cout << std::endl;
2045 
2046  }
2047  }
2048  nids++;
2049  }
2050  }
2051  nidtb=0;
2052  first = ids.begin();
2053  last = ids.end();
2054  for (;first != last && nidtb < nids; ++first)
2055  {
2056  m_calib_module_vec.push_back(*first);
2057  nidtb++;
2058  }
2060  return (0);
2061 }

◆ init_H6Hashes()

int LArOnlineID::init_H6Hashes ( )
private

Definition at line 562 of file LArOnlineID.cxx.

564 {
565  MsgStream log(m_msgSvc, "LArOnlineID" );
566  std::string strg1;
567  std::string strg2;
568  std::string strg3;
569 
570  unsigned int nids=0;
571  std::set<HWIdentifier> ids;
572  if(m_msgSvc) log << MSG::DEBUG << "[init_H6hashes] : ChannelId : m_full_laronline_range.size() = "
574  for (unsigned int i = 0; i < m_full_laronline_range.size(); ++i)
575  {
578  for (const auto & exp_id:rit)
579  {
580  HWIdentifier id = this->channel_Id (exp_id[m_bec_index],
581  exp_id[m_side_index],
582  exp_id[m_feedthrough_index],
583  exp_id[m_slot_index],
584  exp_id[m_channel_in_slot_index]);
585  if(!(ids.insert(id)).second)
586  {
587  strg1 = " init_hashes: duplicated id for channel nb = "+std::to_string(nids);
588  strg3 = " expanded Id= "+show_to_string(id);
589  if(m_msgSvc)
590  {
591  log << MSG::ERROR << strg1 << endmsg;
592  log << MSG::ERROR << strg3 << endmsg;
593  }
594  else
595  {
596  std::cout << "LArOnlineID:: Error" << strg1 << std::endl;
597  std::cout << strg3 << std::endl;
598  }
599  }
600  nids++;
601  }
602  }
603  unsigned int nidtb=0;
604  std::set<HWIdentifier>::const_iterator first = ids.begin();
605  std::set<HWIdentifier>::const_iterator last = ids.end();
606  for (;first != last && nidtb < nids; ++first)
607  {
608  if( is_H6(*first) )
609  {
610  m_channel_vec.push_back(*first);
611  nidtb++;
612  }
613  }
615 
616  /* FEB hash */
617  /*==========*/
618  nids = 0;
619  ids.clear();
620  if(m_msgSvc) log << MSG::DEBUG << "[init_H6hashes] > FebId : m_full_feb_range.size() = " << m_full_feb_range.size() << endmsg;
621  for (unsigned int i = 0; i < m_full_feb_range.size(); ++i)
622  {
623  const Range& range = m_full_feb_range[i];
625  for (const auto & exp_id : rit)
626  {
627  HWIdentifier febId = feb_Id( exp_id[m_bec_index],
628  exp_id[m_side_index],
629  exp_id[m_feedthrough_index],
630  exp_id[m_slot_index] );
631  if(!(ids.insert(febId)).second)
632  {
633  strg1 = " init_hashes : duplicated id for FEB nb = "+std::to_string(nids);
634  strg3 = " expanded Id= "+show_to_string(febId);
635  if(m_msgSvc)
636  {
637  log << MSG::ERROR << strg1 << endmsg;
638  log << MSG::ERROR << strg3 << endmsg;
639  }
640  else
641  {
642  std::cout << "LArOnlineID::Error" << strg1 << std::endl;
643  std::cout << strg3 << std::endl;
644  }
645  }
646  nids++;
647  }
648  }
649  nidtb=0;
650  first = ids.begin();
651  last = ids.end();
652  for (;first != last && nidtb < nids; ++first)
653  {
654  if( is_H6(*first) )
655  {
656  m_feb_vec.push_back(*first);
657  nidtb++;
658  }
659  }
660  m_febHashMax = m_feb_vec.size();
661 
662 
663  /* Feedthrough hash */
664  /*=================*/
665  nids = 0;
666  ids.clear();
667  // AL-->
668  if(m_msgSvc) log << MSG::DEBUG << "[init_H6hashes] FeedthroughId: m_feedthrough_range.size() = " << m_full_feedthrough_range.size() << endmsg;
669  for (unsigned int i = 0; i < m_full_feedthrough_range.size(); ++i)
670  {
673  for (const auto & exp_id:rit)
674  {
675  HWIdentifier feedthroughId = feedthrough_Id( exp_id[m_bec_index],
676  exp_id[m_side_index],
677  exp_id[m_feedthrough_index] );
678  if(m_msgSvc) log << MSG::DEBUG << "[init_H6hashes] m_bec_index= " << m_bec_index
679  << "m_side_index= " << m_bec_index
680  << "m_feedthrough_index= " << m_bec_index
681  << "m_slot_index= " << m_bec_index << endmsg;
682  int test_bec = barrel_ec( feedthroughId);
683  int test_pn = pos_neg( feedthroughId);
684  int test_ft = feedthrough( feedthroughId);
685  if(m_msgSvc) log << MSG::DEBUG << "[init_H6hashes] in loop : [bec,pn,ft]= [" << test_bec
686  << "," << test_pn << "," << test_ft << "]"<< endmsg;
687  if(!(ids.insert(feedthroughId)).second)
688  {
689  strg1 = " init_hashes : duplicated id for feedthrough nb = "+std::to_string(nids);
690  strg3 = " expanded Id= "+show_to_string(feedthroughId);
691  if(m_msgSvc)
692  {
693  log << MSG::ERROR << strg1 << endmsg;
694  log << MSG::ERROR << strg3 << endmsg;
695  }
696  else
697  {
698  std::cout << "LArOnlineID::Error" << strg1 << std::endl;
699  std::cout << strg3 << std::endl;
700  }
701  }
702  nids++;
703  }
704  }
705  nidtb=0;
706  first = ids.begin();
707  last = ids.end();
708  for (;first != last && nidtb < nids; ++first)
709  {
710  if( is_H6FT( *first ))
711  {
712  if(m_msgSvc) log << MSG::DEBUG << "[init_H6hashes] filling m_feedthrough_vec IS-H6 !!"<< endmsg;
713  m_feedthrough_vec.push_back(*first);
714  nidtb++;
715  }
716  }
718  if(m_msgSvc) log << MSG::DEBUG << "[init_H6hashes] final m_feedthroughHashMax = " << m_feedthroughHashMax << endmsg;
719 
720  return (0);
721 }

◆ init_H8Hashes()

int LArOnlineID::init_H8Hashes ( )
private

Definition at line 405 of file LArOnlineID.cxx.

407 {
408  MsgStream log(m_msgSvc, "LArOnlineID" );
409  std::string strg1;
410  std::string strg2;
411  std::string strg3;
412 
413  /* Channel hash */
414  unsigned int nids=0;
415  std::set<HWIdentifier> ids;
416  if(m_msgSvc) log << MSG::DEBUG << "[init_H8hashes] > ChannelId : m_full_laronline_range.size() = " << m_full_laronline_range.size() << endmsg;
417  for (unsigned int i = 0; i < m_full_laronline_range.size(); ++i)
418  {
421  for (const auto & exp_id : rit)
422  {
423  HWIdentifier id = this->channel_Id (exp_id[m_bec_index],
424  exp_id[m_side_index],
425  exp_id[m_feedthrough_index],
426  exp_id[m_slot_index],
427  exp_id[m_channel_in_slot_index]);
428  if(!(ids.insert(id)).second)
429  {
430  strg1 = " init_hashes : duplicated id for channel nb = "+std::to_string(nids);
431  strg3 = " expanded Id= "+show_to_string(id);
432  if(m_msgSvc)
433  {
434  log << MSG::ERROR << strg1 << endmsg;
435  log << MSG::ERROR << strg3 << endmsg;
436  }
437  else
438  {
439  std::cout << "LArOnlineID::Error" << strg1 << std::endl;
440  std::cout << strg3 << std::endl;
441  }
442  }
443  nids++;
444  }
445  }
446  unsigned int nidtb=0;
447  std::set<HWIdentifier>::const_iterator first = ids.begin();
448  std::set<HWIdentifier>::const_iterator last = ids.end();
449  for (;first != last && nidtb < nids; ++first)
450  {
451  if( is_H8(*first) )
452  {
453  m_channel_vec.push_back(*first);
454  nidtb++;
455  }
456  }
458 
459 
460  /* FEB hash */
461  /*==========*/
462  nids = 0;
463  ids.clear();
464  if(m_msgSvc) log << MSG::DEBUG << "[init_H8hashes] > FebId : m_full_feb_range.size() = " << m_full_feb_range.size() << endmsg;
465  for (unsigned int i = 0; i < m_full_feb_range.size(); ++i)
466  {
467  const Range& range = m_full_feb_range[i];
469  for (const auto & exp_id : rit)
470  {
471  HWIdentifier febId = feb_Id( exp_id[m_bec_index],
472  exp_id[m_side_index],
473  exp_id[m_feedthrough_index],
474  exp_id[m_slot_index] );
475  if(!(ids.insert(febId)).second)
476  {
477  strg1 = " init_hashes: duplicated id for FEB nb = "+std::to_string(nids);
478  strg3 = " expanded Id= "+show_to_string(febId);
479  if(m_msgSvc)
480  {
481  log << MSG::ERROR << strg1 << endmsg;
482  log << MSG::ERROR << strg3 << endmsg;
483  }
484  else
485  {
486  std::cout << "LArOnlineID:: Error" << strg1 << std::endl;
487  std::cout << strg3 << std::endl;
488  }
489  }
490  nids++;
491  }
492  }
493  nidtb=0;
494  first = ids.begin();
495  last = ids.end();
496  for (;first != last && nidtb < nids; ++first)
497  {
498  if( is_H8(*first) )
499  {
500  m_feb_vec.push_back(*first);
501  nidtb++;
502  }
503  }
504  m_febHashMax = m_feb_vec.size();
505 
506  /* Feedthrough hash */
507  /*=================*/
508  nids = 0;
509  ids.clear();
510  if(m_msgSvc) log << MSG::DEBUG << "[init_H8hashes] FeedthroughId: m_feedthrough_range.size() = " << m_full_feedthrough_range.size() << endmsg;
511  for (unsigned int i = 0; i < m_full_feedthrough_range.size(); ++i)
512  {
515  for (const auto & exp_id:rit)
516  {
517  HWIdentifier feedthroughId = feedthrough_Id( exp_id[m_bec_index],
518  exp_id[m_side_index],
519  exp_id[m_feedthrough_index] );
520  int test_bec = barrel_ec( feedthroughId);
521  int test_pn = pos_neg( feedthroughId);
522  int test_ft = feedthrough( feedthroughId);
523  if(m_msgSvc) log << MSG::VERBOSE << "[init_H8hashes] in loop : [bec,pn,ft]= [" << test_bec
524  << "," << test_pn << "," << test_ft << "]"<< endmsg;
525  if(!(ids.insert(feedthroughId)).second)
526  {
527  strg1 = " init_hashes : duplicated id for feedthrough nb = "+std::to_string(nids);
528  strg3 = " expanded Id= "+show_to_string(feedthroughId);
529  if(m_msgSvc)
530  {
531  log << MSG::ERROR << strg1 << endmsg;
532  log << MSG::ERROR << strg3 << endmsg;
533  }
534  else
535  {
536  std::cout << "LArOnlineID::Error" << strg1 << std::endl;
537  std::cout << strg3 << std::endl;
538  }
539  }
540  nids++;
541  }
542  }
543  nidtb=0;
544  first = ids.begin();
545  last = ids.end();
546  for (;first != last && nidtb < nids; ++first)
547  {
548  if( is_H8(*first) )
549  {
550  m_feedthrough_vec.push_back(*first);
551  nidtb++;
552  }
553  }
555  if(m_msgSvc) log << MSG::DEBUG << "[init_H8hashes] final m_feedthroughHashMax = " << m_feedthroughHashMax << endmsg;
556 
557  return (0);
558 }

◆ init_hashes()

int LArOnlineID_Base::init_hashes ( )
protectedinherited

Definition at line 1130 of file LArOnlineID_Base.cxx.

1132 {
1133  MsgStream log(m_msgSvc, "LArOnlineID_Base" );
1134  std::string strg1;
1135  std::string strg2;
1136  std::string strg3;
1137 
1138  /* channel hash */
1141  unsigned int nids = 0;
1142  std::set<HWIdentifier> ids;
1143  for (unsigned int i = 0; i < m_full_laronline_range.size(); ++i)
1144  {
1145  const Range& range = m_full_laronline_range[i];
1147  for (const auto & exp_id : rit)
1148  {
1149  HWIdentifier id = this->channel_Id (exp_id[m_bec_index],
1150  exp_id[m_side_index],
1151  exp_id[m_feedthrough_index],
1152  exp_id[m_slot_index],
1153  exp_id[m_channel_in_slot_index]);
1154  if(!(ids.insert(id)).second)
1155  {
1156  strg1 = " init_hashes: duplicated id for channel nb = "+std::to_string(nids);
1157  strg3 = " expanded Id= "+show_to_string(id);
1158  if(m_msgSvc)
1159  {
1160  log << MSG::ERROR << strg1 << endmsg;
1161  //log << MSG::ERROR << strg2 << endmsg;
1162  log << MSG::ERROR << strg3 << endmsg;
1163  }
1164  else
1165  {
1166  std::cout << "LArOnlineID_Base::Error" << strg1 << std::endl;
1167  //std::cout << strg2 << std::endl;
1168  std::cout << strg3 << std::endl;
1169  }
1170  }
1171  nids++;
1172  }
1173  }
1174  if(ids.size() != m_channelHashMax)
1175  {
1176  strg1 = " init_hashes ";
1177  strg2 = " set size NOT EQUAL to hash max. size "+std::to_string(ids.size());
1178  strg3 = " hash max "+std::to_string(m_channelHashMax);
1179  if(m_msgSvc)
1180  {
1181  log << MSG::ERROR << strg1 << endmsg;
1182  log << MSG::ERROR << strg2 << endmsg;
1183  log << MSG::ERROR << strg3 << endmsg;
1184  }
1185  else
1186  {
1187  std::cout << "LArOnlineID_Base::" << strg1 << std::endl;
1188  std::cout << "Error" << strg2 << std::endl;
1189  std::cout << strg3 << std::endl;
1190  }
1191  return (1);
1192  }
1193  nids=0;
1194  std::set<HWIdentifier>::const_iterator first = ids.begin();
1195  std::set<HWIdentifier>::const_iterator last = ids.end();
1196  for (;first != last && nids < m_channel_vec.size(); ++first)
1197  {
1198  m_channel_vec[nids] = (*first) ;
1199  nids++;
1200  }
1201 
1202  /* feedthrough hash */
1205  nids = 0;
1206  ids.clear();
1207  for (unsigned int i = 0; i < m_full_feedthrough_range.size(); ++i)
1208  {
1211  for (const auto & exp_id: rit) {
1212  HWIdentifier feedthroughId = feedthrough_Id( exp_id[m_bec_index],
1213  exp_id[m_side_index],
1214  exp_id[m_feedthrough_index] );
1215  if(!(ids.insert(feedthroughId)).second){
1216  strg1 = " init_hashes: duplicated id for feedthrough nb = "+std::to_string(nids);
1217  strg3 = " expanded Id= "+show_to_string(feedthroughId);
1218  if(m_msgSvc)
1219  {
1220  log << MSG::ERROR << strg1 << endmsg;
1221  //log << MSG::ERROR << strg2 << endmsg;
1222  log << MSG::ERROR << strg3 << endmsg;
1223  }
1224  else
1225  {
1226  std::cout << "LArOnlineID_Base:: Error" << strg1 << std::endl;
1227  //std::cout << strg2 << std::endl;
1228  std::cout << strg3 << std::endl;
1229  }
1230  }
1231  nids++;
1232  }
1233  }
1234  if(ids.size() != m_feedthroughHashMax)
1235  {
1236  strg1 = " init_hashes ";
1237  strg2 = " set size NOT EQUAL to feedthrough hash max. size "+std::to_string(ids.size());
1238  strg3 = " hash max= "+std::to_string(m_feedthroughHashMax);
1239  if(m_msgSvc)
1240  {
1241  log << MSG::ERROR << strg1 << endmsg;
1242  log << MSG::ERROR << strg2 << endmsg;
1243  log << MSG::ERROR << strg3 << endmsg;
1244  }
1245  else
1246  {
1247  std::cout << "LArOnlineID_Base::" << strg1 << std::endl;
1248  std::cout << " Error:" << strg2 << std::endl;
1249  std::cout << strg3 << std::endl;
1250  }
1251  return (1);
1252  }
1253  nids=0;
1254  first = ids.begin();
1255  last = ids.end();
1256  for (;first != last && nids < m_feedthrough_vec.size(); ++first)
1257  {
1258  m_feedthrough_vec[nids] = (*first) ;
1259  nids++;
1260  }
1261 
1262  /* FEB hash */
1263  /*==========*/
1265  m_feb_vec.resize(m_febHashMax);
1266  nids = 0;
1267  ids.clear();
1268  for (unsigned int i = 0; i < m_full_feb_range.size(); ++i)
1269  {
1270  const Range& range = m_full_feb_range[i];
1272  for (const auto & exp_id :rit)
1273  {
1274  HWIdentifier febId = feb_Id( exp_id[m_bec_index],
1275  exp_id[m_side_index],
1276  exp_id[m_feedthrough_index],
1277  exp_id[m_slot_index] );
1278  if(!(ids.insert(febId)).second)
1279  {
1280  strg1 = " init_hashes: duplicated id for FEB nb = "+std::to_string(nids);
1281  strg3 = " expanded Id= "+show_to_string(febId);
1282  if(m_msgSvc)
1283  {
1284  log << MSG::ERROR << strg1 << endmsg;
1285  //log << MSG::ERROR << strg2 << endmsg;
1286  log << MSG::ERROR << strg3 << endmsg;
1287  }
1288  else
1289  {
1290  std::cout << "LArOnlineID_Base::Error:" << strg1 << std::endl;
1291  //std::cout << strg2 << std::endl;
1292  std::cout << strg3 << std::endl;
1293  }
1294  }
1295  nids++;
1296  }
1297  }
1298  if(ids.size() != m_febHashMax)
1299  {
1300  strg1 = " init_hashes ";
1301  strg2 = " set size NOT EQUAL to FEB hash max. size "+std::to_string(ids.size());
1302  strg3 = " hash max "+std::to_string(m_febHashMax);
1303  if(m_msgSvc)
1304  {
1305  log << MSG::ERROR << strg1 << endmsg;
1306  log << MSG::ERROR << strg2 << endmsg;
1307  log << MSG::ERROR << strg3 << endmsg;
1308  }
1309  else
1310  {
1311  std::cout << "LArOnlineID_Base::" << strg1 << std::endl;
1312  std::cout << "Error:" << strg2 << std::endl;
1313  std::cout << strg3 << std::endl;
1314  }
1315  return (1);
1316  }
1317  nids=0;
1318  first = ids.begin();
1319  last = ids.end();
1320  for (;first != last && nids < m_feb_vec.size(); ++first)
1321  {
1322  m_feb_vec[nids] = (*first) ;
1323  nids++;
1324  }
1325 
1326 
1327  return (0);
1328 }

◆ initialize_from_dictionary()

int LArOnlineID::initialize_from_dictionary ( const IdDictMgr dict_mgr)
finaloverridevirtual

initialization from the identifier dictionary

Reimplemented from LArOnlineID_Base.

Definition at line 31 of file LArOnlineID.cxx.

33 {
34  MsgStream log(m_msgSvc, "LArOnlineID" );
35  if (!m_quiet) {
36  std::string strg = "initialize_from_dictionary";
37  if(m_msgSvc) {
38  log << MSG::INFO << strg << endmsg;
39  }
40  else {
41  std::cout << strg << std::endl;
42  }
43  }
44 
45  // Check whether this helper should be reinitialized
46  if (!reinitialize(dict_mgr)) {
47  if(m_msgSvc) log << MSG::DEBUG << "Request to reinitialize not satisfied - tags have not changed" << endmsg;
48  return (0);
49  } else {
50  if(m_msgSvc) log << MSG::DEBUG << "(Re)initialize" << endmsg;
51  }
52 
53  // init base object
54  if(AtlasDetectorID::initialize_from_dictionary(dict_mgr)) return (1);
55  m_dict = dict_mgr.find_dictionary ("LArCalorimeter");
56  if(!m_dict) {
57 
58  std::string strg = " initialize_from_dictionary - cannot access LArCalorimeter dictionary ";
59  if(m_msgSvc) {
60  log << MSG::ERROR << strg << endmsg;
61  }
62  else {
63  std::cout << "LArOnlineID::" << strg << std::endl;
64  }
65  return 1;
66  }
67 
68  // Register version of the dictionary used
69  if (register_dict_tag(dict_mgr, "LArCalorimeter")) return(1);
70 
71  // initialize dictionary version
72  AtlasDetectorID::setDictVersion(dict_mgr, "LArCalorimeter");
73 
74  /* Initialize the field indices */
75 // if(initLevelsFromDict()) return (1);
77 
78 
79  /* Find value for the field LAr Calorimeter */
80  const IdDictDictionary* atlasDict = dict_mgr.find_dictionary ("ATLAS");
81  int larField = -1;
82  if (atlasDict->get_label_value("subdet", "LArCalorimeter", larField)) {
83  std::stringstream strm;
84  strm << atlasDict->name();
85  std::string strg= " Could not get value for label 'LArCalorimeter' of field 'subdet' in dictionary "+strm.str();
86  if(m_msgSvc) {
87  log << MSG::ERROR << strg << endmsg;
88  }
89  else {
90  std::cout << "LArOnlineID:" << strg << std::endl;
91  }
92  return (1);
93  }
94 
95  /* Find value for the field LArOnline */
96  int larOnlineField = -4;
97  if (m_dict->get_label_value("part", "LArOnline", larOnlineField)) {
98  std::stringstream strm;
99  strm << m_dict->name();
100  std::string strg = "Could not get value for label 'LArOnline' of field 'part' in dictionary "+strm.str();
101  if(m_msgSvc) {
102  log << MSG::ERROR << strg << endmsg;
103  }
104  else {
105  std::cout << strg << std::endl;
106  }
107  return (1);
108  }
109 
110  /* Find value for the field calibLArOnline */
111  int larOnlineCalibField = -5;
112  if (m_dict->get_label_value("part", "LArOnlineCalib", larOnlineCalibField)) {
113  std::stringstream strm;
114  strm << m_dict->name();
115  std::string strg = "Could not get value for label 'LArOnlineCalib' of field 'part' in dictionary "+strm.str();
116  if(m_msgSvc) {
117  log << MSG::ERROR << strg << endmsg;
118  }
119  else {
120  std::cout << strg << std::endl;
121  }
122  return (1);
123  }
124 
125  /* Set up id for Region and range prefix */
127  region_id.add(larField);
128  region_id.add(larOnlineField);
129  Range prefix;
130 
131  /*Full range for all channels*/
135 
136  if (!m_quiet) {
137  std::string strg0= " initialize_from_dictionary :";
138  std::string strg1= " feedthrough range -> " + (std::string)m_full_feedthrough_range;
139  std::string strg2= " feedthrough slot range -> " + (std::string)m_full_feb_range;
140  std::string strg3= " channel range -> " + (std::string)m_full_laronline_range;
141  if(m_msgSvc) {
142  log << MSG::DEBUG << strg0 << endmsg;
143  log << MSG::DEBUG << strg1 << endmsg;
144  log << MSG::DEBUG << strg2 << endmsg;
145  log << MSG::DEBUG << strg3 << endmsg;
146  }
147  else {
148  std::cout << strg0 << std::endl;
149  std::cout << strg1 << std::endl;
150  std::cout << strg2 << std::endl;
151  std::cout << strg3 << std::endl;
152  }
153  }
154 
155 
156  /* Setup the hash tables */
157  if (!m_quiet) {
158  std::stringstream strm;
159  strm << dictionaryVersion();
160  std::string strg="[initialize_from_dictionary] version= " + strm.str();
161  if(m_msgSvc) {
162  log << MSG::DEBUG << strg << endmsg;
163  }
164  else {
165  std::cout << "LArOnlineID: " << strg << std::endl;
166  }
167  }
168  if( dictionaryVersion() == "fullAtlas" ) {
169  if(LArOnlineID_Base::init_hashes()) return (1);
170  if(init_calib_hashes()) return (1);
171  }
172  if( dictionaryVersion() == "H8TestBeam" ) {
173  if(init_H8Hashes()) return (1);
174  if(init_calib_hashes()) return (1);
175  }
176  if( dictionaryVersion() == "H6TestBeam" ) {
177  if(m_msgSvc) log << MSG::DEBUG << "[initialze_from_dictionary] ...call init_H6hashes.." << endmsg;
178  if(init_H6Hashes()) return (1);
179  if(init_calib_hashes()) return (1);
180  }
181  if(m_msgSvc) {
182  log << MSG::DEBUG << "initialize_from_dictionary -> calibModuleHash= " << m_calibModuleHashMax << endmsg;
183  log << MSG::DEBUG << "initialize_from_dictionary -> calibChannelHash= " << m_calibChannelHashMax << endmsg;
184  }
185 
186 
187  // Setup for hash calculation for channels (febs is further below)
188 
189  // Febs have a uniform number of channels
190  // The lookup table only needs to contain the
191  // hash offset for each feb
192 
193  // The implementation requires:
194 
195  // 1) a lookup table for each feb containing hash offset
196  // 2) a decoder to access the "index" corresponding to the
197  // bec/side/ft/slot fields. These fields use x bits, so the
198  // vector has a length of 2**x.
199 
200  /* Create decoder for fields bec to slot */
202  m_bec_impl.bits() +
203  m_side_impl.bits() +
205  m_slot_impl.bits();
207  m_bec_slot_impl.set_bits(bits, bits_offset);
208  int size = (1 << bits);
209 
210  // Set up vector as lookup table for hash calculation.
211  m_chan_hash_calcs.resize(size);
212 
213  std::stringstream strm1;
214  std::stringstream strm2;
215  for (unsigned int i = 0; i < m_febHashMax; ++i) {
216 
217  HWIdentifier febId = feb_Id(i) ;
218 
219  HashCalc hc;
220 
221  HWIdentifier min = channel_Id ( febId, 0);
222 
224  hc.m_hash = min_hash;
226 
227  if (m_bec_slot_impl.unpack(min) >= size) {
228  if (m_quiet) {
229  std::stringstream strm;
230  strm << size;
231  strm1 << show_to_string(min);
232  strm2 << m_bec_slot_impl.unpack(min);
233  std::string strg = "Min > "+strm.str();
234  std::string strg1= " "+strm1.str();
235  std::string strg2= " "+strm2.str();
236  if(m_msgSvc) {
237  log << MSG::DEBUG << strg << endmsg;
238  log << MSG::DEBUG << strg1 << endmsg;
239  log << MSG::DEBUG << strg2 << endmsg;
240  }
241  else {
242  std::cout << strg << std::endl;
243  std::cout << strg1 << std::endl;
244  std::cout << strg2 << std::endl;
245  }
246  }
247  }
248  }
249 
250  // Check channel hash calculation
251  for (unsigned int i = 0; i < m_channelHashMax; ++i) {
252  HWIdentifier id = channel_Id(i);
253  if (channel_Hash(id) != i) {
254  if (!m_quiet) {
255  std::stringstream strm;
256  strm << show_to_string(id);
257  strm1 << channel_Hash(id);
258  strm2 << i;
259  std::string strg = " ***** Error channel ranges, id, hash, i = "+strm.str();
260  std::string strg1= " , "+strm1.str();
261  std::string strg2= " , "+strm2.str();
262  if(m_msgSvc) {
263  log << MSG::ERROR << strg << endmsg;
264  log << MSG::ERROR << strg1 << endmsg;
265  log << MSG::ERROR << strg2 << endmsg;
266  }
267  else {
268  std::cout << strg << std::endl;
269  std::cout << strg1 << std::endl;
270  std::cout << strg2 << std::endl;
271  }
272  }
273  }
274  }
275 
276 
277 
278  // Setup for hash calculation for febs
279 
280  // We calculate the feb hash by saving the hash of each
281  // feedthrough in a HashCalc object and then adding on the slot
282  // number for a particular feb
283 
284  // The implementation requires:
285 
286  // 1) a lookup table for each ft containing hash offset
287  // 2) a decoder to access the "index" corresponding to the
288  // bec/side/ft fields. These fields use x bits, so the
289  // vector has a length of 2**x.
290 
291  /* Create decoder for fields bec to ft */
292  bits = m_bec_impl.bits() +
293  m_side_impl.bits() +
295  bits_offset = m_bec_impl.bits_offset();
296  m_bec_ft_impl.set_bits(bits, bits_offset);
297  size = (1 << bits);
298 
299  // Set up vector as lookup table for hash calculation.
300  m_feb_hash_calcs.resize(size);
301 
302  // Get context for conversion to expanded ids
303  IdContext ftContext = feedthroughContext();
304  ExpandedIdentifier ftExpId;
305 
306  for (unsigned int i = 0; i < m_feedthroughHashMax; ++i) {
307 
309 
310  HashCalcFeb hc;
311 
312  // Set the hash id for each feedthrough, and then check if one
313  // needs to also save the slot values
315  hc.m_hash = min_hash;
316 
317  // For each feedthrough we must check to see if the slot
318  // values are enumerated or not. If they are enumerate we must
319  // save the values in order to calculate the fed hash
320  if (get_expanded_id(min, ftExpId, &ftContext)) {
321  if(m_msgSvc) {
322  log << MSG::WARNING << " ***** Warning cannot get ft expanded id for " << show_to_string(min) << endmsg;
323  } else {
324  std::cout << " ***** Warning cannot get ft expanded id for " << show_to_string(min) << std::endl;
325  }
326  }
327  unsigned int nrangesFound = 0;
328  for (unsigned int i = 0; i < m_full_feb_range.size(); ++i) {
329  if (m_full_feb_range[i].match(ftExpId)) {
330  nrangesFound += 1;
331  const Range::field& slotField = m_full_feb_range[i][m_slot_index];
332  if (slotField.isEnumerated()) {
333  // save values
334  hc.m_slot_values = slotField.get_values();
335  }
336  }
337  }
338 
339  // Similarly, if there is more than one range per feedthrough,
340  // this means that slot values are not a continuous range. In
341  // this case, as well, we save all possible slot values
342  if (nrangesFound > 1) {
343  for (unsigned int i = 0; i < m_full_feb_range.size(); ++i) {
344  if (m_full_feb_range[i].match(ftExpId)) {
345  const Range::field& slotField = m_full_feb_range[i][m_slot_index];
346  if (slotField.isBounded()) {
347  // save values
348  unsigned int nvalues = slotField.get_maximum() - slotField.get_minimum() + 1;
349  hc.m_slot_values.reserve(hc.m_slot_values.size() + nvalues);
350  for (unsigned int j = 0; j < nvalues; ++j) {
351  hc.m_slot_values.push_back(j + slotField.get_minimum());
352  }
353  }
354  else {
355  if(m_msgSvc) {
356  log << MSG::WARNING << " ***** Warning feb range slot field is NOT both_bounded - id, slot mode: "
357  << show_to_string(min) << " enumerated" << endmsg;
358  } else {
359  std::cout << " ***** Warning feb range slot field is NOT both_bounded - id, slot mode: "
360  << show_to_string(min) << " enumerated" << std::endl;
361  }
362  }
363  }
364  }
365  }
366 
367 
368  // Set hash calculator
370 
371 
372  if (m_bec_ft_impl.unpack(min) >= size) {
373  std::string strg = "Min > " + std::to_string(size) + " " +
374  show_to_string(min) + " " +
376  std::to_string(min_hash);
377  if (m_msgSvc) {
378  log << MSG::DEBUG << strg << endmsg;
379  } else {
380  std::cout << strg << std::endl;
381  }
382  }
383  }
384 
385  // Check feb hash calculation
386  for (unsigned int i = 0; i < m_febHashMax; ++i) {
387  HWIdentifier id = feb_Id(i);
388  if (feb_Hash(id) != i) {
389  std::string strg = " ***** Warning feb ranges, id, hash, i = " +
390  show_to_string(id) + " , " + std::to_string(feb_Hash(id)) + " , "+std::to_string(i);
391  if(m_msgSvc) {
392  log << MSG::WARNING << strg << endmsg;
393  }
394  else {
395  std::cout << strg << std::endl;
396  }
397  }
398  }
399 
400  return 0;
401 }

◆ initLevelsFromDict()

int LArOnlineID_Base::initLevelsFromDict ( const std::string &  group_name)
protectedinherited

Definition at line 847 of file LArOnlineID_Base.cxx.

849 {
850  MsgStream log(m_msgSvc, "LArOnlineID_Base" );
851 
852  if(!m_dict)
853  {
854  if(m_msgSvc) {
855  log << MSG::ERROR << "initLevelsFromDict - dictionary NOT initialized "
856  << endmsg;
857  }
858  else {
859  std::cout << "LArEM_ID::initLevelsFromDict - dictionary NOT initialized "
860  << std::endl ;
861  }
862  return (1);
863  }
864 
865  /* Find out which identifier field corresponds to each level.*/
866 
867  m_lar_index = 999 ;
868  m_laronline_index = 999 ;
869  m_bec_index = 999 ;
870  m_side_index = 999 ;
871  m_feedthrough_index = 999 ;
872  m_slot_index = 999 ;
874  m_slar_index = 999 ;
875  std::string strg;
876 
877  // Save index to a DictionaryRegion for unpacking
878  IdDictRegion* reg = m_dict->find_region("laronline-barrel");
879  if (reg)
880  {
882  }
883  else
884  {
885  strg = "initLevelsFromDict - unable to find laronline region ";
886  if(m_msgSvc)
887  {
888  log << MSG::ERROR << strg << endmsg;
889  }
890  else
891  {
892  std::cout << "LAronline_ID::" << strg << std::endl;
893  }
894  return (1);
895  }
896  /* Find LAr field */
897  IdDictField* field = m_dict->find_field("subdet") ;
898  if (field)
899  {
900  m_lar_index = field->index();
901  }
902  else
903  {
904  strg= "initLevelsFromDict - unable to find 'subdet' field ";
905  if(m_msgSvc)
906  {
907  log << MSG::ERROR << strg << endmsg;
908  }
909  else
910  {
911  std::cout << "LArOnlineID_Base::" << strg << std::endl;
912  }
913  return (1);
914  }
915 
916  /* Find LArOnline field */
917  field = m_dict->find_field("part") ;
918  if (field)
919  {
920  m_laronline_index = field->index();
921  }
922  else
923  {
924  strg= "initLevelsFromDict - unable to find 'part' field ";
925  if(m_msgSvc)
926  {
927  log << MSG::ERROR << strg << endmsg;
928  }
929  else
930  {
931  std::cout << "LArOnlineID_Base::" << strg << std::endl;
932  }
933  return (1);
934  }
935 
936  /* Find barrel-endcap field */
937  field = m_dict->find_field("barrel-ec") ;
938  if (field)
939  {
940  m_bec_index = field->index();
941  }
942  else
943  {
944  strg= "initLevelsFromDict - unable to find 'barrel-endcap' field ";
945  if(m_msgSvc)
946  {
947  log << MSG::ERROR << strg << endmsg;
948  }
949  else
950  {
951  std::cout << "LArOnlineID_Base::" << strg << std::endl;
952  }
953  return (1);
954  }
955 
956  /* Find detector-side field */
957  field = m_dict->find_field("pos_neg") ;
958  if (field)
959  {
960  m_side_index = field->index();
961  }
962  else
963  {
964  strg= "initLevelsFromDict - unable to find 'barrel-endcap' field ";
965  if(m_msgSvc)
966  {
967  log << MSG::ERROR << strg << endmsg;
968  }
969  else
970  {
971  std::cout << "LArOnlineID_Base::" << strg << std::endl;
972  }
973  return (1);
974  }
975 
976  /* Find feedthrough field */
977  std::string feedthrough_name;
978  if ( m_this_is_slar ){
979  feedthrough_name+="slar_feedthrough";
980  } else {
981  feedthrough_name+="feedthrough";
982  }
984  if (field) {
985  m_feedthrough_index = field->index();
986  }
987  else
988  {
989  strg = "initLevelsFromDict - unable to find 'feedthrough' field ";
990  if(m_msgSvc)
991  {
992  log << MSG::ERROR << strg << endmsg;
993  }
994  else
995  {
996  std::cout << "LArOnlineID_Base::" << strg << std::endl;
997  }
998  return (1);
999  }
1000 
1001  /* Find slot field */
1002  std::string slot_name;
1003  if ( m_this_is_slar ){
1004  slot_name+="slar_slot";
1005  } else {
1006  slot_name+="slot";
1007  }
1008  field = m_dict->find_field(slot_name) ;
1009  if (field)
1010  {
1011  m_slot_index = field->index();
1012  }
1013  else
1014  {
1015  strg = "initLevelsFromDict - unable to find 'slot' field ";
1016  if(m_msgSvc)
1017  {
1018  log << MSG::ERROR << strg << endmsg;
1019  }
1020  else
1021  {
1022  std::cout << "LArOnlineID_Base::" << strg << std::endl;
1023  }
1024  return (1);
1025  }
1026 
1027  /* Find channel_in_slot field */
1028  std::string channel_name;
1029  if ( m_this_is_slar ){
1030  channel_name+="sch_in_slot";
1031  } else {
1032  channel_name+="channel_in_slot";
1033  }
1035  if (field)
1036  {
1037  m_channel_in_slot_index = field->index();
1038  }
1039  else
1040  {
1041  strg = "initLevelsFromDict - unable to find 'channel_in_slot' field ";
1042  if(m_msgSvc)
1043  {
1044  log << MSG::ERROR << strg << endmsg;
1045  }
1046  else
1047  {
1048  std::cout << "LArOnlineID_Base::" << strg << std::endl;
1049  }
1050  return (1);
1051  }
1052 
1053  /* Find slar field */
1054  if ( m_this_is_slar ) {
1055  field = m_dict->find_field("is-slar") ;
1056  if (field)
1057  {
1058  m_slar_index = field->index();
1059  }
1060  else
1061  {
1062  strg = "initLevelsFromDict - unable to find 'slar' field ";
1063  if(m_msgSvc)
1064  {
1065  log << MSG::ERROR << strg << endmsg;
1066  }
1067  else
1068  {
1069  std::cout << "LArOnline_SuperCellID::" << strg << std::endl;
1070  }
1071  return (1);
1072  }
1073  } // end of m_this_is_slar
1074 
1075  /* Set the field implementations */
1076 
1078  if ( !group ) {
1079  log << MSG::ERROR << "initLevelsFromDict - cannot find "
1080  << group_name << endmsg;
1081  } else {
1082  m_laronlineRegion_index = group->regions()[0]->index();
1083  }
1084 
1086 
1094  if ( m_this_is_slar )
1096 
1097  if (!m_quiet) {
1098  if(m_msgSvc) {
1099  log << MSG::DEBUG << "decode index and bit fields for each level: " << endmsg;
1100  log << MSG::DEBUG << "lar " << m_lar_impl.show_to_string() << endmsg;
1101  log << MSG::DEBUG << "online " << m_laronline_impl.show_to_string() << endmsg;
1102  log << MSG::DEBUG << "bec " << m_bec_impl.show_to_string() << endmsg;
1103  log << MSG::DEBUG << "side " << m_side_impl.show_to_string() << endmsg;
1105  log << MSG::DEBUG << "slot " << m_slot_impl.show_to_string() << endmsg;
1106  log << MSG::DEBUG << "channel " << m_channel_in_slot_impl.show_to_string() << endmsg;
1107  if ( m_this_is_slar )
1108  log << MSG::DEBUG << "is-slar " << m_slar_impl.show_to_string() << endmsg;
1109  }
1110  else {
1111  std::cout << "decode index and bit fields for each level: " << std::endl;
1112  std::cout << "lar " << m_lar_impl.show_to_string() << std::endl;
1113  std::cout << "online " << m_laronline_impl.show_to_string() << std::endl;
1114  std::cout << "bec " << m_bec_impl.show_to_string() << std::endl;
1115  std::cout << "side " << m_side_impl.show_to_string() << std::endl;
1116  std::cout << "ft " << m_feedthrough_impl.show_to_string() << std::endl;
1117  std::cout << "solt " << m_slot_impl.show_to_string() << std::endl;
1118  std::cout << "channel " << m_channel_in_slot_impl.show_to_string() << std::endl;
1119  if ( m_this_is_slar )
1120  std::cout << "slar " << m_slar_impl.show_to_string() << std::endl;
1121  }
1122  }
1123 
1124  return(0) ;
1125 }

◆ initMessaging()

void AthMessaging::initMessaging ( ) const
privateinherited

Initialize our message level and MessageSvc.

This method should only be called once.

Definition at line 39 of file AthMessaging.cxx.

40 {
42  m_lvl = m_imsg ?
43  static_cast<MSG::Level>( m_imsg.load()->outputLevel(m_nm) ) :
44  MSG::INFO;
45 }

◆ is_alfa()

bool AtlasDetectorID::is_alfa ( Identifier  id) const
inlineinherited

Definition at line 936 of file AtlasDetectorID.h.

937 {
938  bool result = false;
939  if(is_forward(id)) {
940  result = (abs(m_lar_part_impl.unpack(id)) == m_ALFA_ID);
941  }
942  return result;
943 }

◆ is_bcm()

bool AtlasDetectorID::is_bcm ( Identifier  id) const
inlineinherited

Definition at line 946 of file AtlasDetectorID.h.

947 {
948  bool result = false;
949  if(is_forward(id)) {
950  result = (abs(m_lar_part_impl.unpack(id)) == m_BCM_ID);
951  }
952  return result;
953 }

◆ is_calo() [1/2]

bool AtlasDetectorID::is_calo ( const ExpandedIdentifier id) const
inherited

Definition at line 296 of file AtlasDetectorID.cxx.

296  {
297  return id.fields() > 0 && id[0] == m_CALO_ID;
298 }

◆ is_calo() [2/2]

bool AtlasDetectorID::is_calo ( Identifier  id) const
inlineinherited

Definition at line 702 of file AtlasDetectorID.h.

703 {
704  return (m_det_impl.unpack(id) == m_CALO_ID);
705 }

◆ is_csc() [1/2]

bool AtlasDetectorID::is_csc ( const ExpandedIdentifier id) const
inherited

Definition at line 338 of file AtlasDetectorID.cxx.

338  {
339  return id.fields() > 4 && id[0] == m_MUON_ID && id[4] == m_CSC_ID;
340 }

◆ is_csc() [2/2]

bool AtlasDetectorID::is_csc ( Identifier  id) const
inlineinherited

Definition at line 886 of file AtlasDetectorID.h.

887 {
888  bool result = false;
889  if (!is_muon(id)) return false;
890  unsigned int stationNameIndex = m_muon_station_name_impl.unpack(id);
891  unsigned int techBit = m_muon_tech_bits[stationNameIndex];
892  result = (is_muon(id) && (techBit == AtlasDetDescr::fAtlasCSC));
893  return result;
894 }

◆ is_forward()

bool AtlasDetectorID::is_forward ( Identifier  id) const
inlineinherited

Definition at line 930 of file AtlasDetectorID.h.

931 {
932  return (m_det_impl.unpack(id) == m_FWD_ID);
933 }

◆ is_H6()

bool LArOnlineID::is_H6 ( const HWIdentifier  channelId) const
inline

Definition at line 161 of file LArOnlineID.h.

163 {
164  return(
165  m_bec_impl.unpack(Id)==1 && m_side_impl.unpack(Id)==1 &&
166  (
167  (m_feedthrough_impl.unpack(Id) == 0 && (m_slot_impl.unpack(Id) == 5 ||
168  m_slot_impl.unpack(Id) == 7 ||
169  m_slot_impl.unpack(Id) == 9 ||
170  m_slot_impl.unpack(Id) == 11 ) )
171  ||
172  (m_feedthrough_impl.unpack(Id) == 1 && (m_slot_impl.unpack(Id) == 3 ||
173  m_slot_impl.unpack(Id) == 4 ||
174  m_slot_impl.unpack(Id) == 5 ||
175  m_slot_impl.unpack(Id) == 6 ) )
176  )
177  );
178 }

◆ is_H6emec()

bool LArOnlineID::is_H6emec ( const HWIdentifier  id) const
inline

Definition at line 216 of file LArOnlineID.h.

218 {
219  return(
220  m_bec_impl.unpack(Id)==1 && m_side_impl.unpack(Id)==1 &&
221  (
222  m_feedthrough_impl.unpack(Id) == 1 && m_slot_impl.unpack(Id) == 3
223  )
224  );
225 }

◆ is_H6fcal()

bool LArOnlineID::is_H6fcal ( const HWIdentifier  id) const
inline

Definition at line 192 of file LArOnlineID.h.

194 {
195  return(
196  m_bec_impl.unpack(Id)==1 && m_side_impl.unpack(Id)==1 &&
197  (
198  m_feedthrough_impl.unpack(Id) == 1 && ( m_slot_impl.unpack(Id) == 4 ||
199  m_slot_impl.unpack(Id) == 5 ||
200  m_slot_impl.unpack(Id) == 6 )
201  )
202  );
203 }

◆ is_H6FT()

bool LArOnlineID::is_H6FT ( const HWIdentifier  feedthroughId) const
inline

Definition at line 180 of file LArOnlineID.h.

182 {
183  return(
184  m_bec_impl.unpack(Id)==1 && m_side_impl.unpack(Id)==1 &&
185  (
186  m_feedthrough_impl.unpack(Id) == 0
187  ||
188  m_feedthrough_impl.unpack(Id) == 1
189  )
190  );
191 }

◆ is_H6hec()

bool LArOnlineID::is_H6hec ( const HWIdentifier  id) const
inline

Definition at line 204 of file LArOnlineID.h.

206 {
207  return(
208  m_bec_impl.unpack(Id)==1 && m_side_impl.unpack(Id)==1 &&
209  (m_feedthrough_impl.unpack(Id) == 0 && (m_slot_impl.unpack(Id) == 5 ||
210  m_slot_impl.unpack(Id) == 7 ||
211  m_slot_impl.unpack(Id) == 9 ||
212  m_slot_impl.unpack(Id) == 11 )
213  )
214  );
215 }

◆ is_H8()

bool LArOnlineID::is_H8 ( const HWIdentifier  channelId) const
inline

Definition at line 75 of file LArOnlineID.h.

77 {
78  return(
79  m_bec_impl.unpack(Id)== 0 && m_side_impl.unpack(Id)== 1 &&
80  m_feedthrough_impl.unpack(Id) < 2
81  );
82 }

◆ is_H8crack()

bool LArOnlineID::is_H8crack ( const HWIdentifier  channelId) const
inline

Definition at line 92 of file LArOnlineID.h.

94 {
95  return(
96  m_bec_impl.unpack(Id)== 0 && m_side_impl.unpack(Id)==1 &&
97  (
98  ( m_feedthrough_impl.unpack(Id)==0
99  && ( m_slot_impl.unpack(Id) == 1 || m_slot_impl.unpack(Id)== 5 ||
100  m_slot_impl.unpack(Id) == 6 || m_slot_impl.unpack(Id)== 7 ||
101  m_slot_impl.unpack(Id) == 9 || m_slot_impl.unpack(Id)== 10||
102  m_slot_impl.unpack(Id) == 12|| m_slot_impl.unpack(Id)== 13 )
103  )
104  ||
105  ( m_feedthrough_impl.unpack(Id) ==1
106  && ( m_slot_impl.unpack(Id) == 1 || m_slot_impl.unpack(Id)== 5 ||
107  m_slot_impl.unpack(Id) == 6 || m_slot_impl.unpack(Id)== 7 ||
108  m_slot_impl.unpack(Id) == 9 || m_slot_impl.unpack(Id)== 10||
109  m_slot_impl.unpack(Id) == 12 || m_slot_impl.unpack(Id)== 13 )
110  )
111  )
112  );
113 }

◆ is_H8high()

bool LArOnlineID::is_H8high ( const HWIdentifier  channelId) const
inline

Definition at line 138 of file LArOnlineID.h.

140 {
141  return(
142  m_bec_impl.unpack(Id)== 0 && m_side_impl.unpack(Id)==1 &&
143  (
144  ( m_feedthrough_impl.unpack(Id) == 0
145  && ( m_slot_impl.unpack(Id) == 1 || m_slot_impl.unpack(Id)== 6 ||
146  m_slot_impl.unpack(Id) == 7 || m_slot_impl.unpack(Id)== 8 ||
147  m_slot_impl.unpack(Id) == 10 || m_slot_impl.unpack(Id)== 13||
148  m_slot_impl.unpack(Id) == 14 )
149  )
150  ||
151  ( m_feedthrough_impl.unpack(Id) == 1
152  && ( m_slot_impl.unpack(Id) == 1 || m_slot_impl.unpack(Id)== 6 ||
153  m_slot_impl.unpack(Id) == 7 || m_slot_impl.unpack(Id)== 8 ||
154  m_slot_impl.unpack(Id) == 10 || m_slot_impl.unpack(Id)== 13||
155  m_slot_impl.unpack(Id) == 14 )
156  )
157  )
158  );
159 }

◆ is_H8low()

bool LArOnlineID::is_H8low ( const HWIdentifier  channelId) const
inline

Definition at line 115 of file LArOnlineID.h.

117 {
118  return(
119  m_bec_impl.unpack(Id)== 0 && m_side_impl.unpack(Id)==1 &&
120  (
121  ( m_feedthrough_impl.unpack(Id)==0
122  && ( m_slot_impl.unpack(Id) == 1 || m_slot_impl.unpack(Id)== 2 ||
123  m_slot_impl.unpack(Id) == 3 || m_slot_impl.unpack(Id)== 4 ||
124  m_slot_impl.unpack(Id) == 5 || m_slot_impl.unpack(Id)== 9 ||
125  m_slot_impl.unpack(Id) == 11|| m_slot_impl.unpack(Id)== 12 )
126  )
127  ||
128  ( m_feedthrough_impl.unpack(Id) ==1
129  && ( m_slot_impl.unpack(Id) == 1 || m_slot_impl.unpack(Id)== 2 ||
130  m_slot_impl.unpack(Id) == 3 || m_slot_impl.unpack(Id)== 4 ||
131  m_slot_impl.unpack(Id) == 5 || m_slot_impl.unpack(Id)== 9 ||
132  m_slot_impl.unpack(Id) == 11 || m_slot_impl.unpack(Id)== 12 )
133  )
134  )
135  );
136 }

◆ is_H8onlineOnly()

bool LArOnlineID::is_H8onlineOnly ( const HWIdentifier  id) const
inline

Definition at line 83 of file LArOnlineID.h.

85 {
86  return(
87  m_bec_impl.unpack(Id)== 0 && m_side_impl.unpack(Id)==1 &&
88  ( m_feedthrough_impl.unpack(Id)==0 || m_feedthrough_impl.unpack(Id) == 1 )
89  && m_slot_impl.unpack(Id) == 14 && m_channel_in_slot_impl.unpack(Id) > 63
90  );
91 }

◆ is_hgtd() [1/2]

bool AtlasDetectorID::is_hgtd ( const ExpandedIdentifier id) const
inherited

Definition at line 309 of file AtlasDetectorID.cxx.

309  {
310  return is_indet(id) && id.fields() > 1 && id[1] == m_HGTD_ID;
311 }

◆ is_hgtd() [2/2]

bool AtlasDetectorID::is_hgtd ( Identifier  id) const
inlineinherited

Definition at line 789 of file AtlasDetectorID.h.

790 {
791  bool result = false;
792  // Must check is_pixel to allow for special bits
793  // (don't need this check for 64-bit identifier, but leave it in for now)
794  if(is_indet(id) && !is_pixel(id)) {
796  }
797  return result;
798 }

◆ is_indet() [1/2]

bool AtlasDetectorID::is_indet ( const ExpandedIdentifier id) const
inherited

Definition at line 284 of file AtlasDetectorID.cxx.

284  {
285  return id.fields() > 0 && id[0] == m_INDET_ID;
286 }

◆ is_indet() [2/2]

bool AtlasDetectorID::is_indet ( Identifier  id) const
inlineinherited

Definition at line 678 of file AtlasDetectorID.h.

679 {
680  return (m_det_impl.unpack(id) == m_INDET_ID);
681 }

◆ is_lar() [1/2]

bool AtlasDetectorID::is_lar ( const ExpandedIdentifier id) const
inherited

Definition at line 287 of file AtlasDetectorID.cxx.

287  {
288  return id.fields() > 0 && id[0] == m_LAR_ID;
289 }

◆ is_lar() [2/2]

bool AtlasDetectorID::is_lar ( Identifier  id) const
inlineinherited

Definition at line 684 of file AtlasDetectorID.h.

685 {
686  return (m_det_impl.unpack(id) == m_LAR_ID);
687 }

◆ is_lar_dm()

bool AtlasDetectorID::is_lar_dm ( Identifier  id) const
inlineinherited

LAr/Tile dead material:

Definition at line 731 of file AtlasDetectorID.h.

732 {
733  bool result = false;
734  if (is_calo(id)) {
735  int temp = m_calo_side_impl.unpack(id);
736  result = (m_lar_dm_field.match(temp));
737  }
738  return result;
739 }

◆ is_lar_em() [1/2]

bool AtlasDetectorID::is_lar_em ( const ExpandedIdentifier id) const
inherited

Definition at line 319 of file AtlasDetectorID.cxx.

319  {
320  return is_lar(id) && id.fields() > 1 && std::abs(id[1]) == m_LAR_EM_ID;
321 }

◆ is_lar_em() [2/2]

bool AtlasDetectorID::is_lar_em ( Identifier  id) const
inlineinherited

Definition at line 813 of file AtlasDetectorID.h.

814 {
815  bool result = false;
816  if(is_lar(id)) {
817  result = (abs(m_lar_part_impl.unpack(id)) == m_LAR_EM_ID);
818  }
819  return result;
820 }

◆ is_lar_fcal() [1/2]

bool AtlasDetectorID::is_lar_fcal ( const ExpandedIdentifier id) const
inherited

Definition at line 326 of file AtlasDetectorID.cxx.

326  {
327  return is_lar(id) && id.fields() > 1 && std::abs(id[1]) == m_LAR_FCAL_ID;
328 }

◆ is_lar_fcal() [2/2]

bool AtlasDetectorID::is_lar_fcal ( Identifier  id) const
inlineinherited

Definition at line 834 of file AtlasDetectorID.h.

835 {
836  bool result = false;
837  if(is_lar(id)) {
838  result = (abs(m_lar_part_impl.unpack(id)) == m_LAR_FCAL_ID);
839  }
840  return result;
841 }

◆ is_lar_hec() [1/2]

bool AtlasDetectorID::is_lar_hec ( const ExpandedIdentifier id) const
inherited

Definition at line 322 of file AtlasDetectorID.cxx.

322  {
323  return is_lar(id) && id.fields() > 1 && std::abs(id[1]) == m_LAR_HEC_ID;
324 }

◆ is_lar_hec() [2/2]

bool AtlasDetectorID::is_lar_hec ( Identifier  id) const
inlineinherited

Definition at line 824 of file AtlasDetectorID.h.

825 {
826  bool result = false;
827  if(is_lar(id)) {
828  result = (abs(m_lar_part_impl.unpack(id)) == m_LAR_HEC_ID);
829  }
830  return result;
831 }

◆ is_lar_minifcal() [1/2]

bool AtlasDetectorID::is_lar_minifcal ( const ExpandedIdentifier id) const
inherited

Definition at line 330 of file AtlasDetectorID.cxx.

330  {
331  return is_lar_fcal(id) && id.fields() > 3 &&std::abs(id[3]) == 0;
332 }

◆ is_lar_minifcal() [2/2]

bool AtlasDetectorID::is_lar_minifcal ( Identifier  id) const
inlineinherited

Definition at line 844 of file AtlasDetectorID.h.

845 {
846  bool result = false;
847  if(is_lar_fcal(id)) {
848  result = (m_lar_fcal_module_impl.unpack(id) == 0);
849  }
850  return result;
851 }

◆ is_lucid()

bool AtlasDetectorID::is_lucid ( Identifier  id) const
inlineinherited

Definition at line 956 of file AtlasDetectorID.h.

957 {
958  bool result = false;
959  if(is_forward(id)) {
960  result = (abs(m_lar_part_impl.unpack(id)) == m_LUCID_ID);
961  }
962  return result;
963 }

◆ is_lumi() [1/2]

bool AtlasDetectorID::is_lumi ( const ExpandedIdentifier id) const
inherited

Definition at line 312 of file AtlasDetectorID.cxx.

312  {
313  return is_indet(id) && id.fields() > 1 && id[1] == m_LUMI_ID;
314 }

◆ is_lumi() [2/2]

bool AtlasDetectorID::is_lumi ( Identifier  id) const
inlineinherited

Definition at line 801 of file AtlasDetectorID.h.

802 {
803  bool result = false;
804  // Must check is_pixel to allow for special bits
805  // (don't need this check for 64-bit identifier, but leave it in for now)
806  if(is_indet(id) && !is_pixel(id)) {
808  }
809  return result;
810 }

◆ is_lvl1_online()

bool AtlasDetectorID::is_lvl1_online ( Identifier  id) const
inlineinherited

Definition at line 719 of file AtlasDetectorID.h.

720 {
721  bool result = false;
722  if (is_calo(id)) {
723  int temp = m_calo_side_impl.unpack(id);
724  result = (m_lvl1_onl_field.match(temp));
725  }
726  return result;
727 }

◆ is_lvl1_trig_towers()

bool AtlasDetectorID::is_lvl1_trig_towers ( Identifier  id) const
inlineinherited

Definition at line 708 of file AtlasDetectorID.h.

709 {
710  bool result = false;
711  if (is_calo(id)) {
712  int temp = m_calo_side_impl.unpack(id);
713  result = (m_lvl1_field.match(temp));
714  }
715  return result;
716 }

◆ is_mdt() [1/2]

bool AtlasDetectorID::is_mdt ( const ExpandedIdentifier id) const
inherited

Definition at line 334 of file AtlasDetectorID.cxx.

334  {
335  return id.fields() > 4 && id[0] == m_MUON_ID && id[4] == m_MDT_ID;
336 }

◆ is_mdt() [2/2]

bool AtlasDetectorID::is_mdt ( Identifier  id) const
inlineinherited

Definition at line 854 of file AtlasDetectorID.h.

855 {
856  bool result = false;
857  if (!is_muon(id)) return false;
858  unsigned int stationNameIndex = m_muon_station_name_impl.unpack(id);
859  unsigned int techBit = m_muon_tech_bits[stationNameIndex];
860  // MDT and RPC can only be destinguished by the additional bit in the ID
861  // since the station names are ambiguous
862  if (is_muon(id) && ((techBit == AtlasDetDescr::fAtlasMDT)
863  || (techBit == AtlasDetDescr::fAtlasRPC))) {
865  }
866  return result;
867 }

◆ is_mm() [1/2]

bool AtlasDetectorID::is_mm ( const ExpandedIdentifier id) const
inherited

Definition at line 354 of file AtlasDetectorID.cxx.

354  {
355  return id.fields() > 4 && id[0] == m_MUON_ID && id[4] == m_MM_ID;
356 }

◆ is_mm() [2/2]

bool AtlasDetectorID::is_mm ( Identifier  id) const
inlineinherited

Definition at line 908 of file AtlasDetectorID.h.

909 {
910  bool result = false;
911  if (!is_muon(id)) return false;
912  unsigned int stationNameIndex = m_muon_station_name_impl.unpack(id);
913  unsigned int techBit = m_muon_tech_bits[stationNameIndex];
914  result = (is_muon(id) && (techBit == AtlasDetDescr::fAtlasMM));
915  return result;
916 }

◆ is_muon() [1/2]

bool AtlasDetectorID::is_muon ( const ExpandedIdentifier id) const
inherited

Definition at line 293 of file AtlasDetectorID.cxx.

293  {
294  return id.fields() > 0 && id[0] == m_MUON_ID;
295 }

◆ is_muon() [2/2]

bool AtlasDetectorID::is_muon ( Identifier  id) const
inlineinherited

Definition at line 696 of file AtlasDetectorID.h.

697 {
698  return (m_det_impl.unpack(id) == m_MUON_ID);
699 }

◆ is_pixel() [1/2]

bool AtlasDetectorID::is_pixel ( const ExpandedIdentifier id) const
inherited

Definition at line 299 of file AtlasDetectorID.cxx.

299  {
300  return is_indet(id) && id.fields() > 1 && id[1] == m_PIXEL_ID;
301 }

◆ is_pixel() [2/2]

bool AtlasDetectorID::is_pixel ( Identifier  id) const
inlineinherited

Definition at line 755 of file AtlasDetectorID.h.

756 {
757  bool result = false;
758  if(is_indet(id)) {
760  }
761  return result;
762 }

◆ is_plr() [1/2]

bool AtlasDetectorID::is_plr ( const ExpandedIdentifier id) const
inherited

Definition at line 315 of file AtlasDetectorID.cxx.

315  {
316  return is_lumi(id) && id.fields() > 2 && id[2] == m_LUMI_PLR_ID;
317 }

◆ is_plr() [2/2]

bool AtlasDetectorID::is_plr ( Identifier  id) const
inherited

◆ is_rpc() [1/2]

bool AtlasDetectorID::is_rpc ( const ExpandedIdentifier id) const
inherited

Definition at line 342 of file AtlasDetectorID.cxx.

342  {
343  return id.fields() > 4 && id[0] == m_MUON_ID && id[4] == m_RPC_ID;
344 }

◆ is_rpc() [2/2]

bool AtlasDetectorID::is_rpc ( Identifier  id) const
inlineinherited

Definition at line 870 of file AtlasDetectorID.h.

871 {
872  bool result = false;
873  if (!is_muon(id)) return false;
874  unsigned int stationNameIndex = m_muon_station_name_impl.unpack(id);
875  unsigned int techBit = m_muon_tech_bits[stationNameIndex];
876  // MDT and RPC can only be destinguished by the additional bit in the ID
877  // since the station names are ambiguous
878  if (is_muon(id) && ((techBit == AtlasDetDescr::fAtlasMDT)
879  || (techBit == AtlasDetDescr::fAtlasRPC))) {
881  }
882  return result;
883 }

◆ is_sct() [1/2]

bool AtlasDetectorID::is_sct ( const ExpandedIdentifier id) const
inherited

Definition at line 303 of file AtlasDetectorID.cxx.

303  {
304  return is_indet(id) && id.fields() > 1 && id[1] == m_SCT_ID;
305 }

◆ is_sct() [2/2]

bool AtlasDetectorID::is_sct ( Identifier  id) const
inlineinherited

Definition at line 765 of file AtlasDetectorID.h.

766 {
767  bool result = false;
768  // Must check is_pixel to allow for special bits
769  // (don't need this check for 64-bit identifier, but leave it in for now)
770  if(is_indet(id) && !is_pixel(id)) {
772  }
773  return result;
774 }

◆ is_slar()

int LArOnlineID_Base::is_slar ( const HWIdentifier  id) const
inherited

Return whether the channel is in slar or not is_ slar = [0,1] in all FEB.

Definition at line 1973 of file LArOnlineID_Base.cxx.

1975 {
1976  return (m_slar_impl.unpack(id));
1977 }

◆ is_stgc() [1/2]

bool AtlasDetectorID::is_stgc ( const ExpandedIdentifier id) const
inherited

Definition at line 350 of file AtlasDetectorID.cxx.

350  {
351  return id.fields() > 4 && id[0] == m_MUON_ID && id[4] == m_STGC_ID;
352 }

◆ is_stgc() [2/2]

bool AtlasDetectorID::is_stgc ( Identifier  id) const
inlineinherited

Definition at line 919 of file AtlasDetectorID.h.

920 {
921  bool result = false;
922  if (!is_muon(id)) return false;
923  unsigned int stationNameIndex = m_muon_station_name_impl.unpack(id);
924  unsigned int techBit = m_muon_tech_bits[stationNameIndex];
925  result = (is_muon(id) && (techBit == AtlasDetDescr::fAtlasSTGC));
926  return result;
927 }

◆ is_tgc() [1/2]

bool AtlasDetectorID::is_tgc ( const ExpandedIdentifier id) const
inherited

Definition at line 346 of file AtlasDetectorID.cxx.

346  {
347  return id.fields() > 4 && id[0] == m_MUON_ID && id[4] == m_TGC_ID;
348 }

◆ is_tgc() [2/2]

bool AtlasDetectorID::is_tgc ( Identifier  id) const
inlineinherited

Definition at line 897 of file AtlasDetectorID.h.

898 {
899  bool result = false;
900  if (!is_muon(id)) return false;
901  unsigned int stationNameIndex = m_muon_station_name_impl.unpack(id);
902  unsigned int techBit = m_muon_tech_bits[stationNameIndex];
903  result = (is_muon(id) && (techBit == AtlasDetDescr::fAtlasTGC));
904  return result;
905 }

◆ is_tile() [1/2]

bool AtlasDetectorID::is_tile ( const ExpandedIdentifier id) const
inherited

Definition at line 290 of file AtlasDetectorID.cxx.

290  {
291  return id.fields() > 0 && id[0] == m_TILE_ID;
292 }

◆ is_tile() [2/2]

bool AtlasDetectorID::is_tile ( Identifier  id) const
inlineinherited

Definition at line 690 of file AtlasDetectorID.h.

691 {
692  return (m_det_impl.unpack(id) == m_TILE_ID);
693 }

◆ is_tile_dm()

bool AtlasDetectorID::is_tile_dm ( Identifier  id) const
inlineinherited

Definition at line 743 of file AtlasDetectorID.h.

744 {
745  bool result = false;
746  if (is_calo(id)) {
747  int temp = m_calo_side_impl.unpack(id);
748  result = (m_tile_dm_field.match(temp));
749  }
750  return result;
751 }

◆ is_trt() [1/2]

bool AtlasDetectorID::is_trt ( const ExpandedIdentifier id) const
inherited

Definition at line 306 of file AtlasDetectorID.cxx.

306  {
307  return is_indet(id) && id.fields() > 1;
308 }

◆ is_trt() [2/2]

bool AtlasDetectorID::is_trt ( Identifier  id) const
inlineinherited

Definition at line 777 of file AtlasDetectorID.h.

778 {
779  bool result = false;
780  // Must check is_pixel to allow for special bits
781  // (don't need this check for 64-bit identifier, but leave it in for now)
782  if(is_indet(id) && !is_pixel(id)) {
784  }
785  return result;
786 }

◆ is_zdc()

bool AtlasDetectorID::is_zdc ( Identifier  id) const
inlineinherited

Definition at line 966 of file AtlasDetectorID.h.

967 {
968  bool result = false;
969  if(is_forward(id)) {
970  result = (abs(m_lar_part_impl.unpack(id)) == m_ZDC_ID);
971  }
972  return result;
973 }

◆ isCalibration()

bool LArOnlineID_Base::isCalibration ( const HWIdentifier  id) const
inherited

Definition at line 1787 of file LArOnlineID_Base.cxx.

1789 {
1790  int bec= barrel_ec(id);
1791  int ft = feedthrough(id);
1792  int sl = slot(id);
1793  return ( (bec==0 && sl==15)
1794  ||
1795  ( bec==1 && sl==15 &&
1796  (ft==0 ||
1797  ft==1 ||
1798  ft==4 ||
1799  ft==5 ||
1800  ft==7 ||
1801  ft==8 ||
1802  ft==11 ||
1803  ft==12 ||
1804  ft==13 ||
1805  ft==14 ||
1806  ft==17 ||
1807  ft==18 ||
1808  ft==19 ||
1809  ft==20 ||
1810  ft==23 ||
1811  ft==24 )
1812  )
1813  ||
1814  ( barrel_ec(id)==1 &&
1815  (sl==3 || sl==4 || sl==12) &&
1816  (ft==3 ||
1817  ft==10 ||
1818  ft==16 ||
1819  ft==22 )
1820  )
1821  ||
1822  ( barrel_ec(id)==1 && sl==16 )
1823  ||
1824  ( barrel_ec(id)==1 && ft==27 && sl==11 )
1825  );
1826 }

◆ isEmBarrelOnline()

bool LArOnlineID_Base::isEmBarrelOnline ( const HWIdentifier  id) const
inherited

Definition at line 1720 of file LArOnlineID_Base.cxx.

1722 {/* redefined to isEMBchannel() */
1723  return (isEMBchannel(id));
1724 }

◆ isEMBchannel()

bool LArOnlineID_Base::isEMBchannel ( const HWIdentifier  id) const
inherited
Returns
true if the Id belongs to a subsystem

Definition at line 1652 of file LArOnlineID_Base.cxx.

1654 {
1655  return (barrel_ec(id)==0);
1656 }

◆ isEMBPS()

bool LArOnlineID_Base::isEMBPS ( const HWIdentifier  id) const
inherited

Definition at line 1665 of file LArOnlineID_Base.cxx.

1667 {
1668  int bec= barrel_ec(id);
1669  int sl = slot(id);
1670  return (
1671  bec == 0 && sl == 1
1672  );
1673 }

◆ isEMECchannel()

bool LArOnlineID::isEMECchannel ( const HWIdentifier  id) const
finaloverridevirtual

Implements LArOnlineID_Base.

Definition at line 763 of file LArOnlineID.cxx.

765 {/* redefinition with isEMECIW and isEMECOW */
766  return (LArOnlineID::isEMECOW(id) || LArOnlineID::isEMECIW(id));
767 }

◆ isEMECinHECchannel()

bool LArOnlineID_Base::isEMECinHECchannel ( const HWIdentifier  id) const
inherited

Definition at line 1877 of file LArOnlineID_Base.cxx.

1879 {/* re-definition with isEMECIW */
1880  return isEMECIW(id);
1881 }

◆ isEMECIW()

bool LArOnlineID::isEMECIW ( const HWIdentifier  id) const
finaloverridevirtual

Implements LArOnlineID_Base.

Definition at line 734 of file LArOnlineID.cxx.

734  {
735  /*======================================================*/
736  //
737  int bec= barrel_ec(id);
738  int ft = feedthrough(id);
739  int sl = slot(id);
740  return (bec==1 && sl<3 && (ft==3 || ft==10 ||
741  ft==16 || ft==22));
742 }

◆ isEMECOW()

bool LArOnlineID::isEMECOW ( const HWIdentifier  id) const
finaloverridevirtual

Implements LArOnlineID_Base.

Definition at line 744 of file LArOnlineID.cxx.

744  {
745  /*======================================================*/
746  //
747  int bec= barrel_ec(id);
748  int ft = feedthrough(id);
749  return (bec==1 &&
750  (ft==0 || ft==1 ||
751  ft==2 || ft==4 ||
752  ft==5 || ft==7 ||
753  ft==8 || ft==9 ||
754  ft==11|| ft==12||
755  ft==13|| ft==14||
756  ft==15|| ft==17||
757  ft==18|| ft==19||
758  ft==20|| ft==21||
759  ft==23|| ft==24 )
760  );
761 }

◆ isEMECPS()

bool LArOnlineID_Base::isEMECPS ( const HWIdentifier  id) const
inherited

Definition at line 1675 of file LArOnlineID_Base.cxx.

1677 {/* redefinition (bug fix) */
1678  return (isEMECOW(id) && slot(id)==1);
1679 }

◆ isEmEndcapOnline()

bool LArOnlineID_Base::isEmEndcapOnline ( const HWIdentifier  id) const
inherited

Definition at line 1737 of file LArOnlineID_Base.cxx.

1739 {/* redefinition */
1740  return isEMECchannel(id);
1741 }

◆ isEmEndcapSpecialOnline()

bool LArOnlineID_Base::isEmEndcapSpecialOnline ( const HWIdentifier  id) const
inherited

Definition at line 1775 of file LArOnlineID_Base.cxx.

1777 {
1778  int ft = feedthrough(id);
1779  return ( barrel_ec(id)==1 &&
1780  (ft==2 ||
1781  ft==9 ||
1782  ft==15 ||
1783  ft==21 )
1784  );
1785 }

◆ isEmEndcapStandardOnline()

bool LArOnlineID_Base::isEmEndcapStandardOnline ( const HWIdentifier  id) const
inherited

Definition at line 1752 of file LArOnlineID_Base.cxx.

1754 {
1755  int ft = feedthrough(id);
1756  return ( barrel_ec(id)==1 &&
1757  (ft==0 ||
1758  ft==1 ||
1759  ft==4 ||
1760  ft==5 ||
1761  ft==7 ||
1762  ft==8 ||
1763  ft==11 ||
1764  ft==12 ||
1765  ft==13 ||
1766  ft==14 ||
1767  ft==17 ||
1768  ft==18 ||
1769  ft==19 ||
1770  ft==20 ||
1771  ft==23 ||
1772  ft==24)
1773  );
1774 }

◆ isEndcapOnline()

bool LArOnlineID_Base::isEndcapOnline ( const HWIdentifier  id) const
inherited

Definition at line 1726 of file LArOnlineID_Base.cxx.

1728 {
1729  return (barrel_ec(id)==1);
1730 }

◆ isFCALchannel()

bool LArOnlineID_Base::isFCALchannel ( const HWIdentifier  id) const
inherited

Definition at line 1657 of file LArOnlineID_Base.cxx.

1659 {
1660  return ( barrel_ec(id)==1 && feedthrough(id) == 6 );
1661 }

◆ isFcalOnline()

bool LArOnlineID_Base::isFcalOnline ( const HWIdentifier  id) const
inherited

Definition at line 1732 of file LArOnlineID_Base.cxx.

1734 {/* redefinition (was redundant with isFCALchannel) */
1735  return isFCALchannel(id);
1736 }

◆ isHECchannel()

bool LArOnlineID::isHECchannel ( const HWIdentifier  id) const
finaloverridevirtual

Implements LArOnlineID_Base.

Definition at line 723 of file LArOnlineID.cxx.

725 {
726  int ft = feedthrough(id);
727  return ( barrel_ec(id)==1
728  &&
729  ( ft==3 || ft==10 || ft==16 || ft==22 )
730  &&
731  slot(id) > 2 );
732 }

◆ isHecOnline()

bool LArOnlineID_Base::isHecOnline ( const HWIdentifier  id) const
inherited

Definition at line 1837 of file LArOnlineID_Base.cxx.

1839 {
1840  /* Must be used with CARE !
1841  * This method returns true for all slots/channel in HEC crates,
1842  * thus including the EMEC slot/channels that are present
1843  * in slot 1 and slot 2 of HEC crates !
1844  * To access specifically EMEC in HEC slot/channel, you then
1845  * have to use isEMECinHECchannel()
1846  */
1847  int ft = feedthrough(id);
1848  return (
1849  //(slot(id)!=1 && slot(id)!= 2) &&
1850  barrel_ec(id)==1 &&
1851  (ft==3 ||
1852  ft==10 ||
1853  ft==16 ||
1854  ft==22 )
1855  );
1856 }

◆ isHecOnlineFebId()

bool LArOnlineID_Base::isHecOnlineFebId ( const HWIdentifier  febId) const
inherited

Definition at line 1858 of file LArOnlineID_Base.cxx.

1860 {
1861  /* Must be used with CARE !
1862  * This method returns true for all slots/channel in HEC crates,
1863  * thus including the EMEC slot/channels that are present
1864  * in slot 1 and slot 2 of HEC crates !
1865  * To access specifically EMEC in HEC slot/channel, you then
1866  * have to use isEMECinHECchannel()
1867  */
1868  int ft = feedthrough(febId);
1869  return ( barrel_ec(febId)==1 &&
1870  (ft==3 ||
1871  ft==10 ||
1872  ft==16 ||
1873  ft==22 )
1874  );
1875 }

◆ isLArCalibOnline()

bool LArOnlineID::isLArCalibOnline ( const HWIdentifier  id) const
private

◆ isNotWarmCableConnected()

bool LArOnlineID_Base::isNotWarmCableConnected ( const HWIdentifier  id) const
inherited

Definition at line 1688 of file LArOnlineID_Base.cxx.

1690 {
1691  int ft = feedthrough(id);
1692  int sl = slot(id);
1693  int ch = channel(id);
1694  return (
1695  (
1696  isEMBchannel(id) &&
1697  ( (-1 < ft && ft < 32) &&
1698  ( sl == 14 ) &&
1699  ( 63 < ch && ch < 128 )
1700  )
1701  )
1702  ||
1703  (
1704  isEMECchannel(id) && sl == 1 &&
1705  (ft == 2 || ft == 9 || ft == 15 || ft == 21 ) &&
1706  (63 < ch && ch < 128)
1707  )
1708  );
1709 }

◆ isPS()

bool LArOnlineID_Base::isPS ( const HWIdentifier  id) const
inherited

Definition at line 1681 of file LArOnlineID_Base.cxx.

1683 {/* redefinition with isEMBPS and isEMECPS */
1684  return ( isEMBPS(id) || isEMECPS(id));
1685 }

◆ isValidId()

bool LArOnlineID_Base::isValidId ( const HWIdentifier  id) const
inherited

Returns false if the identifier is not a LAr-online id or any of the sub-fields is out of range.


Definition at line 1333 of file LArOnlineID_Base.cxx.

1333  {
1334 
1335 
1336  const int larid=m_lar_impl.unpack(id);
1337  const int laronlineid=m_laronline_impl.unpack(id);
1338  if (larid!=lar_field_value()) return false;
1339 
1340  if (laronlineid!=s_lar_online_field_value && laronlineid!=s_lar_onlineCalib_field_value) return false;
1341 
1342  const int channel=m_channel_in_slot_impl.unpack(id);
1343  if (channel<0 || channel>128) return false;
1344 
1345  const int bec=m_bec_impl.unpack(id);
1346  const int ft=m_feedthrough_impl.unpack(id);
1347  const int slot=m_slot_impl.unpack(id);
1348  if (slot<1) return false;
1349  if (ft<0) return false;
1350  if (bec==0) { // Barrel case
1351  if (ft>31) return false;
1352  if (slot>14) return false;
1353  }
1354  else { //Endcap case
1355  if (ft>27) return false;
1356  if (ft==2 || ft==9 || ft==15 || ft==21){ //Special crate
1357  if (slot >15) return false;
1358  }
1359  else if (ft==6) { //FCAL
1360  if (slot>15) return false;
1361  }
1362  else if (ft>24 && ft<28) { //sFCAL
1363  if (slot>10) return false;
1364  }
1365  else if (ft==3 || ft==10 || ft==16 || ft==22) { //HEC
1366  if (slot==3 || slot==4 || slot>10) return false;
1367  }
1368  else //standard crate
1369  if (slot>13) return false;
1370  }//end endcap
1371  return true;
1372 }

◆ lar()

Identifier AtlasDetectorID::lar ( void  ) const
inherited

Definition at line 62 of file AtlasDetectorID.cxx.

62  {
63  Identifier result{0};
64  // Pack field
66  return result;
67 }

◆ lar_dm()

Identifier AtlasDetectorID::lar_dm ( void  ) const
inherited

Definition at line 146 of file AtlasDetectorID.cxx.

146  {
147  Identifier result{0};
148  // Pack field
151  return result;
152 }

◆ lar_em()

Identifier AtlasDetectorID::lar_em ( void  ) const
inherited

Definition at line 130 of file AtlasDetectorID.cxx.

130  {
131  Identifier result{0};
132  // Pack field
135  return result;
136 }

◆ lar_em_exp()

ExpandedIdentifier AtlasDetectorID::lar_em_exp ( void  ) const
inlineprotectedinherited

LAr.

Definition at line 557 of file AtlasDetectorID.h.

558 {
560  return (result << m_LAR_EM_ID);
561 }

◆ lar_em_field_value()

int AtlasDetectorID::lar_em_field_value ( ) const
inlineprotectedinherited

Definition at line 639 of file AtlasDetectorID.h.

639 {return (m_LAR_EM_ID);}

◆ lar_exp()

ExpandedIdentifier AtlasDetectorID::lar_exp ( void  ) const
inlineprotectedinherited

Definition at line 487 of file AtlasDetectorID.h.

488 {
490  return (result << m_LAR_ID);
491 }

◆ lar_fcal()

Identifier AtlasDetectorID::lar_fcal ( void  ) const
inherited

Definition at line 170 of file AtlasDetectorID.cxx.

170  {
171  Identifier result{0};
172  // Pack field
175  return result;
176 }

◆ lar_fcal_exp()

ExpandedIdentifier AtlasDetectorID::lar_fcal_exp ( void  ) const
inlineprotectedinherited

Definition at line 571 of file AtlasDetectorID.h.

572 {
574  return (result << m_LAR_FCAL_ID);
575 }

◆ lar_fcal_field_value()

int AtlasDetectorID::lar_fcal_field_value ( ) const
inlineprotectedinherited

Definition at line 645 of file AtlasDetectorID.h.

645 {return (m_LAR_FCAL_ID);}

◆ lar_field_value()

int AtlasDetectorID::lar_field_value ( ) const
inlineprotectedinherited

Definition at line 609 of file AtlasDetectorID.h.

609 {return (m_LAR_ID);}

◆ lar_hec()

Identifier AtlasDetectorID::lar_hec ( void  ) const
inherited

Definition at line 162 of file AtlasDetectorID.cxx.

162  {
163  Identifier result{0};
164  // Pack field
167  return result;
168 }

◆ lar_hec_exp()

ExpandedIdentifier AtlasDetectorID::lar_hec_exp ( void  ) const
inlineprotectedinherited

Definition at line 564 of file AtlasDetectorID.h.

565 {
567  return (result << m_LAR_HEC_ID);
568 }

◆ lar_hec_field_value()

int AtlasDetectorID::lar_hec_field_value ( ) const
inlineprotectedinherited

Definition at line 642 of file AtlasDetectorID.h.

642 {return (m_LAR_HEC_ID);}

◆ lar_lvl1()

Identifier AtlasDetectorID::lar_lvl1 ( void  ) const
inherited

Definition at line 138 of file AtlasDetectorID.cxx.

138  {
139  Identifier result{0};
140  // Pack field
143  return result;
144 }

◆ lucid_exp()

ExpandedIdentifier AtlasDetectorID::lucid_exp ( void  ) const
inlineprotectedinherited

Definition at line 592 of file AtlasDetectorID.h.

593 {
595  return (result << m_LUCID_ID);
596 }

◆ lucid_field_value()

int AtlasDetectorID::lucid_field_value ( ) const
inlineprotectedinherited

Definition at line 672 of file AtlasDetectorID.h.

672 {return (m_LUCID_ID);}

◆ lumi()

Identifier AtlasDetectorID::lumi ( void  ) const
inherited

Definition at line 122 of file AtlasDetectorID.cxx.

122  {
123  Identifier result{0};
124  // Pack field
127  return result;
128 }

◆ lumi_exp()

ExpandedIdentifier AtlasDetectorID::lumi_exp ( void  ) const
inlineprotectedinherited

Definition at line 550 of file AtlasDetectorID.h.

551 {
553  return (result << m_LUMI_ID);
554 }

◆ lumi_field_value()

int AtlasDetectorID::lumi_field_value ( ) const
inlineprotectedinherited

Definition at line 633 of file AtlasDetectorID.h.

633 {return (m_LUMI_ID);}

◆ mdt()

Identifier AtlasDetectorID::mdt ( void  ) const
inherited

Definition at line 37 of file AtlasDetectorID.cxx.

37  {
38  return Identifier{};
39 }

◆ mdt_field_value()

int AtlasDetectorID::mdt_field_value ( ) const
inlineprotectedinherited

Definition at line 648 of file AtlasDetectorID.h.

648 {return (m_MDT_ID);}

◆ mm()

Identifier AtlasDetectorID::mm ( void  ) const
inherited

Definition at line 52 of file AtlasDetectorID.cxx.

52  {
53  return Identifier{};
54 }

◆ mm_field_value()

int AtlasDetectorID::mm_field_value ( ) const
inlineprotectedinherited

Definition at line 663 of file AtlasDetectorID.h.

663 {return (m_MM_ID);}

◆ msg() [1/2]

MsgStream & AthMessaging::msg ( ) const
inlineinherited

The standard message stream.

Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.

Definition at line 164 of file AthMessaging.h.

165 {
166  MsgStream* ms = m_msg_tls.get();
167  if (!ms) {
168  if (!m_initialized.test_and_set()) initMessaging();
169  ms = new MsgStream(m_imsg,m_nm);
170  m_msg_tls.reset( ms );
171  }
172 
173  ms->setLevel (m_lvl);
174  return *ms;
175 }

◆ msg() [2/2]

MsgStream & AthMessaging::msg ( const MSG::Level  lvl) const
inlineinherited

The standard message stream.

Returns a reference to the default message stream May not be invoked before sysInitialize() has been invoked.

Definition at line 179 of file AthMessaging.h.

180 { return msg() << lvl; }

◆ msgLvl()

bool AthMessaging::msgLvl ( const MSG::Level  lvl) const
inlineinherited

Test the output level.

Parameters
lvlThe message level to test against
Returns
boolean Indicating if messages at given level will be printed
Return values
trueMessages at level "lvl" will be printed

Definition at line 151 of file AthMessaging.h.

152 {
153  if (!m_initialized.test_and_set()) initMessaging();
154  if (m_lvl <= lvl) {
155  msg() << lvl;
156  return true;
157  } else {
158  return false;
159  }
160 }

◆ muon()

Identifier AtlasDetectorID::muon ( void  ) const
inherited

Definition at line 76 of file AtlasDetectorID.cxx.

76  {
77  Identifier result{0};
78  // Pack field
80  return result;
81 }

◆ muon_exp()

ExpandedIdentifier AtlasDetectorID::muon_exp ( void  ) const
inlineprotectedinherited

Definition at line 501 of file AtlasDetectorID.h.

502 {
504  return (result << m_MUON_ID);
505 }

◆ muon_field_value()

int AtlasDetectorID::muon_field_value ( ) const
inlineprotectedinherited

Definition at line 615 of file AtlasDetectorID.h.

615 {return (m_MUON_ID);}

◆ pixel()

Identifier AtlasDetectorID::pixel ( void  ) const
inherited

Definition at line 90 of file AtlasDetectorID.cxx.

90  {
91  Identifier result{0};
92  // Pack field
95  return result;
96 }

◆ pixel_exp()

ExpandedIdentifier AtlasDetectorID::pixel_exp ( void  ) const
inlineprotectedinherited

Inner Detector:

Definition at line 522 of file AtlasDetectorID.h.

523 {
525  return (result << m_PIXEL_ID);
526 }

◆ pixel_field_value()

int AtlasDetectorID::pixel_field_value ( ) const
inlineprotectedinherited

Definition at line 621 of file AtlasDetectorID.h.

621 {return (m_PIXEL_ID);}

◆ plr_field_value()

int AtlasDetectorID::plr_field_value ( ) const
inlineprotectedinherited

Definition at line 636 of file AtlasDetectorID.h.

636 {return (m_LUMI_PLR_ID);}

◆ pos_neg()

int LArOnlineID_Base::pos_neg ( const HWIdentifier  id) const
inherited

Return the side of a hardware cell identifier
pos_neg = [0,1] positive-side or negative-side Barrel/Endcap.

Definition at line 1954 of file LArOnlineID_Base.cxx.

1956 {
1957  return (m_side_impl.unpack(id));
1958 }

◆ print()

void AtlasDetectorID::print ( Identifier  id,
const IdContext context = 0 
) const
inherited

Expanded print out of any identifier.

Definition at line 423 of file AtlasDetectorID.cxx.

423  {
424  ATH_MSG_INFO(print_to_string(id, context));
425 }

◆ print_to_string()

std::string AtlasDetectorID::print_to_string ( Identifier  id,
const IdContext context = 0 
) const
inherited

or provide the printout in string form

Definition at line 427 of file AtlasDetectorID.cxx.

428  {
429  // Print out for any Atlas identifier
430  std::string result;
432 
433  // Do a generic printout of identifier from dictionary
434  unsigned int max_index = (context) ? context->end_index() : 999;
435 
436  // Find the dictionary to use:
437  IdDictDictionary *dict{nullptr};
438  ExpandedIdentifier expId;
439  ExpandedIdentifier prefix; // default is null prefix
440  Identifier compact = id;
441 
442  if (is_indet(id)) {
443  dict = m_indet_dict;
444  } else if (is_lar(id)) {
445  dict = m_lar_dict;
446  } else if (is_tile(id)) {
447  dict = m_tile_dict;
448  } else if (is_muon(id)) {
449  dict = m_muon_dict;
450  } else if (is_lvl1_trig_towers(id) || is_lvl1_online(id) ||
451  is_lar_dm(id) || is_tile_dm(id)) {
452  dict = m_calo_dict;
453  } else if (is_forward(id)) {
454  dict = m_fwd_dict;
455  }
456 
457  if (!dict) {
458  ATH_MSG_WARNING(__func__<<":"<<__LINE__<<" No dictionary could be associated to "<<id);
459  return result;
460  }
461  if (dict->unpack(m_group, compact, prefix, max_index," ", result)) {
462  return result;
463  }
464  }
465  return result;
466 }

◆ register_dict_tag()

int AtlasDetectorID::register_dict_tag ( const IdDictMgr dict_mgr,
const std::string &  dict_name 
)
protectedinherited

Register the file and tag names for a particular IdDict dictionary.

Definition at line 201 of file AtlasDetectorID.cxx.

202  {
203  // Register version of dictionary dict_name
204 
205  // Access dictionary by name
206  IdDictDictionary *dict = dict_mgr.find_dictionary(dict_name);
207  if (!dict) {
208  ATH_MSG_ERROR(__func__<<":"<<__LINE__<<" No dictionary found");
209  return 1;
210 
211  }
212  // Add in dict name, file name and version
213  m_dict_names.push_back(dict_name);
214  m_file_names.push_back(dict->file_name());
215  m_dict_tags.push_back(dict->dict_tag());
216  return 0;
217 }

◆ reinitialize()

bool AtlasDetectorID::reinitialize ( const IdDictMgr dict_mgr)
protectedinherited

Test whether an idhelper should be reinitialized based on the change of tags.

Definition at line 221 of file AtlasDetectorID.cxx.

221  {
222  // If no tag has been registered, then reinitialize
223  if (m_dict_tags.size() == 0){
224  return true;
225  }
226  // If no dict names have been registered, then reinitialize
227  if (m_dict_names.size() == 0){
228  return true;
229  }
230  // Loop over dict names and check version tags
231  if (m_dict_names.size() != m_dict_tags.size()) {
232  ATH_MSG_ERROR("reinitialize: dict names and tags vectors not the same length ");
233  ATH_MSG_ERROR("names: " << m_dict_names.size() << " tags: " << m_dict_tags.size());
234  }
235  for (unsigned int i = 0; i < m_dict_names.size(); ++i) {
236  // Access dictionary by name
237  IdDictDictionary *dict = dict_mgr.find_dictionary(m_dict_names[i]);
238  if (!dict) {
239  ATH_MSG_ERROR("reinitialize: could not find dict - " << m_dict_names[i]);
240  return false;
241  }
242  if (m_dict_tags[i] != dict->dict_tag()) {
243  // Remove all memory of versions
244  m_dict_names.clear();
245  m_dict_tags.clear();
246  m_file_names.clear();
247  return true;
248  }
249  }
250 
251  // Tags match - don't reinitialize
252  return false;
253 }

◆ rpc()

Identifier AtlasDetectorID::rpc ( void  ) const
inherited

Definition at line 43 of file AtlasDetectorID.cxx.

43  {
44  return Identifier{};
45 }

◆ rpc_field_value()

int AtlasDetectorID::rpc_field_value ( ) const
inlineprotectedinherited

Definition at line 654 of file AtlasDetectorID.h.

654 {return (m_RPC_ID);}

◆ sct()

Identifier AtlasDetectorID::sct ( void  ) const
inherited

Definition at line 98 of file AtlasDetectorID.cxx.

98  {
99  Identifier result{0};
100  // Pack field
103  return result;
104 }

◆ sct_exp()

ExpandedIdentifier AtlasDetectorID::sct_exp ( void  ) const
inlineprotectedinherited

Definition at line 529 of file AtlasDetectorID.h.

530 {
532  return (result << m_SCT_ID);
533 }

◆ sct_field_value()

int AtlasDetectorID::sct_field_value ( ) const
inlineprotectedinherited

Definition at line 624 of file AtlasDetectorID.h.

624 {return (m_SCT_ID);}

◆ set_do_checks()

void AtlasDetectorID::set_do_checks ( bool  do_checks)
overridevirtualinherited

Implements IdHelper.

Definition at line 479 of file AtlasDetectorID.cxx.

479  {
481 }

◆ set_do_neighbours()

void AtlasDetectorID::set_do_neighbours ( bool  do_neighbours)
overridevirtualinherited

Implements IdHelper.

Definition at line 487 of file AtlasDetectorID.cxx.

487  {
489 }

◆ set_quiet()

void AtlasDetectorID::set_quiet ( bool  quiet)
inherited

Set flag for suppressing informational output.

Definition at line 495 of file AtlasDetectorID.cxx.

495  {
496  m_quiet = quiet;
497 }

◆ setDictVersion()

void AtlasDetectorID::setDictVersion ( const IdDictMgr dict_mgr,
const std::string &  name 
)
overrideprotectedvirtualinherited

Implements IdHelper.

Definition at line 499 of file AtlasDetectorID.cxx.

499  {
500  const IdDictDictionary *dict = dict_mgr.find_dictionary(name);
501  m_dict_version = dict->version();
502 }

◆ setLevel()

void AthMessaging::setLevel ( MSG::Level  lvl)
inherited

Change the current logging level.

Use this rather than msg().setLevel() for proper operation with MT.

Definition at line 28 of file AthMessaging.cxx.

29 {
30  m_lvl = lvl;
31 }

◆ setMessageSvc()

void AtlasDetectorID::setMessageSvc ( IMessageSvc *  msgSvc)
overridevirtualinherited

Implements IdHelper.

Definition at line 491 of file AtlasDetectorID.cxx.

491  {
492  m_msgSvc = msgSvc;
493 }

◆ show()

void AtlasDetectorID::show ( Identifier  id,
const IdContext context = 0,
char  sep = '.' 
) const
inherited

Short print out of any identifier (optionally provide separation character - default is '.

'):

Definition at line 359 of file AtlasDetectorID.cxx.

359  {
360  ATH_MSG_INFO(show_to_string(id, context, sep));
361 }

◆ show_to_string()

std::string AtlasDetectorID::show_to_string ( Identifier  id,
const IdContext context = 0,
char  sep = '.' 
) const
inherited

or provide the printout in string form

Definition at line 365 of file AtlasDetectorID.cxx.

365  {
366  // Do a generic printout of identifier
367 
368  std::string result("Unable to decode id");
369  unsigned int max_index = (context) ? context->end_index() : 999;
370 
371  if (!id.is_valid()) {
372  return "[INVALID]";
373  }
374 
376  return result;
377 
378  // Find the dictionary to use:
379  IdDictDictionary *dict{nullptr};
380  ExpandedIdentifier expId{};
381  ExpandedIdentifier prefix{}; // default is null prefix
382  Identifier compact = id;
383 
384  if (is_indet(id)) {
385  dict = m_indet_dict;
386  } else if (is_lar(id)) {
387  dict = m_lar_dict;
388  } else if (is_tile(id)) {
389  dict = m_tile_dict;
390  } else if (is_muon(id)) {
391  dict = m_muon_dict;
392  } else if (is_lvl1_trig_towers(id) || is_lvl1_online(id) ||
393  is_lar_dm(id) || is_tile_dm(id)) {
394  dict = m_calo_dict;
395  } else if (is_forward(id)) {
396  dict = m_fwd_dict;
397  }
398 
399  if (!dict) {
400  ATH_MSG_WARNING(__func__<<" No detector type associated to id "<<id);
401  return result;
402  }
403  if (dict->unpack(m_group, compact, prefix, max_index, expId)) {
404  return result;
405  }
406 
407  bool first = true;
408  result = "";
409  if ('.' == sep)
410  result = "[";
411  for (unsigned int i = 0; i < expId.fields(); ++i) {
412  if (first)
413  first = false;
414  else
415  result += sep;
416  result += std::format("{}", expId[i]);
417  }
418  if ('.' == sep)
419  result += "]";
420  return result;
421 }

◆ slot()

int LArOnlineID_Base::slot ( const HWIdentifier  id) const
inherited

Return the slot number of a hardware cell identifier:
slot = [1,15] Slot-ID in top part of the crate (higher phi)
Note that a crate is = Slot(1-15)L + Slot(1-15)R.

Definition at line 1961 of file LArOnlineID_Base.cxx.

1963 {
1964  return (m_slot_impl.unpack(id));
1965 }

◆ stgc()

Identifier AtlasDetectorID::stgc ( void  ) const
inherited

Definition at line 49 of file AtlasDetectorID.cxx.

49  {
50  return Identifier{};
51 }

◆ stgc_field_value()

int AtlasDetectorID::stgc_field_value ( ) const
inlineprotectedinherited

Definition at line 660 of file AtlasDetectorID.h.

660 {return (m_STGC_ID);}

◆ subdet_context()

IdContext AtlasDetectorID::subdet_context ( void  ) const
inherited

IdContext (indicates id length) for sub-detector.

Definition at line 184 of file AtlasDetectorID.cxx.

184  {
185  ExpandedIdentifier id{};
186  return IdContext{id, 0, m_SUBDET_INDEX};
187 }

◆ tgc()

Identifier AtlasDetectorID::tgc ( void  ) const
inherited

Definition at line 46 of file AtlasDetectorID.cxx.

46  {
47  return Identifier{};
48 }

◆ tgc_field_value()

int AtlasDetectorID::tgc_field_value ( ) const
inlineprotectedinherited

Definition at line 657 of file AtlasDetectorID.h.

657 {return (m_TGC_ID);}

◆ tile()

Identifier AtlasDetectorID::tile ( void  ) const
inherited

Definition at line 69 of file AtlasDetectorID.cxx.

69  {
70  Identifier result{0};
71  // Pack field
73  return result;
74 }

◆ tile_dm()

Identifier AtlasDetectorID::tile_dm ( void  ) const
inherited

Definition at line 154 of file AtlasDetectorID.cxx.

154  {
155  Identifier result{0};
156  // Pack field
159  return result;
160 }

◆ tile_exp()

ExpandedIdentifier AtlasDetectorID::tile_exp ( void  ) const
inlineprotectedinherited

Definition at line 494 of file AtlasDetectorID.h.

495 {
497  return (result << m_TILE_ID);
498 }

◆ tile_field_value()

int AtlasDetectorID::tile_field_value ( ) const
inlineprotectedinherited

Definition at line 612 of file AtlasDetectorID.h.

612 {return (m_TILE_ID);}

◆ to_range()

std::string AtlasDetectorID::to_range ( const ExpandedIdentifier id) const
protectedinherited

Definition at line 504 of file AtlasDetectorID.cxx.

504  {
505 
506  // Build a string from the contents of an identifier
507  int fields = id.fields();
508  std::string result("");
509  for (int i = 0; i < fields; ++i) {
510  if (i > 0) {
511  result += '/'; // add '/' only if NOT last one
512  }
513  result += std::format("{}", id[i]);
514  }
515  return result;
516 }

◆ trt()

Identifier AtlasDetectorID::trt ( void  ) const
inherited

Definition at line 106 of file AtlasDetectorID.cxx.

106  {
107  Identifier result{0};
108  // Pack field
111  return result;
112 }

◆ trt_exp()

ExpandedIdentifier AtlasDetectorID::trt_exp ( void  ) const
inlineprotectedinherited

Definition at line 536 of file AtlasDetectorID.h.

537 {
539  return (result << m_TRT_ID);
540 }

◆ trt_field_value()

int AtlasDetectorID::trt_field_value ( ) const
inlineprotectedinherited

Definition at line 627 of file AtlasDetectorID.h.

627 {return (m_TRT_ID);}

◆ zdc_exp()

ExpandedIdentifier AtlasDetectorID::zdc_exp ( void  ) const
inlineprotectedinherited

Definition at line 599 of file AtlasDetectorID.h.

600 {
602  return (result << m_ZDC_ID);
603 }

◆ zdc_field_value()

int AtlasDetectorID::zdc_field_value ( ) const
inlineprotectedinherited

Definition at line 674 of file AtlasDetectorID.h.

674 {return (m_ZDC_ID);}

Member Data Documentation

◆ ATLAS_THREAD_SAFE

std::atomic_flag m_initialized AthMessaging::ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT
mutableprivateinherited

Messaging initialized (initMessaging)

Definition at line 141 of file AthMessaging.h.

◆ m_ALFA_ID

int AtlasDetectorID::m_ALFA_ID {1}
privateinherited

Definition at line 425 of file AtlasDetectorID.h.

◆ m_atlas_dict

IdDictDictionary* AtlasDetectorID::m_atlas_dict {}
privateinherited

Definition at line 436 of file AtlasDetectorID.h.

◆ m_BCM_ID

int AtlasDetectorID::m_BCM_ID {3}
privateinherited

Definition at line 426 of file AtlasDetectorID.h.

◆ m_bec_ft_impl

IdDictFieldImplementation LArOnlineID_Base::m_bec_ft_impl
protectedinherited

Definition at line 511 of file LArOnlineID_Base.h.

◆ m_bec_impl

IdDictFieldImplementation LArOnlineID_Base::m_bec_impl
protectedinherited

Definition at line 506 of file LArOnlineID_Base.h.

◆ m_bec_index

size_type LArOnlineID_Base::m_bec_index
protectedinherited

Definition at line 475 of file LArOnlineID_Base.h.

◆ m_bec_slot_impl

IdDictFieldImplementation LArOnlineID_Base::m_bec_slot_impl
protectedinherited

Definition at line 512 of file LArOnlineID_Base.h.

◆ m_calib_channel_vec

std::vector<HWIdentifier> LArOnlineID_Base::m_calib_channel_vec
protectedinherited

Definition at line 501 of file LArOnlineID_Base.h.

◆ m_calib_module_vec

std::vector<HWIdentifier> LArOnlineID_Base::m_calib_module_vec
protectedinherited

Definition at line 500 of file LArOnlineID_Base.h.

◆ m_calibChannelHashMax

size_type LArOnlineID_Base::m_calibChannelHashMax
protectedinherited

Definition at line 499 of file LArOnlineID_Base.h.

◆ m_calibModuleHashMax

size_type LArOnlineID_Base::m_calibModuleHashMax
protectedinherited

Definition at line 498 of file LArOnlineID_Base.h.

◆ m_calo_dict

IdDictDictionary* AtlasDetectorID::m_calo_dict {}
privateinherited

Definition at line 441 of file AtlasDetectorID.h.

◆ m_CALO_ID

int AtlasDetectorID::m_CALO_ID {10}
privateinherited

Definition at line 407 of file AtlasDetectorID.h.

◆ m_calo_side_impl

IdDictFieldImplementation AtlasDetectorID::m_calo_side_impl
privateinherited

Definition at line 446 of file AtlasDetectorID.h.

◆ m_chan_hash_calcs

std::vector<HashCalc> LArOnlineID_Base::m_chan_hash_calcs
protectedinherited

Definition at line 532 of file LArOnlineID_Base.h.

◆ m_channel_in_slot_impl

IdDictFieldImplementation LArOnlineID_Base::m_channel_in_slot_impl
protectedinherited

Definition at line 510 of file LArOnlineID_Base.h.

◆ m_channel_in_slot_index

size_type LArOnlineID_Base::m_channel_in_slot_index
protectedinherited

Definition at line 479 of file LArOnlineID_Base.h.

◆ m_channel_vec

std::vector<HWIdentifier> LArOnlineID_Base::m_channel_vec
protectedinherited

Definition at line 493 of file LArOnlineID_Base.h.

◆ m_channelHashMax

size_type LArOnlineID_Base::m_channelHashMax
protectedinherited

Definition at line 489 of file LArOnlineID_Base.h.

◆ m_CSC_ID

int AtlasDetectorID::m_CSC_ID {1}
privateinherited

Definition at line 419 of file AtlasDetectorID.h.

◆ m_det_impl

IdDictFieldImplementation AtlasDetectorID::m_det_impl
privateinherited

Definition at line 444 of file AtlasDetectorID.h.

◆ m_DET_INDEX

size_type AtlasDetectorID::m_DET_INDEX {999}
privateinherited

Definition at line 400 of file AtlasDetectorID.h.

◆ m_dict

const IdDictDictionary* LArOnlineID_Base::m_dict
protectedinherited

Definition at line 482 of file LArOnlineID_Base.h.

◆ m_dict_names

std::vector<std::string> AtlasDetectorID::m_dict_names
protectedinherited

List of dictionary names used by this helper.

Definition at line 376 of file AtlasDetectorID.h.

◆ m_dict_tags

std::vector<std::string> AtlasDetectorID::m_dict_tags
protectedinherited

List of dictionary versions used by this helper.

Definition at line 382 of file AtlasDetectorID.h.

◆ m_dict_version

std::string AtlasDetectorID::m_dict_version
privateinherited

Definition at line 398 of file AtlasDetectorID.h.

◆ m_do_checks

bool AtlasDetectorID::m_do_checks {}
protectedinherited

Flag for subclasses to know whether or not to perform checks.

In general, this is set to false in optimized mode.

Definition at line 363 of file AtlasDetectorID.h.

◆ m_do_neighbours

bool AtlasDetectorID::m_do_neighbours {true}
protectedinherited

Flag for subclasses to know whether or not to perform neighbour initialization.

Definition at line 366 of file AtlasDetectorID.h.

◆ m_feb_hash_calcs

std::vector<HashCalcFeb> LArOnlineID_Base::m_feb_hash_calcs
protectedinherited

Definition at line 531 of file LArOnlineID_Base.h.

◆ m_feb_vec

std::vector<HWIdentifier> LArOnlineID_Base::m_feb_vec
protectedinherited

Definition at line 492 of file LArOnlineID_Base.h.

◆ m_febHashMax

size_type LArOnlineID_Base::m_febHashMax
protectedinherited

Definition at line 488 of file LArOnlineID_Base.h.

◆ m_feedthrough_impl

IdDictFieldImplementation LArOnlineID_Base::m_feedthrough_impl
protectedinherited

Definition at line 508 of file LArOnlineID_Base.h.

◆ m_feedthrough_index

size_type LArOnlineID_Base::m_feedthrough_index
protectedinherited

Definition at line 477 of file LArOnlineID_Base.h.

◆ m_feedthrough_vec

std::vector<HWIdentifier> LArOnlineID_Base::m_feedthrough_vec
protectedinherited

Definition at line 491 of file LArOnlineID_Base.h.

◆ m_feedthroughHashMax

size_type LArOnlineID_Base::m_feedthroughHashMax
protectedinherited

Definition at line 487 of file LArOnlineID_Base.h.

◆ m_file_names

std::vector<std::string> AtlasDetectorID::m_file_names
protectedinherited

List of dictionary file names used by this helper.

Definition at line 379 of file AtlasDetectorID.h.

◆ m_full_calib_laronline_range

MultiRange LArOnlineID_Base::m_full_calib_laronline_range
protectedinherited

Definition at line 496 of file LArOnlineID_Base.h.

◆ m_full_calib_module_range

MultiRange LArOnlineID_Base::m_full_calib_module_range
protectedinherited

Definition at line 497 of file LArOnlineID_Base.h.

◆ m_full_channel_range

MultiRange LArOnlineID_Base::m_full_channel_range
protectedinherited

Definition at line 486 of file LArOnlineID_Base.h.

◆ m_full_feb_range

MultiRange LArOnlineID_Base::m_full_feb_range
protectedinherited

Definition at line 485 of file LArOnlineID_Base.h.

◆ m_full_feedthrough_range

MultiRange LArOnlineID_Base::m_full_feedthrough_range
protectedinherited

Definition at line 484 of file LArOnlineID_Base.h.

◆ m_full_laronline_range

MultiRange LArOnlineID_Base::m_full_laronline_range
protectedinherited

Definition at line 483 of file LArOnlineID_Base.h.

◆ m_fwd_dict

IdDictDictionary* AtlasDetectorID::m_fwd_dict {}
privateinherited

Definition at line 442 of file AtlasDetectorID.h.

◆ m_FWD_ID

int AtlasDetectorID::m_FWD_ID {13}
privateinherited

Definition at line 424 of file AtlasDetectorID.h.

◆ m_fwd_part_impl

IdDictFieldImplementation AtlasDetectorID::m_fwd_part_impl
privateinherited

Definition at line 452 of file AtlasDetectorID.h.

◆ m_group

std::string AtlasDetectorID::m_group
protectedinherited

Group name.

Definition at line 359 of file AtlasDetectorID.h.

◆ m_helper

AtlasDetectorIDHelper* AtlasDetectorID::m_helper {}
privateinherited

Definition at line 443 of file AtlasDetectorID.h.

◆ m_HGTD_ID

int AtlasDetectorID::m_HGTD_ID {4}
privateinherited

Definition at line 411 of file AtlasDetectorID.h.

◆ m_imsg

std::atomic<IMessageSvc*> AthMessaging::m_imsg { nullptr }
mutableprivateinherited

MessageSvc pointer.

Definition at line 135 of file AthMessaging.h.

◆ m_indet_dict

IdDictDictionary* AtlasDetectorID::m_indet_dict {}
privateinherited

Definition at line 437 of file AtlasDetectorID.h.

◆ m_INDET_ID

int AtlasDetectorID::m_INDET_ID {2}
privateinherited

Definition at line 403 of file AtlasDetectorID.h.

◆ m_indet_part_impl

IdDictFieldImplementation AtlasDetectorID::m_indet_part_impl
privateinherited

Definition at line 445 of file AtlasDetectorID.h.

◆ m_is_initialized_from_dict

bool AtlasDetectorID::m_is_initialized_from_dict {}
privateinherited

Definition at line 399 of file AtlasDetectorID.h.

◆ m_isHighLuminosityLHC

bool AtlasDetectorID::m_isHighLuminosityLHC {}
privateinherited

Definition at line 430 of file AtlasDetectorID.h.

◆ m_lar_dict

IdDictDictionary* AtlasDetectorID::m_lar_dict {}
privateinherited

Definition at line 438 of file AtlasDetectorID.h.

◆ m_lar_dm_field

Range::field AtlasDetectorID::m_lar_dm_field
privateinherited

Definition at line 434 of file AtlasDetectorID.h.

◆ m_LAR_EM_ID

int AtlasDetectorID::m_LAR_EM_ID {1}
privateinherited

Definition at line 414 of file AtlasDetectorID.h.

◆ m_LAR_FCAL_ID

int AtlasDetectorID::m_LAR_FCAL_ID {3}
privateinherited

Definition at line 416 of file AtlasDetectorID.h.

◆ m_lar_fcal_module_impl

IdDictFieldImplementation AtlasDetectorID::m_lar_fcal_module_impl
privateinherited

Definition at line 448 of file AtlasDetectorID.h.

◆ m_LAR_FCAL_MODULE_INDEX

int AtlasDetectorID::m_LAR_FCAL_MODULE_INDEX {999}
privateinherited

Definition at line 417 of file AtlasDetectorID.h.

◆ m_LAR_HEC_ID

int AtlasDetectorID::m_LAR_HEC_ID {2}
privateinherited

Definition at line 415 of file AtlasDetectorID.h.

◆ m_LAR_ID

int AtlasDetectorID::m_LAR_ID {4}
privateinherited

Definition at line 404 of file AtlasDetectorID.h.

◆ m_lar_impl

IdDictFieldImplementation LArOnlineID_Base::m_lar_impl
protectedinherited

Field Implementation.

Definition at line 504 of file LArOnlineID_Base.h.

◆ m_lar_index

size_type LArOnlineID_Base::m_lar_index
protectedinherited

Definition at line 473 of file LArOnlineID_Base.h.

◆ m_lar_part_impl

IdDictFieldImplementation AtlasDetectorID::m_lar_part_impl
privateinherited

Definition at line 447 of file AtlasDetectorID.h.

◆ m_laronline_impl

IdDictFieldImplementation LArOnlineID_Base::m_laronline_impl
protectedinherited

Definition at line 505 of file LArOnlineID_Base.h.

◆ m_laronline_index

size_type LArOnlineID_Base::m_laronline_index
protectedinherited

Definition at line 474 of file LArOnlineID_Base.h.

◆ m_laronlineRegion_index

size_type LArOnlineID_Base::m_laronlineRegion_index
protectedinherited

Definition at line 472 of file LArOnlineID_Base.h.

◆ m_LUCID_ID

int AtlasDetectorID::m_LUCID_ID {5}
privateinherited

Definition at line 427 of file AtlasDetectorID.h.

◆ m_LUMI_ID

int AtlasDetectorID::m_LUMI_ID {3}
privateinherited

Definition at line 412 of file AtlasDetectorID.h.

◆ m_LUMI_PLR_ID

int AtlasDetectorID::m_LUMI_PLR_ID {1}
privateinherited

Definition at line 413 of file AtlasDetectorID.h.

◆ m_lvl

std::atomic<MSG::Level> AthMessaging::m_lvl { MSG::NIL }
mutableprivateinherited

Current logging level.

Definition at line 138 of file AthMessaging.h.

◆ m_lvl1_field

Range::field AtlasDetectorID::m_lvl1_field
privateinherited

Definition at line 432 of file AtlasDetectorID.h.

◆ m_lvl1_onl_field

Range::field AtlasDetectorID::m_lvl1_onl_field
privateinherited

Definition at line 433 of file AtlasDetectorID.h.

◆ m_MDT_ID

int AtlasDetectorID::m_MDT_ID {0}
privateinherited

Definition at line 418 of file AtlasDetectorID.h.

◆ m_MM_ID

int AtlasDetectorID::m_MM_ID {5}
privateinherited

Definition at line 423 of file AtlasDetectorID.h.

◆ m_msg_tls

boost::thread_specific_ptr<MsgStream> AthMessaging::m_msg_tls
mutableprivateinherited

MsgStream instance (a std::cout like with print-out levels)

Definition at line 132 of file AthMessaging.h.

◆ m_msgSvc

IMessageSvc* AtlasDetectorID::m_msgSvc {}
protectedinherited

pointer to the message service

Definition at line 369 of file AtlasDetectorID.h.

◆ m_muon_dict

IdDictDictionary* AtlasDetectorID::m_muon_dict {}
privateinherited

Definition at line 440 of file AtlasDetectorID.h.

◆ m_MUON_ID

int AtlasDetectorID::m_MUON_ID {7}
privateinherited

Definition at line 406 of file AtlasDetectorID.h.

◆ m_muon_mdt_impl

IdDictFieldImplementation AtlasDetectorID::m_muon_mdt_impl
privateinherited

Definition at line 450 of file AtlasDetectorID.h.

◆ m_muon_rpc_impl

IdDictFieldImplementation AtlasDetectorID::m_muon_rpc_impl
privateinherited

Definition at line 451 of file AtlasDetectorID.h.

◆ m_muon_station_name_impl

IdDictFieldImplementation AtlasDetectorID::m_muon_station_name_impl
privateinherited

Definition at line 449 of file AtlasDetectorID.h.

◆ m_MUON_SUBDET_INDEX

size_type AtlasDetectorID::m_MUON_SUBDET_INDEX {999}
privateinherited

Definition at line 402 of file AtlasDetectorID.h.

◆ m_muon_tech_bits

std::vector<unsigned int> AtlasDetectorID::m_muon_tech_bits
privateinherited

Definition at line 455 of file AtlasDetectorID.h.

◆ m_nm

std::string AthMessaging::m_nm
privateinherited

Message source name.

Definition at line 129 of file AthMessaging.h.

◆ m_PIXEL_ID

int AtlasDetectorID::m_PIXEL_ID {1}
privateinherited

Definition at line 408 of file AtlasDetectorID.h.

◆ m_quiet

bool AtlasDetectorID::m_quiet {}
protectedinherited

If true, suppress DEBUG/INFO messages.

Definition at line 372 of file AtlasDetectorID.h.

◆ m_RPC_ID

int AtlasDetectorID::m_RPC_ID {2}
privateinherited

Definition at line 420 of file AtlasDetectorID.h.

◆ m_SCT_ID

int AtlasDetectorID::m_SCT_ID {2}
privateinherited

Definition at line 409 of file AtlasDetectorID.h.

◆ m_side_impl

IdDictFieldImplementation LArOnlineID_Base::m_side_impl
protectedinherited

Definition at line 507 of file LArOnlineID_Base.h.

◆ m_side_index

size_type LArOnlineID_Base::m_side_index
protectedinherited

Definition at line 476 of file LArOnlineID_Base.h.

◆ m_slar_impl

IdDictFieldImplementation LArOnlineID_Base::m_slar_impl
protectedinherited

Definition at line 513 of file LArOnlineID_Base.h.

◆ m_slar_index

size_type LArOnlineID_Base::m_slar_index
protectedinherited

Definition at line 480 of file LArOnlineID_Base.h.

◆ m_slot_impl

IdDictFieldImplementation LArOnlineID_Base::m_slot_impl
protectedinherited

Definition at line 509 of file LArOnlineID_Base.h.

◆ m_slot_index

size_type LArOnlineID_Base::m_slot_index
protectedinherited

Definition at line 478 of file LArOnlineID_Base.h.

◆ m_STGC_ID

int AtlasDetectorID::m_STGC_ID {4}
privateinherited

Definition at line 422 of file AtlasDetectorID.h.

◆ m_SUBDET_INDEX

size_type AtlasDetectorID::m_SUBDET_INDEX {999}
privateinherited

Definition at line 401 of file AtlasDetectorID.h.

◆ m_TGC_ID

int AtlasDetectorID::m_TGC_ID {3}
privateinherited

Definition at line 421 of file AtlasDetectorID.h.

◆ m_this_is_slar

bool LArOnlineID_Base::m_this_is_slar
protectedinherited

Definition at line 437 of file LArOnlineID_Base.h.

◆ m_tile_dict

IdDictDictionary* AtlasDetectorID::m_tile_dict {}
privateinherited

Definition at line 439 of file AtlasDetectorID.h.

◆ m_tile_dm_field

Range::field AtlasDetectorID::m_tile_dm_field
privateinherited

Definition at line 435 of file AtlasDetectorID.h.

◆ m_TILE_ID

int AtlasDetectorID::m_TILE_ID {5}
privateinherited

Definition at line 405 of file AtlasDetectorID.h.

◆ m_TRT_ID

int AtlasDetectorID::m_TRT_ID {3}
privateinherited

Definition at line 410 of file AtlasDetectorID.h.

◆ m_ZDC_ID

int AtlasDetectorID::m_ZDC_ID {7}
privateinherited

Definition at line 428 of file AtlasDetectorID.h.


The documentation for this class was generated from the following files:
LArOnlineID_Base::m_side_index
size_type m_side_index
Definition: LArOnlineID_Base.h:476
IdDictDictionary::find_region
IdDictRegion * find_region(const std::string &region_name) const
Definition: IdDictDictionary.cxx:101
AtlasDetectorID::is_pixel
bool is_pixel(Identifier id) const
Definition: AtlasDetectorID.h:755
AthMessaging::m_lvl
std::atomic< MSG::Level > m_lvl
Current logging level.
Definition: AthMessaging.h:138
AtlasDetectorID::m_muon_dict
IdDictDictionary * m_muon_dict
Definition: AtlasDetectorID.h:440
AtlasDetectorID::indet_field_value
int indet_field_value() const
Provide efficient access to individual field values, for subclass idhelpers.
Definition: AtlasDetectorID.h:606
ConstRangeIterator
Definition: RangeIterator.h:46
AtlasDetectorID::is_forward
bool is_forward(Identifier id) const
Definition: AtlasDetectorID.h:930
IdDictDictionary::build_multirange
MultiRange build_multirange() const
Get MultiRange for full dictionary.
Definition: IdDictDictionary.cxx:290
ReadCellNoiseFromCoolCompare.s1
s1
Definition: ReadCellNoiseFromCoolCompare.py:378
LArOnlineID::isEMECIW
bool isEMECIW(const HWIdentifier id) const override final
Definition: LArOnlineID.cxx:734
AtlasDetectorID::m_muon_tech_bits
std::vector< unsigned int > m_muon_tech_bits
Definition: AtlasDetectorID.h:455
AtlasDetectorID::MAX_BIT
@ MAX_BIT
Definition: AtlasDetectorID.h:390
sendEI_SPB.ch
ch
Definition: sendEI_SPB.py:35
LArOnlineID_Base::channel_Hash
IdentifierHash channel_Hash(HWIdentifier channelId) const
Create channel_hash from channel_Id.
Definition: LArOnlineID_Base.cxx:1636
AtlasDetectorID::m_LUMI_ID
int m_LUMI_ID
Definition: AtlasDetectorID.h:412
PlotCalibFromCool.ft
ft
Definition: PlotCalibFromCool.py:329
LArOnlineID_Base::NOT_VALID_HASH
@ NOT_VALID_HASH
Definition: LArOnlineID_Base.h:436
AtlasDetectorID::initialize_from_dictionary
virtual int initialize_from_dictionary(const IdDictMgr &dict_mgr) override
Initialization from the identifier dictionary.
Definition: AtlasDetectorID.cxx:255
LArOnlineID_Base::LArOnlineID_Base
LArOnlineID_Base(const std::string &name, const std::string &group, bool is_slar)
Default constructor.
Definition: LArOnlineID_Base.cxx:51
get_generator_info.result
result
Definition: get_generator_info.py:21
AtlasDetectorID::m_indet_part_impl
IdDictFieldImplementation m_indet_part_impl
Definition: AtlasDetectorID.h:445
IdDictGroup
Definition: IdDictGroup.h:25
InDetDD::PLR
@ PLR
Definition: DetectorDesign.h:46
LArOnlineID_Base::m_slar_impl
IdDictFieldImplementation m_slar_impl
Definition: LArOnlineID_Base.h:513
LArOnlineID_Base::size_type
Identifier::size_type size_type
Definition: LArOnlineID_Base.h:100
vtune_athena.format
format
Definition: vtune_athena.py:14
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
IdDictDictionary::version
const std::string & version() const
Dictionary version.
Definition: IdDictDictionary.h:341
LArOnlineID_Base::feedthrough_name
std::string feedthrough_name(const HWIdentifier id) const
Return a string corresponding to a feedthrough name given an identifier.
Definition: LArOnlineID_Base.cxx:79
AtlasDetectorID::is_lar_fcal
bool is_lar_fcal(Identifier id) const
Definition: AtlasDetectorID.h:834
ParticleGun_SamplingFraction.bec
int bec
Definition: ParticleGun_SamplingFraction.py:89
IdDictFieldImplementation::show_to_string
std::string show_to_string(void) const
Definition: IdDictFieldImplementation.cxx:32
AtlasDetectorID::is_lar
bool is_lar(Identifier id) const
Definition: AtlasDetectorID.h:684
Pixel
Definition: PixelFEUtils.h:16
AtlasDetectorID::muon_field_value
int muon_field_value() const
Definition: AtlasDetectorID.h:615
LArOnlineID_Base::m_feedthrough_impl
IdDictFieldImplementation m_feedthrough_impl
Definition: LArOnlineID_Base.h:508
AtlasDetectorID::m_TRT_ID
int m_TRT_ID
Definition: AtlasDetectorID.h:410
quiet
bool quiet
Definition: TrigGlobEffCorrValidation.cxx:190
IdDictDictionary::region
const IdDictRegion & region(size_t i) const
Region at index i.
Definition: IdDictDictionary.h:350
LArOnlineID_Base::isEMECIW
virtual bool isEMECIW(const HWIdentifier id) const =0
LArOnlineID::is_H6FT
bool is_H6FT(const HWIdentifier feedthroughId) const
Definition: LArOnlineID.h:180
IdentifierField::get_minimum
element_type get_minimum() const
Query the values.
Definition: IdentifierField.h:121
min
constexpr double min()
Definition: ap_fixedTest.cxx:26
AtlasDetectorID::m_HGTD_ID
int m_HGTD_ID
Definition: AtlasDetectorID.h:411
IdContext::end_index
size_type end_index() const
Definition: IdContext.h:46
AtlasDetectorID::calo_field_value
int calo_field_value() const
Definition: AtlasDetectorID.h:618
LArOnlineID::init_H6Hashes
int init_H6Hashes()
Definition: LArOnlineID.cxx:562
LArOnlineID_Base::feb_Id_checks
void feb_Id_checks(int barrel_ec, int pos_neg, int feedthrough, int slot) const
Definition: LArOnlineID_Base.cxx:758
LArOnlineID_Base::m_channel_vec
std::vector< HWIdentifier > m_channel_vec
Definition: LArOnlineID_Base.h:493
skel.it
it
Definition: skel.GENtoEVGEN.py:407
LArOnlineID_Base::slot
int slot(const HWIdentifier id) const
Return the slot number of a hardware cell identifier: slot = [1,15] Slot-ID in top part of the crat...
Definition: LArOnlineID_Base.cxx:1961
ExpandedIdentifier
Definition: DetectorDescription/Identifier/Identifier/ExpandedIdentifier.h:102
IdDictFieldImplementation::pack
void pack(int value, Identifier &id) const
Definition: IdDictFieldImplementation.h:173
AtlasDetectorID::m_tile_dict
IdDictDictionary * m_tile_dict
Definition: AtlasDetectorID.h:439
LArOnlineID_Base::m_slot_impl
IdDictFieldImplementation m_slot_impl
Definition: LArOnlineID_Base.h:509
LArOnlineID_Base::m_laronline_impl
IdDictFieldImplementation m_laronline_impl
Definition: LArOnlineID_Base.h:505
AtlasDetectorID::m_msgSvc
IMessageSvc * m_msgSvc
pointer to the message service
Definition: AtlasDetectorID.h:369
LArOnlineID_Base::id_range
boost::iterator_range< id_iterator > id_range
Type for range over identifiers.
Definition: LArOnlineID_Base.h:105
AtlasDetectorID::m_dict_version
std::string m_dict_version
Definition: AtlasDetectorID.h:398
IdentifierField::get_values
const element_vector & get_values() const
Definition: IdentifierField.h:133
IdentifierField::get_maximum
element_type get_maximum() const
Definition: IdentifierField.h:130
LArOnlineID_Base::feb_begin
id_iterator feb_begin() const
Returns an iterator pointing to a feb identifier collection.
Definition: LArOnlineID_Base.cxx:1910
LArOnlineID_Base::feedthrough_begin
id_iterator feedthrough_begin() const
Return an iterator pointing to Feedthrough identifiers collection.
Definition: LArOnlineID_Base.cxx:1435
AtlasDetectorID::m_do_checks
bool m_do_checks
Flag for subclasses to know whether or not to perform checks.
Definition: AtlasDetectorID.h:363
Identifier::MAX_BIT
static constexpr value_type MAX_BIT
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
LArOnlineID_Base::calib_module_Id
HWIdentifier calib_module_Id(int barrel_ec, int pos_neg, int feedthrough, int slot) const
Build calibration module identifier from fields.
Definition: LArOnlineID_Base.h:567
ReadOfcFromCool.field
field
Definition: ReadOfcFromCool.py:48
LArOnlineID::is_H6
bool is_H6(const HWIdentifier channelId) const
Definition: LArOnlineID.h:161
IdDictDictionary::name
const std::string & name() const
Dictionary name.
Definition: IdDictDictionary.h:332
LArOnlineID_Base::m_laronline_index
size_type m_laronline_index
Definition: LArOnlineID_Base.h:474
LArOnlineID_Base::m_dict
const IdDictDictionary * m_dict
Definition: LArOnlineID_Base.h:482
AtlasDetectorID::m_ZDC_ID
int m_ZDC_ID
Definition: AtlasDetectorID.h:428
AtlasDetectorID::m_STGC_ID
int m_STGC_ID
Definition: AtlasDetectorID.h:422
LArOnlineID_Base::feedthroughContext
IdContext feedthroughContext() const
Define context for feedthroughs.
Definition: LArOnlineID_Base.cxx:262
AtlasDetectorID::lar_field_value
int lar_field_value() const
Definition: AtlasDetectorID.h:609
Muon
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Definition: TrackSystemController.h:45
LArOnlineID_Base::m_side_impl
IdDictFieldImplementation m_side_impl
Definition: LArOnlineID_Base.h:507
HWIdentifier
Definition: HWIdentifier.h:13
LArOnlineID_Base::barrel_ec
int barrel_ec(const HWIdentifier id) const
Return the position barrel or endcap of a hardware cell identifier: barrel_ec = [0,...
Definition: LArOnlineID_Base.cxx:1942
AthMessaging::m_imsg
std::atomic< IMessageSvc * > m_imsg
MessageSvc pointer.
Definition: AthMessaging.h:135
IdDictFieldImplementation::unpack
int unpack(Identifier id) const
Identifier manipulation methods.
Definition: IdDictFieldImplementation.h:147
IdDictDictionary::file_name
const std::string & file_name() const
Access to file name.
Definition: IdDictDictionary.h:367
AtlasDetectorID::ALL_BITS
@ ALL_BITS
Definition: AtlasDetectorID.h:393
LArOnlineID_Base::channel_end
id_iterator channel_end() const
Definition: LArOnlineID_Base.cxx:1931
AtlasDetectorID::do_neighbours
virtual bool do_neighbours(void) const override
Neighbour initialization is performed by default One can switch or query this mode for any idHelper w...
Definition: AtlasDetectorID.cxx:483
Athena::getMessageSvc
IMessageSvc * getMessageSvc(bool quiet=false)
Definition: getMessageSvc.cxx:20
IdDictDictionary::find_field
IdDictField * find_field(const std::string &name) const
Definition: IdDictDictionary.cxx:47
AtlasDetectorID::is_lvl1_trig_towers
bool is_lvl1_trig_towers(Identifier id) const
Definition: AtlasDetectorID.h:708
CalibDbCompareRT.region_id
region_id
Definition: CalibDbCompareRT.py:67
IdDictRegion
Definition: IdDictRegion.h:20
LArOnlineID_Base::m_feedthroughHashMax
size_type m_feedthroughHashMax
Definition: LArOnlineID_Base.h:487
AtlasDetectorID::dictionaryVersion
virtual std::string dictionaryVersion(void) const override
Definition: AtlasDetectorID.cxx:281
LArOnlineID_Base::m_calib_channel_vec
std::vector< HWIdentifier > m_calib_channel_vec
Definition: LArOnlineID_Base.h:501
AtlasDetectorID::m_LAR_ID
int m_LAR_ID
Definition: AtlasDetectorID.h:404
LArOnlineID_Base::m_bec_slot_impl
IdDictFieldImplementation m_bec_slot_impl
Definition: LArOnlineID_Base.h:512
LArOnlineID_Base::m_calibModuleHashMax
size_type m_calibModuleHashMax
Definition: LArOnlineID_Base.h:498
AtlasDetectorID::m_do_neighbours
bool m_do_neighbours
Flag for subclasses to know whether or not to perform neighbour initialization.
Definition: AtlasDetectorID.h:366
IdDictFieldImplementation::reset
void reset(Identifier &id) const
Definition: IdDictFieldImplementation.h:183
AtlasDetectorID::m_INDET_ID
int m_INDET_ID
Definition: AtlasDetectorID.h:403
LArOnlineID_Base::m_feb_hash_calcs
std::vector< HashCalcFeb > m_feb_hash_calcs
Definition: LArOnlineID_Base.h:531
Trk::DetectorElemType::Silicon
@ Silicon
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
AtlasDetectorID::m_LUMI_PLR_ID
int m_LUMI_PLR_ID
Definition: AtlasDetectorID.h:413
LArOnlineID_Base::isFCALchannel
bool isFCALchannel(const HWIdentifier id) const
Definition: LArOnlineID_Base.cxx:1657
LArOnlineID_Base::is_slar
int is_slar(const HWIdentifier id) const
Return whether the channel is in slar or not is_ slar = [0,1] in all FEB.
Definition: LArOnlineID_Base.cxx:1973
LArOnlineID_Base::m_channel_in_slot_impl
IdDictFieldImplementation m_channel_in_slot_impl
Definition: LArOnlineID_Base.h:510
IdDictRegion::implementation
const IdDictFieldImplementation & implementation(size_t i) const
Definition: IdDictRegion.cxx:34
IdentifierField::match
bool match(element_type value) const
The basic match operation Given a value, test to see if it satisfies the constraints for this field.
Definition: IdentifierField.cxx:71
AtlasDetectorID::PIXEL_MASK
@ PIXEL_MASK
Definition: AtlasDetectorID.h:392
AtlasDetectorID::m_tile_dm_field
Range::field m_tile_dm_field
Definition: AtlasDetectorID.h:435
LArOnlineID_Base::m_full_feedthrough_range
MultiRange m_full_feedthrough_range
Definition: LArOnlineID_Base.h:484
IdDictFieldImplementation::unpackToIndex
size_type unpackToIndex(Identifier id) const
Unpack a single field index of the id.
Definition: IdDictFieldImplementation.h:164
IdDictDictionary::find_group
IdDictGroup * find_group(const std::string &group_name) const
Definition: IdDictDictionary.cxx:115
Tile
Definition: TileVolumeBuilder.h:42
LArOnlineID_Base::channel
int channel(const HWIdentifier id) const
Return the channel number of a hardware cell identifier channel = [0,127] in all FEB.
Definition: LArOnlineID_Base.cxx:1967
Identifier::ALL_BITS
static constexpr value_type ALL_BITS
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:33
IdDictMgr::find_dictionary
IdDictDictionary * find_dictionary(const std::string &name) const
Access dictionary by name.
Definition: IdDictMgr.cxx:114
AtlasDetectorID::ATLAS_ID
@ ATLAS_ID
Definition: AtlasDetectorID.h:389
TrigConf::MSGTC::Level
Level
Definition: Trigger/TrigConfiguration/TrigConfBase/TrigConfBase/MsgStream.h:21
LArOnlineID_Base::m_febHashMax
size_type m_febHashMax
Definition: LArOnlineID_Base.h:488
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
AtlasDetectorID::m_TILE_ID
int m_TILE_ID
Definition: AtlasDetectorID.h:405
TRT
Definition: HitInfo.h:33
StdJOSetup.msgSvc
msgSvc
Provide convenience handles for various services.
Definition: StdJOSetup.py:36
IdentifierField::empty
bool empty() const
If true, this field does not have any constraints, and may hold any value representable by element_ty...
Definition: IdentifierField.h:182
AtlasDetectorID::m_group
std::string m_group
Group name.
Definition: AtlasDetectorID.h:359
LArOnlineID_Base::m_slar_index
size_type m_slar_index
Definition: LArOnlineID_Base.h:480
AtlasDetectorID::m_calo_dict
IdDictDictionary * m_calo_dict
Definition: AtlasDetectorID.h:441
lumiFormat.i
int i
Definition: lumiFormat.py:85
IdDictFieldImplementation::set_bits
void set_bits(size_type bits, size_type bits_offset)
Definition: IdDictFieldImplementation.h:278
AtlasDetectorID::m_is_initialized_from_dict
bool m_is_initialized_from_dict
Definition: AtlasDetectorID.h:399
AtlasDetectorID::m_lar_part_impl
IdDictFieldImplementation m_lar_part_impl
Definition: AtlasDetectorID.h:447
AtlasDetectorID::indet_exp
ExpandedIdentifier indet_exp(void) const
Detector systems:
Definition: AtlasDetectorID.h:480
LArOnlineID_Base::m_calibChannelHashMax
size_type m_calibChannelHashMax
Definition: LArOnlineID_Base.h:499
LArOnlineID_Base::channelContext
IdContext channelContext() const
Define context for channel.
Definition: LArOnlineID_Base.cxx:273
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
LArOnlineID_Base::isEMECOW
virtual bool isEMECOW(const HWIdentifier id) const =0
LArOnlID_Exception
Exception class for LAr online Identifiers.
Definition: LArOnlID_Exception.h:16
AtlasDetectorID::m_muon_mdt_impl
IdDictFieldImplementation m_muon_mdt_impl
Definition: AtlasDetectorID.h:450
LArOnlineID_Base::isEMECPS
bool isEMECPS(const HWIdentifier id) const
Definition: LArOnlineID_Base.cxx:1675
AtlasDetectorID::m_lar_fcal_module_impl
IdDictFieldImplementation m_lar_fcal_module_impl
Definition: AtlasDetectorID.h:448
LArOnlineID_Base::get_expanded_id
int get_expanded_id(const HWIdentifier &id, ExpandedIdentifier &exp_id, const IdContext *context) const
create expanded HWIdentifier from HWIdentifier (return == 0 for OK)
Definition: LArOnlineID_Base.cxx:794
IdDictFieldImplementation::bits_offset
size_type bits_offset() const
Definition: IdDictFieldImplementation.h:208
AtlasDetectorID::is_tile_dm
bool is_tile_dm(Identifier id) const
Definition: AtlasDetectorID.h:743
AtlasDetectorID::m_LAR_EM_ID
int m_LAR_EM_ID
Definition: AtlasDetectorID.h:414
LArOnlineID_Base::channel_Id
HWIdentifier channel_Id(int barrel_ec, int pos_neg, int feedthrough, int slot, int channel) const
create channel identifier from fields
Definition: LArOnlineID_Base.cxx:1569
plotBeamSpotVxVal.range
range
Definition: plotBeamSpotVxVal.py:194
checkCorrelInHIST.prefix
dictionary prefix
Definition: checkCorrelInHIST.py:391
LArOnlineID_Base::pos_neg
int pos_neg(const HWIdentifier id) const
Return the side of a hardware cell identifier pos_neg = [0,1] positive-side or negative-side Barrel...
Definition: LArOnlineID_Base.cxx:1954
mc.group_name
group_name
Definition: mc.PhPy8EG_A14NNPDF23_NNLOPS_example.py:33
LArOnlineID_Base::initLevelsFromDict
int initLevelsFromDict(const std::string &group_name)
Definition: LArOnlineID_Base.cxx:847
AtlasDetectorID::m_fwd_dict
IdDictDictionary * m_fwd_dict
Definition: AtlasDetectorID.h:442
LArOnlineID_Base::init_calib_hashes
int init_calib_hashes()
Definition: LArOnlineID_Base.cxx:1981
AtlasDetectorID::is_tile
bool is_tile(Identifier id) const
Definition: AtlasDetectorID.h:690
AtlasDetectorID::group
const std::string & group() const
Group name for this helper.
Definition: AtlasDetectorID.cxx:32
LArOnlineID_Base::m_channelHashMax
size_type m_channelHashMax
Definition: LArOnlineID_Base.h:489
AtlasDetectorID::m_TGC_ID
int m_TGC_ID
Definition: AtlasDetectorID.h:421
LArOnlineID_Base::m_full_calib_laronline_range
MultiRange m_full_calib_laronline_range
Definition: LArOnlineID_Base.h:496
AtlasDetectorID::m_CSC_ID
int m_CSC_ID
Definition: AtlasDetectorID.h:419
LArOnlineID_Base::febContext
IdContext febContext() const
Define context for feb.
Definition: LArOnlineID_Base.cxx:283
AtlasDetectorID::m_lvl1_onl_field
Range::field m_lvl1_onl_field
Definition: AtlasDetectorID.h:433
CaloCondBlobAlgs_fillNoiseFromASCII.channelId
channelId
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:121
AtlasDetectorID::m_quiet
bool m_quiet
If true, suppress DEBUG/INFO messages.
Definition: AtlasDetectorID.h:372
AtlasDetectorID::m_LAR_HEC_ID
int m_LAR_HEC_ID
Definition: AtlasDetectorID.h:415
LArOnlineID_Base::m_lar_index
size_type m_lar_index
Definition: LArOnlineID_Base.h:473
AthMessaging::msg
MsgStream & msg() const
The standard message stream.
Definition: AthMessaging.h:164
IdentifierField::isEnumerated
bool isEnumerated() const
Definition: IdentifierField.h:185
AtlasDetectorID::HelperType::Unimplemented
@ Unimplemented
LArOnlineID_Base::feb_Id
HWIdentifier feb_Id(int barrel_ec, int pos_neg, int feedthrough, int slot) const
Create feb_Id from fields.
Definition: LArOnlineID_Base.cxx:1483
SCT
Definition: SCT_ChipUtils.h:14
AtlasDetectorID::m_muon_rpc_impl
IdDictFieldImplementation m_muon_rpc_impl
Definition: AtlasDetectorID.h:451
AtlasDetDescr::fAtlasMM
@ fAtlasMM
Definition: AtlasDetTechnology.h:54
LArOnlineID_Base::m_feedthrough_index
size_type m_feedthrough_index
Definition: LArOnlineID_Base.h:477
AtlasDetectorID::m_SCT_ID
int m_SCT_ID
Definition: AtlasDetectorID.h:409
LArOnlineID_Base::m_bec_index
size_type m_bec_index
Definition: LArOnlineID_Base.h:475
AtlasDetDescr::fAtlasSTGC
@ fAtlasSTGC
Definition: AtlasDetTechnology.h:53
LArOnlineID_Base::channel_Hash_binary_search
IdentifierHash channel_Hash_binary_search(HWIdentifier channelId) const
Definition: LArOnlineID_Base.h:554
AtlasDetectorID::register_dict_tag
int register_dict_tag(const IdDictMgr &dict_mgr, const std::string &dict_name)
Register the file and tag names for a particular IdDict dictionary.
Definition: AtlasDetectorID.cxx:201
AtlasDetectorID::m_LAR_FCAL_ID
int m_LAR_FCAL_ID
Definition: AtlasDetectorID.h:416
AtlasDetectorID::is_calo
bool is_calo(Identifier id) const
Definition: AtlasDetectorID.h:702
AtlasDetectorID::m_MM_ID
int m_MM_ID
Definition: AtlasDetectorID.h:423
AtlasDetectorID::m_DET_INDEX
size_type m_DET_INDEX
Definition: AtlasDetectorID.h:400
AtlasDetectorID::tile_field_value
int tile_field_value() const
Definition: AtlasDetectorID.h:612
LArOnlineID_Base::feb_end
id_iterator feb_end() const
Definition: LArOnlineID_Base.cxx:1915
IdDictDictionary::get_label_value
int get_label_value(const std::string &field, const std::string &label, int &value) const
Definition: IdDictDictionary.cxx:75
LArOnlineID_Base::m_feedthrough_vec
std::vector< HWIdentifier > m_feedthrough_vec
Definition: LArOnlineID_Base.h:491
LArOnlineID_Base::m_lar_impl
IdDictFieldImplementation m_lar_impl
Field Implementation.
Definition: LArOnlineID_Base.h:504
grepfile.sep
sep
Definition: grepfile.py:38
AtlasDetectorID::print_to_string
std::string print_to_string(Identifier id, const IdContext *context=0) const
or provide the printout in string form
Definition: AtlasDetectorID.cxx:427
LArOnlineID::isEMECOW
bool isEMECOW(const HWIdentifier id) const override final
Definition: LArOnlineID.cxx:744
LArOnlineID_Base::feb_Hash_binary_search
IdentifierHash feb_Hash_binary_search(HWIdentifier channelId) const
Definition: LArOnlineID_Base.h:543
id
SG::auxid_t id
Definition: Control/AthContainers/Root/debug.cxx:239
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
LArOnlineID_Base::isEMECchannel
virtual bool isEMECchannel(const HWIdentifier id) const =0
python.subdetectors.mmg.ids
ids
Definition: mmg.py:8
ActsTrk::to_string
std::string to_string(const DetectorType &type)
Definition: GeometryDefs.h:34
AtlasDetectorID::m_indet_dict
IdDictDictionary * m_indet_dict
Definition: AtlasDetectorID.h:437
AtlasDetectorID::m_calo_side_impl
IdDictFieldImplementation m_calo_side_impl
Definition: AtlasDetectorID.h:446
AtlasDetectorID::is_indet
bool is_indet(Identifier id) const
Definition: AtlasDetectorID.h:678
AtlasDetectorID::m_dict_names
std::vector< std::string > m_dict_names
List of dictionary names used by this helper.
Definition: AtlasDetectorID.h:376
AtlasDetectorID::m_lar_dm_field
Range::field m_lar_dm_field
Definition: AtlasDetectorID.h:434
LArOnlineID_Base::calib_channel_end
id_iterator calib_channel_end() const
Definition: LArOnlineID_Base.h:710
AtlasDetectorID::setDictVersion
virtual void setDictVersion(const IdDictMgr &dict_mgr, const std::string &name) override
Definition: AtlasDetectorID.cxx:499
Range
A Range describes the possible ranges for the field values of an ExpandedIdentifier.
Definition: DetectorDescription/Identifier/Identifier/Range.h:29
LArOnlineID_Base::calib_channel_begin
id_iterator calib_channel_begin() const
Return an iterator pointing to a collection of calibration channel identifiers.
Definition: LArOnlineID_Base.h:705
AtlasDetectorID::fwd_exp
ExpandedIdentifier fwd_exp(void) const
Definition: AtlasDetectorID.h:515
AtlasDetectorID::m_muon_station_name_impl
IdDictFieldImplementation m_muon_station_name_impl
Definition: AtlasDetectorID.h:449
AtlasDetectorID::m_MDT_ID
int m_MDT_ID
Definition: AtlasDetectorID.h:418
LArOnlineID_Base::isEMBchannel
bool isEMBchannel(const HWIdentifier id) const
Definition: LArOnlineID_Base.cxx:1652
LArOnlineID_Base::m_chan_hash_calcs
std::vector< HashCalc > m_chan_hash_calcs
Definition: LArOnlineID_Base.h:532
IdDictDictionary
Definition: IdDictDictionary.h:30
LArOnlineID::init_H8Hashes
int init_H8Hashes()
Definition: LArOnlineID.cxx:405
LArOnlineID_Base::m_bec_impl
IdDictFieldImplementation m_bec_impl
Definition: LArOnlineID_Base.h:506
AtlasDetectorID::m_RPC_ID
int m_RPC_ID
Definition: AtlasDetectorID.h:420
LArOnlineID::is_H8
bool is_H8(const HWIdentifier channelId) const
Definition: LArOnlineID.h:75
IdentifierField::isBounded
bool isBounded() const
Definition: IdentifierField.h:184
LArOnlineID_Base::channel_Id_checks
void channel_Id_checks(int barrel_ec, int pos_neg, int feedthrough, int slot, int channel) const
Definition: LArOnlineID_Base.cxx:687
MultiRange::match
int match(const ExpandedIdentifier &id) const
Match an identifier.
Definition: MultiRange.cxx:57
AtlasDetDescr::fAtlasRPC
@ fAtlasRPC
Definition: AtlasDetTechnology.h:51
LArOnlineID_Base::feedthrough
int feedthrough(const HWIdentifier id) const
Return the feedthrough of a hardware cell identifier : feedthrough = [0,31] Barrel - A/C side or H/...
Definition: LArOnlineID_Base.cxx:1948
AtlasDetectorID::is_lumi
bool is_lumi(Identifier id) const
Definition: AtlasDetectorID.h:801
LArOnlineID_Base::feedthrough_Id_checks
void feedthrough_Id_checks(int barrel_ec, int pos_neg, int feedthrough) const
Definition: LArOnlineID_Base.cxx:775
AtlasDetectorID::reinitialize
bool reinitialize(const IdDictMgr &dict_mgr)
Test whether an idhelper should be reinitialized based on the change of tags.
Definition: AtlasDetectorID.cxx:221
LArOnlineID_Base::m_full_feb_range
MultiRange m_full_feb_range
Definition: LArOnlineID_Base.h:485
AtlasDetectorID::is_lar_dm
bool is_lar_dm(Identifier id) const
LAr/Tile dead material:
Definition: AtlasDetectorID.h:731
AtlasDetectorID::is_muon
bool is_muon(Identifier id) const
Definition: AtlasDetectorID.h:696
python.CaloAddPedShiftConfig.int
int
Definition: CaloAddPedShiftConfig.py:45
AtlasDetectorID::m_det_impl
IdDictFieldImplementation m_det_impl
Definition: AtlasDetectorID.h:444
CaloCell
Data object for each calorimeter readout cell.
Definition: CaloCell.h:57
AtlasDetectorID::show_to_string
std::string show_to_string(Identifier id, const IdContext *context=0, char sep='.') const
or provide the printout in string form
Definition: AtlasDetectorID.cxx:365
LArOnlineID_Base::m_feb_vec
std::vector< HWIdentifier > m_feb_vec
Definition: LArOnlineID_Base.h:492
IdDictDictionary::dict_tag
const std::string & dict_tag() const
Access to the dictionary tag.
Definition: IdDictDictionary.h:374
AtlasDetectorID::lar_exp
ExpandedIdentifier lar_exp(void) const
Definition: AtlasDetectorID.h:487
AtlasDetectorID::m_file_names
std::vector< std::string > m_file_names
List of dictionary file names used by this helper.
Definition: AtlasDetectorID.h:379
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
python.Constants.INFO
int INFO
Definition: Control/AthenaCommon/python/Constants.py:15
AtlasDetDescr::fAtlasCSC
@ fAtlasCSC
Definition: AtlasDetTechnology.h:50
LArOnlineID_Base::feedthrough_end
id_iterator feedthrough_end() const
Definition: LArOnlineID_Base.cxx:1441
LArOnlineID_Base::calib_module_begin
id_iterator calib_module_begin() const
Return an iterator pointing to a calibFeb identifier 's collection.
Definition: LArOnlineID_Base.h:689
LArOnlineID_Base::m_full_laronline_range
MultiRange m_full_laronline_range
Definition: LArOnlineID_Base.h:483
AthMessaging::m_nm
std::string m_nm
Message source name.
Definition: AthMessaging.h:129
MultiRange::size
size_type size() const
Definition: MultiRange.cxx:70
DeMoScan.first
bool first
Definition: DeMoScan.py:534
LArOnlineID_Base::isEMBPS
bool isEMBPS(const HWIdentifier id) const
Definition: LArOnlineID_Base.cxx:1665
AtlasDetDescr::fAtlasMDT
@ fAtlasMDT
Definition: AtlasDetTechnology.h:49
DEBUG
#define DEBUG
Definition: page_access.h:11
python.CaloCondTools.log
log
Definition: CaloCondTools.py:20
IdentifierField
This is the individual specification for the range of one ExpandedIdentifier IdentifierField.
Definition: IdentifierField.h:83
AtlasDetectorID::m_CALO_ID
int m_CALO_ID
Definition: AtlasDetectorID.h:407
AtlasDetectorID::m_ALFA_ID
int m_ALFA_ID
Definition: AtlasDetectorID.h:425
ExpandedIdentifier::clear
void clear()
Erase all fields.
AtlasDetectorID::m_MUON_ID
int m_MUON_ID
Definition: AtlasDetectorID.h:406
AtlasDetectorID::m_lar_dict
IdDictDictionary * m_lar_dict
Definition: AtlasDetectorID.h:438
Identifier::value_type
unsigned long long value_type
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:27
AtlasDetectorID::m_PIXEL_ID
int m_PIXEL_ID
Definition: AtlasDetectorID.h:408
AtlasDetectorID::is_lvl1_online
bool is_lvl1_online(Identifier id) const
Definition: AtlasDetectorID.h:719
LArOnlineID_Base::m_full_calib_module_range
MultiRange m_full_calib_module_range
Definition: LArOnlineID_Base.h:497
LArOnlineID_Base::m_slot_index
size_type m_slot_index
Definition: LArOnlineID_Base.h:478
IdDictRegion::index
size_t index() const
Definition: IdDictRegion.h:168
LArOnlineID_Base::calib_module_end
id_iterator calib_module_end() const
Definition: LArOnlineID_Base.h:694
AtlasDetDescr::fAtlasTGC
@ fAtlasTGC
Definition: AtlasDetTechnology.h:52
python.Constants.VERBOSE
int VERBOSE
Definition: Control/AthenaCommon/python/Constants.py:13
CaloCondBlobAlgs_fillNoiseFromASCII.fields
fields
Definition: CaloCondBlobAlgs_fillNoiseFromASCII.py:105
AthMessaging::initMessaging
void initMessaging() const
Initialize our message level and MessageSvc.
Definition: AthMessaging.cxx:39
IdDictField
Definition: IdDictField.h:15
MultiRange::cardinality
size_type cardinality() const
Computes a possible cardinality from all ranges.
Definition: MultiRange.cxx:82
LArOnlineID_Base::m_channel_in_slot_index
size_type m_channel_in_slot_index
Definition: LArOnlineID_Base.h:479
IdentifierHash
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
Definition: IdentifierHash.h:25
AtlasDetectorID::m_BCM_ID
int m_BCM_ID
Definition: AtlasDetectorID.h:426
Analysis::TT
@ TT
Definition: JpsiFinder.h:34
AthMessaging::m_msg_tls
boost::thread_specific_ptr< MsgStream > m_msg_tls
MsgStream instance (a std::cout like with print-out levels)
Definition: AthMessaging.h:132
LArOnlineID_Base::channel_name
std::string channel_name(const HWIdentifier id) const
Return a string corresponding to a feedthrough name given an identifier.
Definition: LArOnlineID_Base.cxx:225
LArOnlineID_Base::m_calib_module_vec
std::vector< HWIdentifier > m_calib_module_vec
Definition: LArOnlineID_Base.h:500
AtlasDetectorID::do_checks
virtual bool do_checks(void) const override
Checks are performed by default in debug compilation and NOT in optimized compilation.
Definition: AtlasDetectorID.cxx:476
LArOnlineID_Base::m_laronlineRegion_index
size_type m_laronlineRegion_index
Definition: LArOnlineID_Base.h:472
IdContext
This class saves the "context" of an expanded identifier (ExpandedIdentifier) for compact or hash ver...
Definition: IdContext.h:26
AtlasDetectorID::m_dict_tags
std::vector< std::string > m_dict_tags
List of dictionary versions used by this helper.
Definition: AtlasDetectorID.h:382
LArOnlineID_Base::calib_channel_Id
HWIdentifier calib_channel_Id(int barrel_ec, int pos_neg, int feedthrough, int slot, int channel) const
create calibration channel identifiers from fields
Definition: LArOnlineID_Base.h:616
AtlasDetectorID::m_SUBDET_INDEX
size_type m_SUBDET_INDEX
Definition: AtlasDetectorID.h:401
LArOnlineID_Base::m_bec_ft_impl
IdDictFieldImplementation m_bec_ft_impl
Definition: LArOnlineID_Base.h:511
LArOnlineID_Base::channel_begin
id_iterator channel_begin() const
Returns an iterator pointing to a channel identifier collection.
Definition: LArOnlineID_Base.cxx:1926
LArOnlineID_Base::feb_Hash
IdentifierHash feb_Hash(HWIdentifier febId) const
Create feb hash identifiers from feb identifiers.
Definition: LArOnlineID_Base.cxx:1516
AtlasDetectorID::m_FWD_ID
int m_FWD_ID
Definition: AtlasDetectorID.h:424
match
bool match(std::string s1, std::string s2)
match the individual directories of two strings
Definition: hcg.cxx:356
LArOnlineID_Base::feedthrough_Id
HWIdentifier feedthrough_Id(int barrel_ec, int pos_neg, int feedthrough) const
Create a feedthrough identifier from fields.
Definition: LArOnlineID_Base.cxx:1404
LArOnlineID_Base::m_this_is_slar
bool m_this_is_slar
Definition: LArOnlineID_Base.h:437
AtlasDetectorID::m_lvl1_field
Range::field m_lvl1_field
Definition: AtlasDetectorID.h:432
IdDictFieldImplementation::size_type
Identifier::size_type size_type
Definition: IdDictFieldImplementation.h:62
AtlasDetectorID::m_LUCID_ID
int m_LUCID_ID
Definition: AtlasDetectorID.h:427
LArOnlineID_Base::init_hashes
int init_hashes()
Definition: LArOnlineID_Base.cxx:1130
IdDictFieldImplementation::bits
size_type bits() const
Definition: IdDictFieldImplementation.h:202
python.SystemOfUnits.ms
float ms
Definition: SystemOfUnits.py:148
Identifier
Definition: IdentifierFieldParser.cxx:14