 |
ATLAS Offline Software
|
Base class to factor out code common among Calo ID helpers.
More...
#include <CaloIDHelper.h>
|
| enum | { NOT_VALID =999999
} |
| |
| typedef Identifier::size_type | size_type |
| |
| typedef std::vector< Identifier >::const_iterator | id_iterator |
| | Type for iterators over identifiers. More...
|
| |
| typedef boost::iterator_range< id_iterator > | id_range |
| | 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...
|
| |
|
| | CaloIDHelper (const std::string &name, const std::string &group) |
| | Constructor. More...
|
| |
| const HashGroup & | channels () const |
| | Return the HashGroup for channels (cells). More...
|
| |
| const HashGroup & | regions () const |
| | Return the HashGroup for regions. More...
|
| |
| Identifier | channel_id (IdentifierHash hashId) const |
| | Return the channel (cell) Identifier for a given hash code (no checking). More...
|
| |
| Identifier | region_id (IdentifierHash hashId) const |
| | Return the region Identifier for a given hash code (no checking). More...
|
| |
| IdentifierHash | channel_hash (Identifier channelId) const |
| | Convert a connected channel (cell) Identifier to a hash code. More...
|
| |
| IdentifierHash | region_hash (Identifier regionId) const |
| | Convert a connected region Identifier to a hash code. More...
|
| |
| virtual int | get_id (const IdentifierHash &hash_id, Identifier &id, const IdContext *context=0) const |
| | Convert a hash code to an Identifier for either channels or regions, depending on the context. More...
|
| |
| virtual int | get_hash (const Identifier &id, IdentifierHash &hash_id, const IdContext *context=0) const |
| | Convert an Identifier to a hash code for either channels or regions, depending on the context. More...
|
| |
| size_type | channel_hash_max () const |
| | One more than the largest channel (cell) hash code. More...
|
| |
| size_type | region_hash_max () const |
| | One more than the largest region hash code. More...
|
| |
| IdContext | channel_context () const |
| | Return the context for channels (cells). More...
|
| |
| IdContext | region_context () const |
| | Return the context for regions. More...
|
| |
| const std::vector< const IdDictRegion * > & | dictRegions () const |
| | Return the vector of IdDictRegion, accessed via region hash. More...
|
| |
| float | etaGranularity (const IdentifierHash regHash) const |
| | Return the eta granularity of a region, or NOT_VALID. More...
|
| |
| float | phiGranularity (const IdentifierHash regHash) const |
| | Return the phi granularity of a region, or NOT_VALID. More...
|
| |
| float | eta0 (const IdentifierHash regHash) const |
| | Return the minimum eta of region, or NOT_VALID. More...
|
| |
| float | phi0 (const IdentifierHash regHash) const |
| | Return the minimum phi of region, or NOT_VALID. More...
|
| |
| const std::string & | name () const |
| | Return the name for this helper. More...
|
| |
| IMessageSvc * | msgSvc () |
| | Return the message service for this helper (may be null). 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...
|
| |
Base class to factor out code common among Calo ID helpers.
Definition at line 32 of file CaloIDHelper.h.
◆ id_iterator
Type for iterators over identifiers.
Definition at line 42 of file CaloIDHelper.h.
◆ id_range
◆ size_type
◆ anonymous enum
◆ HelperType
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.
60 LArEM, LArFCal, LArFCalSuperCell,
61 LArHEC, LArHEC_SuperCell, LARMiniFCal,
65 LArOnline, LArOnlineSuperCell,
67 LArElectrode, LArHVLine,
68 TileHardware, TileTestbeam,
75 LUCID, LUCID_Hardware,
◆ ID
◆ CaloIDHelper()
| CaloIDHelper::CaloIDHelper |
( |
const std::string & |
name, |
|
|
const std::string & |
group |
|
) |
| |
Constructor.
Makes an uninitialized helper. To initialize, call initialize_base_from_dictionary, followed by init_channels and init_regions, and optionally fill_vec_of_dict_regions.
- Parameters
-
| name | Name of this helper (for error reporting). |
Makes an uninitialized helper. To initialize, call initialize_base_from_dictionary, followed by init_channels and init_regions.
- Parameters
-
| name | Name of this helper (for error reporting). |
Definition at line 99 of file CaloIDHelper.cxx.
◆ alfa_exp()
◆ alfa_field_value()
| int AtlasDetectorID::alfa_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ bcm_exp()
◆ bcm_field_value()
| int AtlasDetectorID::bcm_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ calo()
◆ calo_exp()
◆ calo_field_value()
| int AtlasDetectorID::calo_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ channel_context()
| IdContext CaloIDHelper::channel_context |
( |
| ) |
const |
Return the context for channels (cells).
◆ channel_hash()
Convert a connected channel (cell) Identifier to a hash code.
Some subdetector helpers may override this with a faster version.
◆ channel_hash_max()
| size_type CaloIDHelper::channel_hash_max |
( |
| ) |
const |
One more than the largest channel (cell) hash code.
◆ channel_id()
Return the channel (cell) Identifier for a given hash code (no checking).
◆ channels() [1/2]
Return the HashGroup for channels (cells). non-const.
◆ channels() [2/2]
◆ csc()
◆ csc_field_value()
| int AtlasDetectorID::csc_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ detsystem_context()
| IdContext AtlasDetectorID::detsystem_context |
( |
void |
| ) |
const |
|
inherited |
◆ dict()
Return the dictionary for this subdetector.
◆ dict_names()
| const std::vector< std::string > & AtlasDetectorID::dict_names |
( |
void |
| ) |
const |
|
inherited |
◆ dict_tags()
| const std::vector< std::string > & AtlasDetectorID::dict_tags |
( |
void |
| ) |
const |
|
inherited |
◆ dictionaryVersion()
| std::string AtlasDetectorID::dictionaryVersion |
( |
void |
| ) |
const |
|
overridevirtualinherited |
◆ dictRegions()
Return the vector of IdDictRegion, accessed via region hash.
◆ 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.
◆ 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.
◆ eta0()
Return the minimum eta of region, or NOT_VALID.
- Parameters
-
Definition at line 209 of file CaloIDHelper.cxx.
◆ etaGranularity()
Return the eta granularity of a region, or NOT_VALID.
- Parameters
-
Definition at line 187 of file CaloIDHelper.cxx.
◆ file_names()
| const std::vector< std::string > & AtlasDetectorID::file_names |
( |
void |
| ) |
const |
|
inherited |
◆ fill_vec_of_dict_regions()
| int CaloIDHelper::fill_vec_of_dict_regions |
( |
const std::string & |
group_name = "" | ) |
|
|
protected |
Initialize the list of detector regions.
init_regions should have been called first.
- Parameters
-
| group_name | The group for this helper. |
- Returns
- 0 on success; non-zero on failure.
Definition at line 261 of file CaloIDHelper.cxx.
◆ 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 |
◆ fwd_exp()
◆ get_expanded_id()
◆ get_hash()
Convert an Identifier to a hash code for either channels or regions, depending on the context.
Uses binary search. Some of the subdetector-specific helpers define faster versions of channel_hash and region_hash (that, however, do less checking).
- Parameters
-
| id | The identifier to convert. |
| [out] | hash_id | The resulting hash code. Will be invalid if there was an error. |
| context | The context in which to do the conversion (specifies whether we want channels or regions). |
- Returns
- 0 for success, non-zero for failure (unrecognized context or Identifier.
Reimplemented from AtlasDetectorID.
Reimplemented in Tile_Base_ID.
Definition at line 163 of file CaloIDHelper.cxx.
171 const HashGroup* hg =
nullptr;
◆ get_id()
Convert a hash code to an Identifier for either channels or regions, depending on the context.
If you know the context at compile-time, channel_id and region_id will be faster (but they don't do range checking).
- Parameters
-
| hash_id | The hash code to convert. |
| [out] | id | The resulting Identifier. Will be invalid if there was an error. |
| context | The context in which to do the conversion (specifies whether we want channels or regions). |
- Returns
- 0 for success, non-zero for failure (unrecognized context, or hash code out of range).
Reimplemented from AtlasDetectorID.
Reimplemented in Tile_Base_ID.
Definition at line 121 of file CaloIDHelper.cxx.
132 const HashGroup* hg =
nullptr;
137 if (hash_id < hg->hash_max()) {
138 id = hg->
id (hash_id);
◆ group()
| const std::string & AtlasDetectorID::group |
( |
| ) |
const |
|
inherited |
◆ helper()
| virtual HelperType AtlasDetectorID::helper |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ hgtd()
◆ hgtd_exp()
◆ hgtd_field_value()
| int AtlasDetectorID::hgtd_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ indet()
◆ indet_exp()
◆ 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.
◆ initialize_base_from_dictionary()
| int CaloIDHelper::initialize_base_from_dictionary |
( |
const IdDictMgr & |
dict_mgr, |
|
|
const std::string & |
dict_name |
|
) |
| |
|
protected |
Do basic initialization of the helper.
- Parameters
-
| dict_mgr | The dictionary manager returned from the parser. |
| dict_name | The dictionary name (eg, ‘LArCalorimeter’). |
- Returns
- 0 on success, non-zero on failure.
Definition at line 234 of file CaloIDHelper.cxx.
246 log << MSG::ERROR <<
" cannot access " << dict_name <<
"dictionary"
◆ initialize_from_dictionary()
| int AtlasDetectorID::initialize_from_dictionary |
( |
const IdDictMgr & |
dict_mgr | ) |
|
|
overridevirtualinherited |
Initialization from the identifier dictionary.
Implements IdHelper.
Reimplemented in SCT_ID, TRT_ID, SiliconID, LArOnline_SuperCellID, PixelID, MuonIdHelper, MdtIdHelper, CaloCell_Base_ID, sTgcIdHelper, CscIdHelper, MmIdHelper, TgcIdHelper, RpcIdHelper, PLR_ID, LArOnlineID_Base, CaloDM_ID, TileHWID, TileTBID, HGTD_ID, LArMiniFCAL_ID, CaloLVL1_ID, LArElectrodeID, LArEM_SuperCell_ID, LArEM_ID, TTOnlineID, ZdcID, LArHEC_ID, LArHVLineID, TileID, Tile_SuperCell_ID, LArHEC_SuperCell_ID, LArFCAL_ID, CaloCell_ID, LArFCAL_SuperCell_ID, GTower_ID, JTower_ID, and LArOnlineID.
Definition at line 255 of file AtlasDetectorID.cxx.
259 ATH_MSG_ERROR(__func__<<
":"<<__LINE__<<
" - Failed to register dict tag");
264 m_helper = std::make_unique<AtlasDetectorIDHelper>().release();
268 ATH_MSG_ERROR(__func__<<
":"<<__LINE__<<
" - Initialization from dictionary failed.");
273 ATH_MSG_ERROR(__func__<<
":"<<__LINE__<<
" - Level initialization from dictionary failed.");
◆ initLevelsFromDict()
Definition at line 518 of file AtlasDetectorID.cxx.
562 auto assignSystemId = [
this, &
field](
const std::string& systemName,
564 bool mandatory =
true) ->
bool {
567 idToAssign =
label->value();
568 ATH_MSG_VERBOSE(
"Assign system "<<systemName<<
" to "<<idToAssign<<
".");
571 ATH_MSG_ERROR(
"initLevelsFromDict - label "<<systemName<<
" does NOT have a value ");
575 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find '"<<systemName<<
"' label");
578 ATH_MSG_DEBUG(
"initLevelsFromDict - unable to find '"<<systemName<<
"' label");
586 ATH_MSG_WARNING(
"initLevelsFromDict - cannot access InnerDetector dictionary");
593 m_isHighLuminosityLHC = (versionString.find(
"ITk") != std::string::npos || versionString.find(
"P2-RUN4") != std::string::npos);
598 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find 'part' field for InnerDetector dictionary");
605 if (!assignSystemId(
"SCT",
m_SCT_ID)) {
612 if (!assignSystemId(
"LuminosityDetectors",
m_LUMI_ID, versionString.find(
"PLR") != std::string::npos ||
613 versionString.find(
"P2-RUN4") != std::string::npos)) {
624 ATH_MSG_WARNING(
"initLevelsFromDict - cannot access ForwardDetectors dictionary");
636 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find 'part' field for ForwardDetectors dictionary");
639 if (!assignSystemId(
"ALFA",
m_ALFA_ID)) {
642 if (!assignSystemId(
"BCM",
m_BCM_ID)) {
648 if (!assignSystemId(
"ZDC",
m_ZDC_ID)) {
656 ATH_MSG_WARNING(
"initLevelsFromDict - cannot access LArCalorimeter dictionary");
665 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find 'part' field for LArCalorimeter dictionary");
681 ATH_MSG_DEBUG(
"initLevelsFromDict - unable to find 'module' field for miniFCAL");
688 ATH_MSG_WARNING(
"initLevelsFromDict - cannot access TileCalorimeter dictionary");
698 ATH_MSG_WARNING(
"initLevelsFromDict - cannot access MuonSpectrometer dictionary");
717 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find 'stationName' field for MuonSpectrometer dictionary");
722 std::string stationNameString{};
725 int stationNameIndex{};
726 int maxStationNameIndex{-1};
731 stationNameIndex =
label.valued() ?
label.value() :
i;
733 maxStationNameIndex =
std::max(maxStationNameIndex, stationNameIndex);
744 stationNameString =
label.name();
747 stationNameIndex =
label.valued() ?
label.value() :
i;
750 bool found{
false}, stationNameFound{
false}, technologyFound{
false};
751 std::string techLabel{};
753 for (
size_type j = 0; j < nregions; ++j) {
757 stationNameFound = technologyFound =
false;
766 if (
range->field_name() ==
"stationName") {
768 if (
range->label() == stationNameString) {
770 stationNameFound =
true;
777 }
else if (
range->field_name() ==
"technology") {
778 technologyFound =
true;
779 techLabel =
range->label();
782 if (!stationNameFound || !technologyFound) {
787 if (techLabel ==
"MDT") {
789 }
else if (techLabel ==
"RPC") {
791 }
else if (techLabel ==
"CSC") {
793 }
else if (techLabel ==
"TGC"){
795 }
else if (techLabel ==
"MM") {
797 }
else if (techLabel ==
"STGC") {
824 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find 'technology' field for MuonSpectrometer dictionary");
828 if (!assignSystemId(
"MDT",
m_MDT_ID)) {
831 if (!assignSystemId(
"RPC",
m_RPC_ID)) {
834 if (!assignSystemId(
"TGC",
m_TGC_ID)) {
837 if (!assignSystemId(
"STGC",
m_STGC_ID,
false)) {
840 if (!assignSystemId(
"MM",
m_MM_ID,
false)) {
843 if (!assignSystemId(
"CSC",
m_CSC_ID,
false)) {
851 ATH_MSG_WARNING(
"initLevelsFromDict - Warning cannot access Calorimeter dictionary");
862 ATH_MSG_ERROR(
"initLevelsFromDict - Could not get value for label 'negative_lvl1_side' of field 'DetZside' in dictionary " <<
m_calo_dict->
name());
868 ATH_MSG_ERROR(
"initLevelsFromDict - Could not get value for label 'positive_lvl1_side' of field 'DetZside' in dictionary " <<
m_calo_dict->
name());
876 ATH_MSG_ERROR(
"initLevelsFromDict - Could not get value for label 'negative_DMLar_side' of field 'DetZside' in dictionary " <<
m_calo_dict->
name());
882 ATH_MSG_ERROR(
"initLevelsFromDict - Could not get value for label 'positive_DMLar_side' of field 'DetZside' in dictionary " <<
m_calo_dict->
name());
891 ATH_MSG_ERROR(
"initLevelsFromDict - Could not get value for label 'negative_DMTile_side' of field 'DetZside' in dictionary " <<
m_calo_dict->
name());
897 ATH_MSG_ERROR(
"initLevelsFromDict - Could not get value for label 'positive_DMTile_side' of field 'DetZside' in dictionary " <<
m_calo_dict->
name());
905 ATH_MSG_DEBUG(
"initLevelsFromDict - Could not get value for label 'no_side' of field 'DetZside' in dictionary " <<
m_calo_dict->
name());
914 field = top_dict->find_field(
"subdet");
918 ATH_MSG_ERROR(
"initLevelsFromDict - - unable to find 'subdet' field from dict "
919 << top_dict->name());
923 if (!assignSystemId(
"InnerDetector",
m_INDET_ID)) {
926 if (!assignSystemId(
"ForwardDetectors",
m_FWD_ID)) {
929 if (!assignSystemId(
"LArCalorimeter",
m_LAR_ID)) {
932 if (!assignSystemId(
"TileCalorimeter",
m_TILE_ID)) {
936 if (!assignSystemId(
"MuonSpectrometer",
m_MUON_ID)) {
939 if (!assignSystemId(
"Calorimeter",
m_CALO_ID)) {
944 if (top_dict->name() ==
"InnerDetector") {
946 }
else if (top_dict->name() ==
"Calorimeter") {
948 }
else if (top_dict->name() ==
"LArCalorimeter") {
950 }
else if (top_dict->name() ==
"MuonSpectrometer") {
951 name =
"stationName";
952 }
else if (top_dict->name() ==
"TileCalorimeter") {
954 }
else if (top_dict->name() ==
"ForwardDetectors") {
964 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find field " <<
name <<
" from dict "<< top_dict->name());
968 ATH_MSG_ERROR(
"initLevelsFromDict - no top dictionary defined");
986 ATH_MSG_ERROR(
"initLevelsFromDict - ERROR det implementation is not enumerated: "
◆ 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.
◆ is_alfa()
| bool AtlasDetectorID::is_alfa |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_bcm()
| bool AtlasDetectorID::is_bcm |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_calo() [1/2]
◆ is_calo() [2/2]
| bool AtlasDetectorID::is_calo |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_csc() [1/2]
◆ is_csc() [2/2]
| bool AtlasDetectorID::is_csc |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_forward()
| bool AtlasDetectorID::is_forward |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_hgtd() [1/2]
◆ is_hgtd() [2/2]
| bool AtlasDetectorID::is_hgtd |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_indet() [1/2]
◆ is_indet() [2/2]
| bool AtlasDetectorID::is_indet |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lar() [1/2]
◆ is_lar() [2/2]
| bool AtlasDetectorID::is_lar |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lar_dm()
| bool AtlasDetectorID::is_lar_dm |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lar_em() [1/2]
◆ is_lar_em() [2/2]
| bool AtlasDetectorID::is_lar_em |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lar_fcal() [1/2]
◆ is_lar_fcal() [2/2]
| bool AtlasDetectorID::is_lar_fcal |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lar_hec() [1/2]
◆ is_lar_hec() [2/2]
| bool AtlasDetectorID::is_lar_hec |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lar_minifcal() [1/2]
◆ is_lar_minifcal() [2/2]
| bool AtlasDetectorID::is_lar_minifcal |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lucid()
| bool AtlasDetectorID::is_lucid |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lumi() [1/2]
◆ is_lumi() [2/2]
| bool AtlasDetectorID::is_lumi |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lvl1_online()
| bool AtlasDetectorID::is_lvl1_online |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_lvl1_trig_towers()
| bool AtlasDetectorID::is_lvl1_trig_towers |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_mdt() [1/2]
◆ is_mdt() [2/2]
| bool AtlasDetectorID::is_mdt |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_mm() [1/2]
◆ is_mm() [2/2]
| bool AtlasDetectorID::is_mm |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_muon() [1/2]
◆ is_muon() [2/2]
| bool AtlasDetectorID::is_muon |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_pixel() [1/2]
◆ is_pixel() [2/2]
| bool AtlasDetectorID::is_pixel |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_plr() [1/2]
◆ is_plr() [2/2]
| bool AtlasDetectorID::is_plr |
( |
Identifier |
id | ) |
const |
|
inherited |
◆ is_rpc() [1/2]
◆ is_rpc() [2/2]
| bool AtlasDetectorID::is_rpc |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_sct() [1/2]
◆ is_sct() [2/2]
| bool AtlasDetectorID::is_sct |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_stgc() [1/2]
◆ is_stgc() [2/2]
| bool AtlasDetectorID::is_stgc |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_tgc() [1/2]
◆ is_tgc() [2/2]
| bool AtlasDetectorID::is_tgc |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_tile() [1/2]
◆ is_tile() [2/2]
| bool AtlasDetectorID::is_tile |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_tile_dm()
| bool AtlasDetectorID::is_tile_dm |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_trt() [1/2]
◆ is_trt() [2/2]
| bool AtlasDetectorID::is_trt |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_zdc()
| bool AtlasDetectorID::is_zdc |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ lar()
◆ lar_dm()
◆ lar_em()
◆ lar_em_exp()
◆ lar_em_field_value()
| int AtlasDetectorID::lar_em_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ lar_exp()
◆ lar_fcal()
| Identifier AtlasDetectorID::lar_fcal |
( |
void |
| ) |
const |
|
inherited |
◆ lar_fcal_exp()
◆ lar_fcal_field_value()
| int AtlasDetectorID::lar_fcal_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ lar_field_value()
| int AtlasDetectorID::lar_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ lar_hec()
| Identifier AtlasDetectorID::lar_hec |
( |
void |
| ) |
const |
|
inherited |
◆ lar_hec_exp()
◆ lar_hec_field_value()
| int AtlasDetectorID::lar_hec_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ lar_lvl1()
| Identifier AtlasDetectorID::lar_lvl1 |
( |
void |
| ) |
const |
|
inherited |
◆ lucid_exp()
◆ lucid_field_value()
| int AtlasDetectorID::lucid_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ lumi()
◆ lumi_exp()
◆ lumi_field_value()
| int AtlasDetectorID::lumi_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ mdt()
◆ mdt_field_value()
| int AtlasDetectorID::mdt_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ mm()
◆ mm_field_value()
| int AtlasDetectorID::mm_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ 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.
◆ 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
-
| lvl | The message level to test against |
- Returns
- boolean Indicating if messages at given level will be printed
- Return values
-
| true | Messages at level "lvl" will be printed |
Definition at line 151 of file AthMessaging.h.
◆ msgSvc()
| IMessageSvc* CaloIDHelper::msgSvc |
( |
| ) |
|
Return the message service for this helper (may be null).
◆ muon()
◆ muon_exp()
◆ muon_field_value()
| int AtlasDetectorID::muon_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ name()
| const std::string& CaloIDHelper::name |
( |
| ) |
const |
Return the name for this helper.
◆ phi0()
Return the minimum phi of region, or NOT_VALID.
- Parameters
-
Definition at line 220 of file CaloIDHelper.cxx.
◆ phiGranularity()
Return the phi granularity of a region, or NOT_VALID.
- Parameters
-
Definition at line 198 of file CaloIDHelper.cxx.
◆ pixel()
◆ pixel_exp()
◆ pixel_field_value()
| int AtlasDetectorID::pixel_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ plr_field_value()
| int AtlasDetectorID::plr_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ print()
◆ print_to_string()
or provide the printout in string form
Definition at line 427 of file AtlasDetectorID.cxx.
434 unsigned int max_index = (context) ? context->
end_index() : 999;
458 ATH_MSG_WARNING(__func__<<
":"<<__LINE__<<
" No dictionary could be associated to "<<
id);
◆ region_context()
| IdContext CaloIDHelper::region_context |
( |
| ) |
const |
Return the context for regions.
◆ region_hash()
Convert a connected region Identifier to a hash code.
Some subdetector helpers may override this with a faster version.
◆ region_hash_max()
| size_type CaloIDHelper::region_hash_max |
( |
| ) |
const |
One more than the largest region hash code.
◆ region_id()
Return the region Identifier for a given hash code (no checking).
◆ regions() [1/2]
◆ regions() [2/2]
◆ register_dict_tag()
| int AtlasDetectorID::register_dict_tag |
( |
const IdDictMgr & |
dict_mgr, |
|
|
const std::string & |
dict_name |
|
) |
| |
|
protectedinherited |
◆ reinitialize()
Test whether an idhelper should be reinitialized based on the change of tags.
Definition at line 221 of file AtlasDetectorID.cxx.
232 ATH_MSG_ERROR(
"reinitialize: dict names and tags vectors not the same length ");
◆ rpc()
◆ rpc_field_value()
| int AtlasDetectorID::rpc_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ sct()
◆ sct_exp()
◆ sct_field_value()
| int AtlasDetectorID::sct_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ set_do_checks()
| void AtlasDetectorID::set_do_checks |
( |
bool |
do_checks | ) |
|
|
overridevirtualinherited |
◆ set_do_neighbours()
| void AtlasDetectorID::set_do_neighbours |
( |
bool |
do_neighbours | ) |
|
|
overridevirtualinherited |
◆ set_quiet()
| void AtlasDetectorID::set_quiet |
( |
bool |
quiet | ) |
|
|
inherited |
◆ setDictVersion()
|
|
overrideprotectedvirtualinherited |
◆ setLevel()
| void AthMessaging::setLevel |
( |
MSG::Level |
lvl | ) |
|
|
inherited |
◆ setMessageSvc()
| void AtlasDetectorID::setMessageSvc |
( |
IMessageSvc * |
msgSvc | ) |
|
|
overridevirtualinherited |
◆ show()
Short print out of any identifier (optionally provide separation character - default is '.
'):
Definition at line 359 of file AtlasDetectorID.cxx.
◆ show_to_string()
or provide the printout in string form
Definition at line 365 of file AtlasDetectorID.cxx.
368 std::string
result(
"Unable to decode id");
369 unsigned int max_index = (context) ? context->
end_index() : 999;
371 if (!
id.is_valid()) {
403 if (dict->unpack(
m_group, compact,
prefix, max_index, expId)) {
411 for (
unsigned int i = 0;
i < expId.fields(); ++
i) {
◆ stgc()
◆ stgc_field_value()
| int AtlasDetectorID::stgc_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ subdet_context()
| IdContext AtlasDetectorID::subdet_context |
( |
void |
| ) |
const |
|
inherited |
◆ tgc()
◆ tgc_field_value()
| int AtlasDetectorID::tgc_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ tile()
◆ tile_dm()
| Identifier AtlasDetectorID::tile_dm |
( |
void |
| ) |
const |
|
inherited |
◆ tile_exp()
◆ tile_field_value()
| int AtlasDetectorID::tile_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ to_range()
◆ trt()
◆ trt_exp()
◆ trt_field_value()
| int AtlasDetectorID::trt_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ zdc_exp()
◆ zdc_field_value()
| int AtlasDetectorID::zdc_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ ATLAS_THREAD_SAFE
| std::atomic_flag m_initialized AthMessaging::ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
|
mutableprivateinherited |
◆ m_ALFA_ID
| int AtlasDetectorID::m_ALFA_ID {1} |
|
privateinherited |
◆ m_atlas_dict
◆ m_BCM_ID
| int AtlasDetectorID::m_BCM_ID {3} |
|
privateinherited |
◆ m_calo_dict
◆ m_CALO_ID
| int AtlasDetectorID::m_CALO_ID {10} |
|
privateinherited |
◆ m_calo_side_impl
◆ m_channels
◆ m_CSC_ID
| int AtlasDetectorID::m_CSC_ID {1} |
|
privateinherited |
◆ m_det_impl
◆ m_DET_INDEX
◆ m_dict
◆ m_dict_names
| std::vector<std::string> AtlasDetectorID::m_dict_names |
|
protectedinherited |
◆ m_dict_tags
| std::vector<std::string> AtlasDetectorID::m_dict_tags |
|
protectedinherited |
◆ m_dict_version
| std::string AtlasDetectorID::m_dict_version |
|
privateinherited |
◆ 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_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_fwd_dict
◆ m_FWD_ID
| int AtlasDetectorID::m_FWD_ID {13} |
|
privateinherited |
◆ m_fwd_part_impl
◆ m_group
| std::string AtlasDetectorID::m_group |
|
protectedinherited |
◆ m_helper
◆ m_HGTD_ID
| int AtlasDetectorID::m_HGTD_ID {4} |
|
privateinherited |
◆ m_imsg
| std::atomic<IMessageSvc*> AthMessaging::m_imsg { nullptr } |
|
mutableprivateinherited |
◆ m_indet_dict
◆ m_INDET_ID
| int AtlasDetectorID::m_INDET_ID {2} |
|
privateinherited |
◆ m_indet_part_impl
◆ m_is_initialized_from_dict
| bool AtlasDetectorID::m_is_initialized_from_dict {} |
|
privateinherited |
◆ m_isHighLuminosityLHC
| bool AtlasDetectorID::m_isHighLuminosityLHC {} |
|
privateinherited |
◆ m_lar_dict
◆ m_lar_dm_field
◆ m_LAR_EM_ID
| int AtlasDetectorID::m_LAR_EM_ID {1} |
|
privateinherited |
◆ m_LAR_FCAL_ID
| int AtlasDetectorID::m_LAR_FCAL_ID {3} |
|
privateinherited |
◆ m_lar_fcal_module_impl
◆ m_LAR_FCAL_MODULE_INDEX
| int AtlasDetectorID::m_LAR_FCAL_MODULE_INDEX {999} |
|
privateinherited |
◆ m_LAR_HEC_ID
| int AtlasDetectorID::m_LAR_HEC_ID {2} |
|
privateinherited |
◆ m_LAR_ID
| int AtlasDetectorID::m_LAR_ID {4} |
|
privateinherited |
◆ m_lar_part_impl
◆ m_LUCID_ID
| int AtlasDetectorID::m_LUCID_ID {5} |
|
privateinherited |
◆ m_LUMI_ID
| int AtlasDetectorID::m_LUMI_ID {3} |
|
privateinherited |
◆ m_LUMI_PLR_ID
| int AtlasDetectorID::m_LUMI_PLR_ID {1} |
|
privateinherited |
◆ m_lvl
| std::atomic<MSG::Level> AthMessaging::m_lvl { MSG::NIL } |
|
mutableprivateinherited |
◆ m_lvl1_field
◆ m_lvl1_onl_field
◆ m_MDT_ID
| int AtlasDetectorID::m_MDT_ID {0} |
|
privateinherited |
◆ m_MM_ID
| int AtlasDetectorID::m_MM_ID {5} |
|
privateinherited |
◆ 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 |
◆ m_muon_dict
◆ m_MUON_ID
| int AtlasDetectorID::m_MUON_ID {7} |
|
privateinherited |
◆ m_muon_mdt_impl
◆ m_muon_rpc_impl
◆ m_muon_station_name_impl
◆ m_MUON_SUBDET_INDEX
| size_type AtlasDetectorID::m_MUON_SUBDET_INDEX {999} |
|
privateinherited |
◆ m_muon_tech_bits
| std::vector<unsigned int> AtlasDetectorID::m_muon_tech_bits |
|
privateinherited |
◆ m_name
| std::string CaloIDHelper::m_name |
|
private |
◆ m_nm
| std::string AthMessaging::m_nm |
|
privateinherited |
◆ m_PIXEL_ID
| int AtlasDetectorID::m_PIXEL_ID {1} |
|
privateinherited |
◆ m_quiet
| bool AtlasDetectorID::m_quiet {} |
|
protectedinherited |
◆ m_regions
◆ m_RPC_ID
| int AtlasDetectorID::m_RPC_ID {2} |
|
privateinherited |
◆ m_SCT_ID
| int AtlasDetectorID::m_SCT_ID {2} |
|
privateinherited |
◆ m_STGC_ID
| int AtlasDetectorID::m_STGC_ID {4} |
|
privateinherited |
◆ m_SUBDET_INDEX
| size_type AtlasDetectorID::m_SUBDET_INDEX {999} |
|
privateinherited |
◆ m_TGC_ID
| int AtlasDetectorID::m_TGC_ID {3} |
|
privateinherited |
◆ m_tile_dict
◆ m_tile_dm_field
◆ m_TILE_ID
| int AtlasDetectorID::m_TILE_ID {5} |
|
privateinherited |
◆ m_TRT_ID
| int AtlasDetectorID::m_TRT_ID {3} |
|
privateinherited |
◆ m_vecOfDictRegions
◆ m_ZDC_ID
| int AtlasDetectorID::m_ZDC_ID {7} |
|
privateinherited |
The documentation for this class was generated from the following files:
IdDictRegion * find_region(const std::string ®ion_name) const
bool is_pixel(Identifier id) const
std::atomic< MSG::Level > m_lvl
Current logging level.
IdDictDictionary * m_muon_dict
int indet_field_value() const
Provide efficient access to individual field values, for subclass idhelpers.
std::string m_name
Name of this helper.
bool is_forward(Identifier id) const
std::vector< unsigned int > m_muon_tech_bits
virtual int initialize_from_dictionary(const IdDictMgr &dict_mgr) override
Initialization from the identifier dictionary.
size_type lar_fcal_region_index() const
IdDictFieldImplementation m_indet_part_impl
AtlasDetectorIDHelper * m_helper
const std::string & version() const
Dictionary version.
bool is_lar_fcal(Identifier id) const
std::string show_to_string(void) const
bool is_lar(Identifier id) const
int muon_field_value() const
const IdDictRegion & region(size_t i) const
Region at index i.
AtlasDetectorID(const std::string &name, const std::string &group)
size_type lvl1_region_index() const
size_type end_index() const
Return the ending index of the context for this group.
size_type end_index() const
int calo_field_value() const
IdContext region_context() const
Return the context for regions.
Identifier id(IdentifierHash hashId) const
Return the identifier for a given hash code (no checking).
void pack(int value, Identifier &id) const
IdDictDictionary * m_tile_dict
size_type pixel_region_index() const
IMessageSvc * m_msgSvc
pointer to the message service
std::string m_dict_version
bool m_do_checks
Flag for subclasses to know whether or not to perform checks.
static constexpr value_type MAX_BIT
size_type m_MUON_SUBDET_INDEX
const std::string & name() const
Dictionary name.
int m_LAR_FCAL_MODULE_INDEX
#define ATH_MSG_VERBOSE(x)
int lar_field_value() const
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
std::atomic< IMessageSvc * > m_imsg
MessageSvc pointer.
int unpack(Identifier id) const
Identifier manipulation methods.
int get_hash(Identifier id, IdentifierHash &hash_id) const
Look up the hash code corresponding to an Identifier.
const std::string & file_name() const
Access to file name.
virtual bool do_neighbours(void) const override
Neighbour initialization is performed by default One can switch or query this mode for any idHelper w...
IMessageSvc * getMessageSvc(bool quiet=false)
IdDictField * find_field(const std::string &name) const
size_type mdt_region_index() const
bool is_lvl1_trig_towers(Identifier id) const
const HashGroup & regions() const
Return the HashGroup for regions.
bool m_do_neighbours
Flag for subclasses to know whether or not to perform neighbour initialization.
Identifier::size_type size_type
std::vector< const IdDictRegion * > m_vecOfDictRegions
List of IdDictRegion objects.
const IdDictFieldImplementation & implementation(size_t i) const
bool match(element_type value) const
The basic match operation Given a value, test to see if it satisfies the constraints for this field.
Range::field m_tile_dm_field
size_type begin_index() const
static constexpr value_type ALL_BITS
IdDictDictionary * find_dictionary(const std::string &name) const
Access dictionary by name.
void set_ored_field(const Range::field &ored_field)
msgSvc
Provide convenience handles for various services.
std::string m_group
Group name.
IdDictDictionary * m_calo_dict
bool m_is_initialized_from_dict
IdDictFieldImplementation m_lar_part_impl
ExpandedIdentifier indet_exp(void) const
Detector systems:
HashGroup m_regions
Group of region Identifiers.
IdDictFieldImplementation m_muon_mdt_impl
IdDictFieldImplementation m_lar_fcal_module_impl
bool is_tile_dm(Identifier id) const
bool m_isHighLuminosityLHC
IdDictDictionary * m_fwd_dict
bool is_tile(Identifier id) const
const std::string & group() const
Group name for this helper.
int initialize_from_dictionary(const IdDictMgr &dict_mgr)
Initialization from the identifier dictionary.
const Range::field & ored_field() const
Range::field m_lvl1_onl_field
bool do_neighbours() const
Check whether or not to init neighbours.
bool m_quiet
If true, suppress DEBUG/INFO messages.
MsgStream & msg() const
The standard message stream.
bool isEnumerated() const
IdDictFieldImplementation m_muon_rpc_impl
int register_dict_tag(const IdDictMgr &dict_mgr, const std::string &dict_name)
Register the file and tag names for a particular IdDict dictionary.
bool is_calo(Identifier id) const
int tile_field_value() const
int get_label_value(const std::string &field, const std::string &label, int &value) const
std::string print_to_string(Identifier id, const IdContext *context=0) const
or provide the printout in string form
const IdDictRegionEntry & entry(size_t i) const
float eta0(const IdentifierHash regHash) const
Return the minimum eta of region, or NOT_VALID.
const std::string & name() const
Return the name for this helper.
IdDictDictionary * m_indet_dict
IdDictFieldImplementation m_calo_side_impl
bool is_indet(Identifier id) const
std::vector< std::string > m_dict_names
List of dictionary names used by this helper.
Range::field m_lar_dm_field
size_type lar_em_region_index() const
ExpandedIdentifier fwd_exp(void) const
IdDictFieldImplementation m_muon_station_name_impl
const IdDictDictionary * m_dict
The dictionary for this helper.
bool is_lumi(Identifier id) const
bool is_lar_dm(Identifier id) const
LAr/Tile dead material:
bool is_muon(Identifier id) const
IdDictFieldImplementation m_det_impl
float phi0(const IdentifierHash regHash) const
Return the minimum phi of region, or NOT_VALID.
Data object for each calorimeter readout cell.
std::string show_to_string(Identifier id, const IdContext *context=0, char sep='.') const
or provide the printout in string form
size_type rpc_region_index() const
const std::string & dict_tag() const
Access to the dictionary tag.
ExpandedIdentifier lar_exp(void) const
std::vector< std::string > m_file_names
List of dictionary file names used by this helper.
#define ATH_MSG_WARNING(x)
HashGroup m_channels
Group of channel (cell) Identifiers.
std::string m_nm
Message source name.
This is the individual specification for the range of one ExpandedIdentifier IdentifierField.
bool do_checks() const
Check whether or not to do checks for ids.
IdDictDictionary * m_lar_dict
unsigned long long value_type
bool is_lvl1_online(Identifier id) const
virtual int get_expanded_id(const Identifier &id, ExpandedIdentifier &exp_id, const IdContext *context) const =0
Create an expanded Identifier from an Identifier.
void initMessaging() const
Initialize our message level and MessageSvc.
size_t n_regions() const
Number of contained regions.
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
int initLevelsFromDict(const IdDictMgr &dict_mgr)
boost::thread_specific_ptr< MsgStream > m_msg_tls
MsgStream instance (a std::cout like with print-out levels)
virtual bool do_checks(void) const override
Checks are performed by default in debug compilation and NOT in optimized compilation.
This class saves the "context" of an expanded identifier (ExpandedIdentifier) for compact or hash ver...
std::vector< std::string > m_dict_tags
List of dictionary versions used by this helper.
void add_value(element_type value)
Range::field m_lvl1_field