|
ATLAS Offline Software
|
#include <MdtIdHelper.h>
|
typedef Identifier::size_type | size_type |
|
typedef MultiRange::const_identifier_factory | const_expanded_id_iterator |
|
typedef std::vector< Identifier >::const_iterator | const_id_iterator |
|
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...
|
|
|
| MdtIdHelper () |
|
virtual | ~MdtIdHelper ()=default |
|
virtual int | initialize_from_dictionary (const IdDictMgr &dict_mgr) override |
| Initialization from the identifier dictionary. More...
|
|
virtual int | get_module_hash (const Identifier &id, IdentifierHash &hash_id) const override |
|
virtual int | get_detectorElement_hash (const Identifier &id, IdentifierHash &hash_id) const override |
|
Identifier | elementID (int stationName, int stationEta, int stationPhi) const |
|
Identifier | elementID (int stationName, int stationEta, int stationPhi, bool &isValid) const |
|
Identifier | elementID (const std::string &stationNameStr, int stationEta, int stationPhi) const |
|
Identifier | elementID (const std::string &stationNameStr, int stationEta, int stationPhi, bool &isValid) const |
|
Identifier | elementID (const Identifier &channelID) const |
|
Identifier | channelID (int stationName, int stationEta, int stationPhi, int multilayer, int tubeLayer, int tube) const |
|
Identifier | channelID (int stationName, int stationEta, int stationPhi, int multilayer, int tubeLayer, int tube, bool &isValid) const |
|
Identifier | channelID (const std::string &stationNameStr, int stationEta, int stationPhi, int multilayer, int tubeLayer, int tube) const |
|
Identifier | channelID (const std::string &stationNameStr, int stationEta, int stationPhi, int multilayer, int tubeLayer, int tube, bool &isValid) const |
|
Identifier | channelID (const Identifier &id, int multilayer, int tubeLayer, int tube) const |
|
Identifier | channelID (const Identifier &id, int multilayer, int tubeLayer, int tube, bool &isValid) const |
|
Identifier | parentID (const Identifier &id) const |
| get parent id from channel id More...
|
|
Identifier | multilayerID (const Identifier &channeldID) const |
|
Identifier | multilayerID (const Identifier &moduleID, int multilayer) const |
|
Identifier | multilayerID (const Identifier &moduleID, int multilayer, bool &isValid) const |
|
void | idChannels (const Identifier &id, std::vector< Identifier > &vect) const |
|
int | channel (const Identifier &id) const override |
|
int | multilayer (const Identifier &id) const |
| Access to components of the ID. More...
|
|
int | tubeLayer (const Identifier &id) const |
|
int | tube (const Identifier &id) const |
|
int | numberOfMultilayers (const Identifier &id) const |
|
int | tubeMax () const |
|
int | stationEtaMin (const Identifier &id) const |
| Access to min and max of level ranges. More...
|
|
int | stationEtaMax (const Identifier &id) const |
|
int | stationPhiMin (const Identifier &id) const |
|
int | stationPhiMax (const Identifier &id) const |
|
int | multilayerMin (const Identifier &id) const |
|
int | multilayerMax (const Identifier &id) const |
|
int | tubeLayerMin (const Identifier &id) const |
|
int | tubeLayerMax (const Identifier &id) const |
|
int | tubeMin (const Identifier &id) const |
|
int | tubeMax (const Identifier &id) const |
|
std::tuple< int, int, int, int > | stationEtaPhiMinMax (const Identifier &id) const |
|
std::pair< int, int > | stationEtaMinMax (const Identifier &id) const |
|
std::pair< int, int > | stationPhiMinMax (const Identifier &id) const |
|
std::pair< int, int > | multilayerMinMax (const Identifier &id) const |
|
std::pair< int, int > | tubeLayerMinMax (const Identifier &id) const |
|
std::pair< int, int > | tubeMinMax (const Identifier &id) const |
|
bool | valid (const Identifier &id) const |
| Public validation of levels. More...
|
|
bool | validElement (const Identifier &id) const |
|
int | gasGap (const Identifier &id) const override |
| the gas-gap function for the MDT's returns the tube layer More...
|
|
bool | measuresPhi (const Identifier &id) const override |
| always false for MDTs More...
|
|
bool | isBMG (const Identifier &id) const |
| is this a BMG chamber More...
|
|
bool | isBME (const Identifier &id) const |
| is this a BME chamber More...
|
|
Identifier | muon () const |
|
bool | is_muon (const Identifier &id) const |
|
bool | is_mdt (const Identifier &id) const |
|
bool | is_csc (const Identifier &id) const |
|
bool | is_rpc (const Identifier &id) const |
|
bool | is_tgc (const Identifier &id) const |
|
bool | is_stgc (const Identifier &id) const |
|
bool | is_mm (const Identifier &id) const |
|
int | stationName (const Identifier &id) const |
|
int | stationEta (const Identifier &id) const |
|
int | stationPhi (const Identifier &id) const |
|
int | technology (const Identifier &id) const |
|
int | stationRegion (const Identifier &id) const |
|
bool | isBarrel (const Identifier &id) const |
|
bool | isBarrel (const int &stationNameIndex) const |
|
bool | isEndcap (const Identifier &id) const |
|
bool | isEndcap (const int &stationNameIndex) const |
|
bool | isForward (const Identifier &id) const |
|
bool | isForward (const int &stationNameIndex) const |
|
bool | isSmall (const Identifier &id) const |
|
bool | isSmall (const int &stationNameIndex) const |
|
int | stationNameIndex (const std::string &name) const |
|
int | technologyIndex (const std::string &name) const |
|
const std::string & | stationNameString (const int &index) const |
|
const std::string & | technologyString (const int &index) const |
|
int | nStationNames () const |
|
bool | isInitialized () const |
|
IdContext | technology_context () const |
| access to IdContext's which define which levels or fields are contained in the Muon id More...
|
|
IdContext | module_context () const |
| id for module More...
|
|
IdContext | detectorElement_context () const |
| id for detector element More...
|
|
IdContext | channel_context () const |
| id for channel More...
|
|
virtual int | get_channel_hash (const Identifier &id, IdentifierHash &hash_id) const |
|
virtual int | get_id (const IdentifierHash &hash_id, Identifier &id, const IdContext *context=0) const override |
| Create compact id from hash id (return == 0 for OK) More...
|
|
int | get_id (const ExpandedIdentifier &old_id, Identifier &new_id) const |
| Create Identifier from expanded id, which is returned by the id_iterators. More...
|
|
virtual int | get_hash (const Identifier &id, IdentifierHash &hash_id, const IdContext *context=0) const override |
| Create hash id from compact id (return == 0 for OK) More...
|
|
int | get_expanded_id (const Identifier &id, ExpandedIdentifier &exp_id, const IdContext *context) const |
| Create expanded id from compact id (return == 0 for OK) More...
|
|
const MultiRange & | multiRange () const |
| multirange More...
|
|
size_type | module_hash_max () const |
| the maximum hash value More...
|
|
size_type | detectorElement_hash_max () const |
|
size_type | channel_hash_max () const |
|
const std::vector< Identifier > & | idVector () const |
| the id's More...
|
|
const_id_iterator | module_begin () const |
| Iterators over full set of ids. More...
|
|
const_id_iterator | module_end () const |
|
const_id_iterator | detectorElement_begin () const |
| Iterators over full set of ids. More...
|
|
const_id_iterator | detectorElement_end () const |
|
const_id_iterator | channel_begin () const |
| Iterators over full set of ids. More...
|
|
const_id_iterator | channel_end () const |
|
int | get_prev_in_phi (const IdentifierHash &id, IdentifierHash &prev) const |
| Access to hashes for neighbors in phi and eta (return == 0 for neighbor found) More...
|
|
int | get_next_in_phi (const IdentifierHash &id, IdentifierHash &next) const |
|
int | get_prev_in_eta (const IdentifierHash &id, IdentifierHash &prev) const |
|
int | get_next_in_eta (const IdentifierHash &id, IdentifierHash &next) const |
|
void | test_module_packing () const |
| Tests of packing. More...
|
|
void | test_id (const Identifier &id, const IdContext &context) const |
|
int | stationNameIndexMax () const |
|
int | technologyNameIndexMax () const |
|
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...
|
|
|
static constexpr int | maxNTubesPerLayer = 120 |
| The maxNTubesPerLayer represents the absolute maximum of tubes which are built into a single multilayer in any MDT chamber plus some safety margin Thus far the BIS78 chambers comprise the largest number of tubes in a single layer. More...
|
|
static const std::string | BAD_NAME = "UNKNOWN" |
|
|
int | initLevelsFromDict () |
|
int | init_hashes () |
|
virtual int | init_detectorElement_hashes () |
|
int | init_channel_hashes () |
|
int | init_neighbors () |
|
int | get_expanded_id_calc (const Identifier &compact_id, ExpandedIdentifier &id, const IdContext *context) const |
|
int | get_compact_id (const ExpandedIdentifier &id, Identifier &compact_id, const IdContext *context) const |
|
virtual int | get_hash_calc (const Identifier &compact_id, IdentifierHash &hash_id, const IdContext *context) const |
|
bool | validStation (int stationName, int technology) const |
|
bool | validStation (int stationName) const |
|
bool | validTechnology (int technology) const |
|
void | addStationID (Identifier &id, int stationName, int stationEta, int stationPhi, int technology) const |
|
void | resetAndSet (const IdDictFieldImplementation &dict, const int new_val, Identifier &id) const |
|
|
enum | MdtIndices { MultilayerIndex = 5,
TubeLayerIndex = 6,
TubeIndex = 7
} |
|
enum | MdtRanges {
StationEtaBarrelMin = -8,
StationEtaBarrelMax = 8,
StationEtaEndcapMin = -6,
StationEtaEndcapMax = 6,
StationPhiMin = 1,
StationPhiMax = 8,
MultilayerMin = 1,
MultilayerMax = 2,
TubeLayerMin = 1,
TubeLayerMax = 4,
TubeMin = 1,
TubeMax = 78
} |
|
using | ranges_by_station_t = std::vector< std::vector< const Range * > > |
|
enum | MuonIndices { StationNameIndex = 1,
StationEtaIndex = 2,
StationPhiIndex = 3,
TechnologyIndex = 4
} |
|
|
bool | isStNameInTech (const std::string &stationName) const override |
| The valid element checks converted the identifier to a stationName string in order to assess whether the stationName is good or not. More...
|
|
int | init_id_to_hashes () |
|
unsigned int | moduleHashIdx (const Identifier &id) const |
|
unsigned int | detEleHashIdx (const Identifier &id) const |
|
bool | validElement (const Identifier &id, int stationName, int stationEta, int stationPhi) const |
| Private validation of levels. More...
|
|
bool | validChannel (const Identifier &id, int stationName, int stationEta, int stationPhi, int multilayer, int tubeLayer, int tube) const |
|
int | mdtTechnology () const |
| Utility methods. More...
|
|
std::pair< int, int > | findMinMax (const Identifier &id, const size_type field_index, const ranges_by_station_t &ranges_by_station) const |
|
void | initMessaging () const |
| Initialize our message level and MessageSvc. More...
|
|
Definition at line 61 of file MdtIdHelper.h.
◆ const_expanded_id_iterator
◆ const_id_iterator
◆ hash_vec
◆ hash_vec_it
◆ id_vec
◆ id_vec_it
◆ ranges_by_station_t
◆ size_type
◆ 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 60 of file AtlasDetectorID.h.
65 LArEM, LArFCal, LArFCalSuperCell,
66 LArHEC, LArHEC_SuperCell, LARMiniFCal,
70 LArOnline, LArOnlineSuperCell,
72 LArElectrode, LArHVLine,
73 TileHardware, TileTestbeam,
80 LUCID, LUCID_Hardware,
◆ ID
◆ MdtIndices
Enumerator |
---|
MultilayerIndex | |
TubeLayerIndex | |
TubeIndex | |
Definition at line 208 of file MdtIdHelper.h.
◆ MdtRanges
Enumerator |
---|
StationEtaBarrelMin | |
StationEtaBarrelMax | |
StationEtaEndcapMin | |
StationEtaEndcapMax | |
StationPhiMin | |
StationPhiMax | |
MultilayerMin | |
MultilayerMax | |
TubeLayerMin | |
TubeLayerMax | |
TubeMin | |
TubeMax | |
Definition at line 212 of file MdtIdHelper.h.
◆ MuonIndices
Enumerator |
---|
StationNameIndex | |
StationEtaIndex | |
StationPhiIndex | |
TechnologyIndex | |
Definition at line 339 of file MuonIdHelper.h.
◆ MdtIdHelper()
MdtIdHelper::MdtIdHelper |
( |
| ) |
|
◆ ~MdtIdHelper()
virtual MdtIdHelper::~MdtIdHelper |
( |
| ) |
|
|
virtualdefault |
◆ addStationID() [1/2]
void MuonIdHelper::addStationID |
( |
ExpandedIdentifier & |
id, |
|
|
int |
stationName, |
|
|
int |
stationEta, |
|
|
int |
stationPhi, |
|
|
int |
technology |
|
) |
| |
|
staticprotectedinherited |
◆ addStationID() [2/2]
void MuonIdHelper::addStationID |
( |
Identifier & |
id, |
|
|
int |
stationName, |
|
|
int |
stationEta, |
|
|
int |
stationPhi, |
|
|
int |
technology |
|
) |
| const |
|
protectedinherited |
◆ 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()
◆ channel_begin()
Iterators over full set of ids.
Channel iterator is sorted
Definition at line 762 of file MuonIdHelper.cxx.
◆ channel_context()
IdContext MuonIdHelper::channel_context |
( |
| ) |
const |
|
inherited |
◆ channel_end()
◆ channel_hash_max()
◆ channelID() [1/6]
◆ channelID() [2/6]
◆ channelID() [3/6]
Identifier MdtIdHelper::channelID |
( |
const std::string & |
stationNameStr, |
|
|
int |
stationEta, |
|
|
int |
stationPhi, |
|
|
int |
multilayer, |
|
|
int |
tubeLayer, |
|
|
int |
tube |
|
) |
| const |
◆ channelID() [4/6]
Identifier MdtIdHelper::channelID |
( |
const std::string & |
stationNameStr, |
|
|
int |
stationEta, |
|
|
int |
stationPhi, |
|
|
int |
multilayer, |
|
|
int |
tubeLayer, |
|
|
int |
tube, |
|
|
bool & |
isValid |
|
) |
| const |
◆ channelID() [5/6]
Identifier MdtIdHelper::channelID |
( |
int |
stationName, |
|
|
int |
stationEta, |
|
|
int |
stationPhi, |
|
|
int |
multilayer, |
|
|
int |
tubeLayer, |
|
|
int |
tube |
|
) |
| const |
◆ channelID() [6/6]
Identifier MdtIdHelper::channelID |
( |
int |
stationName, |
|
|
int |
stationEta, |
|
|
int |
stationPhi, |
|
|
int |
multilayer, |
|
|
int |
tubeLayer, |
|
|
int |
tube, |
|
|
bool & |
isValid |
|
) |
| const |
◆ csc()
◆ csc_field_value()
int AtlasDetectorID::csc_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ detectorElement_begin()
Iterators over full set of ids.
detector element iterator is sorted
Definition at line 758 of file MuonIdHelper.cxx.
◆ detectorElement_context()
IdContext MuonIdHelper::detectorElement_context |
( |
| ) |
const |
|
inherited |
◆ detectorElement_end()
◆ detectorElement_hash_max()
size_type MuonIdHelper::detectorElement_hash_max |
( |
| ) |
const |
|
inlineinherited |
◆ detEleHashIdx()
◆ detsystem_context()
IdContext AtlasDetectorID::detsystem_context |
( |
void |
| ) |
const |
|
inherited |
◆ 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 |
Version tags for subdet dictionaries.
Version tag for subdet dictionary.
Definition at line 723 of file AtlasDetectorID.cxx.
◆ dictionaryVersion()
std::string AtlasDetectorID::dictionaryVersion |
( |
void |
| ) |
const |
|
overridevirtualinherited |
◆ 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 728 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 738 of file AtlasDetectorID.cxx.
◆ elementID() [1/5]
◆ elementID() [2/5]
Identifier MdtIdHelper::elementID |
( |
const std::string & |
stationNameStr, |
|
|
int |
stationEta, |
|
|
int |
stationPhi |
|
) |
| const |
◆ elementID() [3/5]
Identifier MdtIdHelper::elementID |
( |
const std::string & |
stationNameStr, |
|
|
int |
stationEta, |
|
|
int |
stationPhi, |
|
|
bool & |
isValid |
|
) |
| const |
◆ elementID() [4/5]
Identifier MdtIdHelper::elementID |
( |
int |
stationName, |
|
|
int |
stationEta, |
|
|
int |
stationPhi |
|
) |
| const |
◆ elementID() [5/5]
Identifier MdtIdHelper::elementID |
( |
int |
stationName, |
|
|
int |
stationEta, |
|
|
int |
stationPhi, |
|
|
bool & |
isValid |
|
) |
| const |
◆ file_names()
const std::vector< std::string > & AtlasDetectorID::file_names |
( |
void |
| ) |
const |
|
inherited |
◆ findMinMax()
Definition at line 417 of file MdtIdHelper.cxx.
421 int resultMax = -999;
423 IdContext eta_context(expId, 0, field_index);
426 for (
const Range*
range : ranges_by_station.at (station)) {
427 if (
range->match(expId)) {
429 if (not
field.empty()) {
432 if (not
field.empty()) {
438 return std::make_pair (resultMin, resultMax);
◆ 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()
◆ gasGap()
◆ get_channel_hash()
◆ get_compact_id()
Definition at line 200 of file MuonIdHelper.cxx.
206 for (
size_t i = 0;
i <
id.fields();
i++) exp_id[
i] =
id[
i];
210 size_t end = (context) ? context->
end_index() :
id.fields() - 1;
◆ get_detectorElement_hash()
◆ get_expanded_id()
Create expanded id from compact id (return == 0 for OK)
Definition at line 160 of file MuonIdHelper.cxx.
◆ get_expanded_id_calc()
◆ get_hash()
◆ get_hash_calc()
|
protectedvirtualinherited |
◆ get_id() [1/2]
◆ get_id() [2/2]
◆ get_module_hash()
◆ get_next_in_eta()
◆ get_next_in_phi()
◆ get_prev_in_eta()
◆ get_prev_in_phi()
Access to hashes for neighbors in phi and eta (return == 0 for neighbor found)
Definition at line 480 of file MuonIdHelper.cxx.
◆ helper()
virtual HelperType AtlasDetectorID::helper |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ hgtd()
◆ hgtd_exp()
◆ hgtd_field_value()
int AtlasDetectorID::hgtd_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ idChannels()
◆ idVector()
◆ 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 611 of file AtlasDetectorID.h.
◆ init_channel_hashes()
int MuonIdHelper::init_channel_hashes |
( |
| ) |
|
|
protectedinherited |
Definition at line 440 of file MuonIdHelper.cxx.
451 unsigned int nids = 0;
452 std::set<Identifier>
ids;
456 for (
const auto & expId:rit) {
460 if (!(
ids.insert(
id)).second) {
462 <<
" Error: duplicated id for channel id. nid " << nids <<
" compact id " <<
id <<
" id ");
471 <<
" Error: set size NOT EQUAL to hash max. size " <<
ids.size() <<
" hash max " <<
m_channel_hash_max);
◆ init_detectorElement_hashes()
int MuonIdHelper::init_detectorElement_hashes |
( |
| ) |
|
|
protectedvirtualinherited |
Reimplemented in RpcIdHelper.
Definition at line 394 of file MuonIdHelper.cxx.
405 unsigned int nids = 0;
406 std::set<Identifier>
ids;
410 for (
const auto & expId:rit) {
413 if (!(
ids.insert(
id)).second) {
415 <<
" Error: duplicated id for channel id. nid " << nids <<
" compact id " <<
id <<
" id ");
429 std::set<Identifier>::const_iterator
first =
ids.begin();
430 std::set<Identifier>::const_iterator last =
ids.end();
◆ init_hashes()
int MuonIdHelper::init_hashes |
( |
| ) |
|
|
protectedinherited |
Definition at line 348 of file MuonIdHelper.cxx.
359 unsigned int nids = 0;
360 std::set<Identifier>
ids;
364 for (
const auto & expId:rit) {
367 if (!(
ids.insert(
id)).second) {
369 <<
" Error: duplicated id for module id. nid " << (
int)nids <<
" compact id " <<
id <<
" id ");
377 <<
" Error: set size NOT EQUAL to element hash max. size " <<
ids.size() <<
" hash max " <<
m_module_hash_max);
383 std::set<Identifier>::const_iterator
first =
ids.begin();
384 std::set<Identifier>::const_iterator last =
ids.end();
◆ init_id_to_hashes()
int MdtIdHelper::init_id_to_hashes |
( |
| ) |
|
|
private |
Definition at line 282 of file MdtIdHelper.cxx.
284 for (
unsigned int i = 0;
i < hash_max; ++
i) {
295 for (
unsigned int i = 0;
i < hash_max; ++
i) {
◆ init_neighbors()
int MuonIdHelper::init_neighbors |
( |
| ) |
|
|
protectedinherited |
Definition at line 520 of file MuonIdHelper.cxx.
537 for (
const auto &
id: rit) {
554 if (
get_hash(compact_id, hash_id, &wcontext)) {
555 ATH_MSG_ERROR(
" MuonIdHelper::init_neighbors - unable to get hash, exp/compact "
556 <<
" " << std::hex << compact_id << std::dec <<
endmsg);
560 ATH_MSG_ERROR(
" MuonIdHelper::init_neighbors - unable to get compact, exp/compact ");
565 unsigned short index = hash_id;
577 if (
get_hash(compact_id, hash_id, &wcontext)) {
578 ATH_MSG_ERROR(
" MuonIdHelper::init_neighbors - unable to get previous phi hash, exp/compact "
579 <<
" " << std::hex << compact_id << std::dec);
583 ATH_MSG_ERROR(
" MuonIdHelper::init_neighbors - unable to get previous phi compact, exp/compact ");
595 if (
get_hash(compact_id, hash_id, &wcontext)) {
596 ATH_MSG_ERROR(
" MuonIdHelper::init_neighbors - unable to get next phi hash, exp/compact "
597 <<
" " << std::hex << compact_id << std::dec);
601 ATH_MSG_ERROR(
" MuonIdHelper::init_neighbors - unable to get next phi compact, exp/compact ");
613 if (
get_hash(compact_id, hash_id, &wcontext)) {
614 ATH_MSG_ERROR(
" MuonIdHelper::init_neighbors - unable to get previous eta hash, exp/compact "
615 <<
" " << std::hex << compact_id << std::dec);
619 ATH_MSG_ERROR(
" MuonIdHelper::init_neighbors - unable to get previous eta compact, exp/compact ");
631 if (
get_hash(compact_id, hash_id, &wcontext)) {
632 ATH_MSG_ERROR(
" MuonIdHelper::init_neighbors - unable to get next eta hash, exp/compact "
633 <<
" " << std::hex << compact_id << std::dec);
637 ATH_MSG_ERROR(
" MuonIdHelper::init_neighbors - unable to get next eta compact, exp/compact ");
◆ initialize_from_dictionary()
int MdtIdHelper::initialize_from_dictionary |
( |
const IdDictMgr & |
dict_mgr | ) |
|
|
overridevirtual |
Initialization from the identifier dictionary.
initialize dictionary
init base object
Initialize some of the field indices
Build multirange for the valid set of identifiers
Find value for the field MuonSpectrometer
Build MDT module ranges:
Find the regions that have a "technology field" that matches the MDT and save them
test to see that the module multi range is not empty
test to see that the detector element multi range is not empty
test to see that the tube multi range is not empty
Reimplemented from MuonIdHelper.
Definition at line 15 of file MdtIdHelper.cxx.
20 ATH_MSG_INFO(
"Request to reinitialize not satisfied - tags have not changed");
35 ATH_MSG_ERROR(
" initialize_from_dict - cannot access MuonSpectrometer dictionary ");
47 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find 'multiLayer' field ");
55 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find 'tubeLayer' field ");
63 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find 'tube' field ");
84 ATH_MSG_DEBUG(
" MDT decode index and bit fields for each level: " << std::endl
102 if (atlasDict->
get_label_value(
"subdet",
"MuonSpectrometer", muonField)) {
103 ATH_MSG_ERROR(
"Could not get value for label 'MuonSpectrometer' of field "
104 <<
"'subdet' in dictionary " << atlasDict->
m_name);
114 if (muon_range.
size() > 0) {
115 ATH_MSG_INFO(
"MultiRange built successfully to Technology: "
116 <<
"MultiRange size is " << muon_range.
size());
124 detectorElement_region.
add(muonField);
125 Range detectorElement_prefix;
127 if (muon_detectorElement_range.
size() > 0) {
128 ATH_MSG_INFO(
"MultiRange built successfully to detector element: "
129 <<
"Multilayer MultiRange size is " << muon_detectorElement_range.
size());
131 ATH_MSG_ERROR(
"Muon MDT detector element MultiRange is empty");
137 mdt_region.
add(muonField);
140 if (muon_channel_range.
size() > 0) {
142 <<
"MultiRange size is " << muon_channel_range.
size());
157 for (
int i = 0;
i < (
int)muon_range.
size(); ++
i) {
163 ATH_MSG_DEBUG(
"module field size is " << (
int)
range.cardinality() <<
" field index = " <<
i);
168 for (
int j = 0; j < (
int)muon_detectorElement_range.
size(); ++j) {
169 const Range&
range = muon_detectorElement_range[j];
174 ATH_MSG_DEBUG(
"detector element field size is " << (
int)
range.cardinality() <<
" field index = " << j);
179 for (
int k = 0;
k < (
int)muon_channel_range.
size(); ++
k) {
185 ATH_MSG_DEBUG(
"channel field size is " << (
int)
range.cardinality() <<
" field index = " <<
k);
200 ATH_MSG_ERROR(
"MDT MultiRange ID is empty for detector elements");
217 assert (not station_f.
empty() &&
229 assert (not station_f.
empty() &&
247 ATH_MSG_INFO(
"Initializing MDT hash indices for finding neighbors ... ");
257 if (
range.match(expId)) {
259 if (not channel_field.
empty()) {
271 ATH_MSG_ERROR(
"No maximum number of MDT tubes was retrieved");
◆ initLevelsFromDict()
int MuonIdHelper::initLevelsFromDict |
( |
| ) |
|
|
protectedinherited |
Definition at line 241 of file MuonIdHelper.cxx.
243 ATH_MSG_ERROR(
" initLevelsFromDict - dictionary NOT initialized ");
259 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find a muon station index: id, reg"
270 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find 'subdet' field ");
279 for (
size_t i = 0;
i <
field->get_label_number();
i++) {
287 if (
'B' ==
name[0]) {
293 }
else if (
'F' ==
name[2]) {
301 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find 'stationName' field ");
308 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find 'stationEta' field ");
315 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find 'stationPhi' field ");
323 for (
size_t i = 0;
i <
field->get_label_number(); ++
i) {
333 ATH_MSG_ERROR(
"initLevelsFromDict - unable to find 'technology' field ");
◆ 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/3]
◆ is_csc() [2/3]
◆ is_csc() [3/3]
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/3]
◆ is_mdt() [2/3]
◆ is_mdt() [3/3]
bool AtlasDetectorID::is_mdt |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_mm() [1/3]
◆ is_mm() [2/3]
◆ is_mm() [3/3]
bool AtlasDetectorID::is_mm |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_muon() [1/3]
◆ is_muon() [2/3]
◆ is_muon() [3/3]
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/3]
◆ is_rpc() [2/3]
◆ is_rpc() [3/3]
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/3]
◆ is_stgc() [2/3]
◆ is_stgc() [3/3]
bool AtlasDetectorID::is_stgc |
( |
Identifier |
id | ) |
const |
|
inlineinherited |
◆ is_tgc() [1/3]
◆ is_tgc() [2/3]
◆ is_tgc() [3/3]
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 |
◆ isBarrel() [1/2]
◆ isBarrel() [2/2]
bool MuonIdHelper::isBarrel |
( |
const int & |
stationNameIndex | ) |
const |
|
inherited |
◆ isBME()
◆ isBMG()
◆ isEndcap() [1/2]
◆ isEndcap() [2/2]
bool MuonIdHelper::isEndcap |
( |
const int & |
stationNameIndex | ) |
const |
|
inherited |
◆ isForward() [1/2]
◆ isForward() [2/2]
bool MuonIdHelper::isForward |
( |
const int & |
stationNameIndex | ) |
const |
|
inherited |
◆ isInitialized()
bool MuonIdHelper::isInitialized |
( |
| ) |
const |
|
inherited |
◆ isSmall() [1/2]
◆ isSmall() [2/2]
bool MuonIdHelper::isSmall |
( |
const int & |
stationNameIndex | ) |
const |
|
inherited |
◆ isStNameInTech()
bool MdtIdHelper::isStNameInTech |
( |
const std::string & |
stationName | ) |
const |
|
overrideprivatevirtual |
The valid element checks converted the identifier to a stationName string in order to assess whether the stationName is good or not.
However, the valid stations can be cached during initialization stage. For eacb stationName found in the dict, this method is called and the corresponding index is added to the stationToTech set
Implements MuonIdHelper.
Definition at line 556 of file MdtIdHelper.cxx.
556 {
return 'B' ==
name[0] ||
'E' ==
name[0]; }
◆ 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 |
◆ mdtTechnology()
int MdtIdHelper::mdtTechnology |
( |
| ) |
const |
|
private |
◆ measuresPhi()
◆ mm()
◆ mm_field_value()
int AtlasDetectorID::mm_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ module_begin()
Iterators over full set of ids.
Module iterator is sorted
Definition at line 754 of file MuonIdHelper.cxx.
◆ module_context()
IdContext MuonIdHelper::module_context |
( |
| ) |
const |
|
inherited |
◆ module_end()
◆ module_hash_max()
◆ moduleHashIdx()
Unfold the array [A][B][C] by a * BxC + b * C + c
Station eta ranges from -8 to 8
Definition at line 306 of file MdtIdHelper.cxx.
◆ 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.
◆ multilayer()
◆ multilayerID() [1/3]
◆ multilayerID() [2/3]
◆ multilayerID() [3/3]
◆ multilayerMax() [1/2]
int MdtIdHelper::multilayerMax |
( |
| ) |
|
|
static |
◆ multilayerMax() [2/2]
◆ multilayerMin() [1/2]
int MdtIdHelper::multilayerMin |
( |
| ) |
|
|
static |
◆ multilayerMin() [2/2]
◆ multilayerMinMax()
std::pair< int, int > MdtIdHelper::multilayerMinMax |
( |
const Identifier & |
id | ) |
const |
◆ multiRange()
◆ muon()
◆ muon_exp()
◆ muon_field_value()
int AtlasDetectorID::muon_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ nStationNames()
int MuonIdHelper::nStationNames |
( |
| ) |
const |
|
inherited |
◆ numberOfMultilayers()
◆ parentID()
◆ 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 655 of file AtlasDetectorID.cxx.
663 unsigned int max_index = (context) ? context->
end_index() : 999;
694 if (!dict)
return (
result);
◆ 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 266 of file AtlasDetectorID.cxx.
273 if (!dict)
return(1);
◆ reinitialize()
Test whether an idhelper should be reinitialized based on the change of tags.
Definition at line 284 of file AtlasDetectorID.cxx.
294 ATH_MSG_ERROR(
"reinitialize: dict names and tags vectors not the same length ");
◆ resetAndSet()
◆ 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 565 of file AtlasDetectorID.cxx.
◆ show_to_string()
or provide the printout in string form
Definition at line 574 of file AtlasDetectorID.cxx.
580 std::string
result(
"Unable to decode id");
581 unsigned int max_index = (context) ? context->
end_index() : 999;
615 if (!dict)
return (
result);
629 for (
unsigned int i = 0;
i < expId.
fields(); ++
i) {
632 sprintf (temp,
"%d", expId[
i]);
◆ stationEta()
◆ stationEtaMax() [1/2]
int MdtIdHelper::stationEtaMax |
( |
bool |
barrel | ) |
|
|
static |
◆ stationEtaMax() [2/2]
◆ stationEtaMin() [1/2]
int MdtIdHelper::stationEtaMin |
( |
bool |
barrel | ) |
|
|
static |
◆ stationEtaMin() [2/2]
◆ stationEtaMinMax()
std::pair< int, int > MdtIdHelper::stationEtaMinMax |
( |
const Identifier & |
id | ) |
const |
◆ stationEtaPhiMinMax()
std::tuple< int, int, int, int > MdtIdHelper::stationEtaPhiMinMax |
( |
const Identifier & |
id | ) |
const |
Definition at line 453 of file MdtIdHelper.cxx.
467 if (
range->match(expIdEta)) {
469 if (not eta_field.
empty()) {
473 if (not eta_field.
empty()) {
478 if (
range->match(expIdPhi)) {
480 if (not phi_field.
empty()) {
484 if (not phi_field.
empty()) {
◆ stationName()
◆ stationNameIndex()
int MuonIdHelper::stationNameIndex |
( |
const std::string & |
name | ) |
const |
|
inherited |
◆ stationNameIndexMax()
int MuonIdHelper::stationNameIndexMax |
( |
| ) |
const |
|
inherited |
◆ stationNameString()
const std::string & MuonIdHelper::stationNameString |
( |
const int & |
index | ) |
const |
|
inherited |
◆ stationPhi()
◆ stationPhiMax() [1/2]
int MdtIdHelper::stationPhiMax |
( |
| ) |
|
|
static |
◆ stationPhiMax() [2/2]
◆ stationPhiMin() [1/2]
int MdtIdHelper::stationPhiMin |
( |
| ) |
|
|
static |
◆ stationPhiMin() [2/2]
◆ stationPhiMinMax()
std::pair< int, int > MdtIdHelper::stationPhiMinMax |
( |
const Identifier & |
id | ) |
const |
◆ stationRegion()
Definition at line 711 of file MuonIdHelper.cxx.
714 if (
'I' ==
name[1] ||
'4' ==
name[1])
return 0;
715 if (
'E' ==
name[1] ||
'1' ==
name[1])
return 1;
716 if (
'M' ==
name[1] ||
'2' ==
name[1])
return 2;
717 if (
'O' ==
name[1] ||
'3' ==
name[1])
return 3;
718 if (
name ==
"CSS" ||
name ==
"CSL")
return 0;
◆ stgc()
◆ stgc_field_value()
int AtlasDetectorID::stgc_field_value |
( |
| ) |
const |
|
inlineprotectedinherited |
◆ subdet_context()
IdContext AtlasDetectorID::subdet_context |
( |
void |
| ) |
const |
|
inherited |
◆ technology()
◆ technology_context()
IdContext MuonIdHelper::technology_context |
( |
| ) |
const |
|
inherited |
◆ technologyIndex()
int MuonIdHelper::technologyIndex |
( |
const std::string & |
name | ) |
const |
|
inherited |
◆ technologyNameIndexMax()
int MuonIdHelper::technologyNameIndexMax |
( |
| ) |
const |
|
inherited |
◆ technologyString()
const std::string & MuonIdHelper::technologyString |
( |
const int & |
index | ) |
const |
|
inherited |
◆ test_id()
Definition at line 679 of file MuonIdHelper.cxx.
683 ATH_MSG_ERROR(
"Unable to get expanded id. Compact id " << compact);
691 if (compact != new_compact) {
692 ATH_MSG_ERROR(
"new and old compacts not equal. New/old/expanded ids " << new_compact <<
" " << compact <<
" "
◆ test_module_packing()
void MuonIdHelper::test_module_packing |
( |
| ) |
const |
|
inherited |
Tests of packing.
Definition at line 648 of file MuonIdHelper.cxx.
658 ATH_MSG_ERROR(
"test_module_packing: Unable to get expanded id. Compact id " << compact);
663 ATH_MSG_ERROR(
"test_module_packing: Unable to get compact id. Expanded id " << std::string(
id));
666 if (compact != new_compact) {
667 ATH_MSG_ERROR(
"test_module_packing: new and old compacts not equal "
668 <<
"New/old/expanded ids " << new_compact <<
" " << compact <<
" " << std::string(
id));
673 ATH_MSG_INFO(
"test_module_packing: Successful tested " << nids <<
" ids. ");
675 ATH_MSG_ERROR(
"Unable to test module is packing - no dictionary has been defined. ");
◆ 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 |
◆ tube()
◆ tubeLayer()
◆ tubeLayerMax() [1/2]
int MdtIdHelper::tubeLayerMax |
( |
| ) |
|
|
static |
◆ tubeLayerMax() [2/2]
◆ tubeLayerMin() [1/2]
int MdtIdHelper::tubeLayerMin |
( |
| ) |
|
|
static |
◆ tubeLayerMin() [2/2]
◆ tubeLayerMinMax()
std::pair< int, int > MdtIdHelper::tubeLayerMinMax |
( |
const Identifier & |
id | ) |
const |
◆ tubeMax() [1/2]
int MdtIdHelper::tubeMax |
( |
| ) |
const |
◆ tubeMax() [2/2]
◆ tubeMin() [1/2]
int MdtIdHelper::tubeMin |
( |
| ) |
|
|
static |
◆ tubeMin() [2/2]
◆ tubeMinMax()
std::pair< int, int > MdtIdHelper::tubeMinMax |
( |
const Identifier & |
id | ) |
const |
◆ valid()
◆ validChannel()
bool MdtIdHelper::validChannel |
( |
const Identifier & |
id, |
|
|
int |
stationName, |
|
|
int |
stationEta, |
|
|
int |
stationPhi, |
|
|
int |
multilayer, |
|
|
int |
tubeLayer, |
|
|
int |
tube |
|
) |
| const |
|
private |
◆ validElement() [1/2]
◆ validElement() [2/2]
bool MdtIdHelper::validElement |
( |
const Identifier & |
id, |
|
|
int |
stationName, |
|
|
int |
stationEta, |
|
|
int |
stationPhi |
|
) |
| const |
|
private |
◆ validStation() [1/2]
bool MuonIdHelper::validStation |
( |
int |
stationName | ) |
const |
|
protectedinherited |
◆ validStation() [2/2]
bool MuonIdHelper::validStation |
( |
int |
stationName, |
|
|
int |
technology |
|
) |
| const |
|
protectedinherited |
◆ validTechnology()
bool MuonIdHelper::validTechnology |
( |
int |
technology | ) |
const |
|
protectedinherited |
◆ 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 |
◆ BAD_NAME
const std::string MuonIdHelper::BAD_NAME = "UNKNOWN" |
|
staticinherited |
◆ m_ALFA_ID
int AtlasDetectorID::m_ALFA_ID {1} |
|
privateinherited |
◆ m_atlas_dict
◆ m_BCM_ID
int AtlasDetectorID::m_BCM_ID {3} |
|
privateinherited |
◆ m_BME_stat
int MdtIdHelper::m_BME_stat {-1} |
|
private |
◆ m_BMG_stat
int MdtIdHelper::m_BMG_stat {-1} |
|
private |
◆ m_calo_dict
◆ m_CALO_ID
int AtlasDetectorID::m_CALO_ID {10} |
|
privateinherited |
◆ m_calo_side_impl
◆ m_channel_hash_max
size_type MuonIdHelper::m_channel_hash_max {0} |
|
protectedinherited |
◆ m_CHANNEL_INDEX
◆ m_channel_ranges_by_station
◆ m_channel_vec
id_vec MuonIdHelper::m_channel_vec |
|
protectedinherited |
◆ m_CSC_ID
int AtlasDetectorID::m_CSC_ID {1} |
|
privateinherited |
◆ m_det_impl
◆ m_DET_INDEX
◆ m_detectorElement_hash_max
size_type MuonIdHelper::m_detectorElement_hash_max {0} |
|
protectedinherited |
◆ m_detectorElement_hashes
std::array<unsigned int, s_detDim> MdtIdHelper::m_detectorElement_hashes {} |
|
private |
◆ m_DETECTORELEMENT_INDEX
size_type MuonIdHelper::m_DETECTORELEMENT_INDEX {5} |
|
protectedinherited |
◆ m_detectorElement_vec
id_vec MuonIdHelper::m_detectorElement_vec |
|
protectedinherited |
◆ 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 362 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 365 of file AtlasDetectorID.h.
◆ m_eta_impl
◆ m_ETA_INDEX
◆ m_file_names
std::vector<std::string> AtlasDetectorID::m_file_names |
|
protectedinherited |
List of dictionary file names used by this helper.
Definition at line 378 of file AtlasDetectorID.h.
◆ m_full_channel_range
◆ m_full_detectorElement_range
MultiRange MuonIdHelper::m_full_detectorElement_range |
|
protectedinherited |
◆ m_full_module_range
◆ m_fwd_dict
◆ m_FWD_ID
int AtlasDetectorID::m_FWD_ID {13} |
|
privateinherited |
◆ m_fwd_part_impl
◆ m_GROUP_INDEX
size_t MuonIdHelper::m_GROUP_INDEX {6500} |
|
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_init
bool MuonIdHelper::m_init {false} |
|
protectedinherited |
◆ m_is_initialized_from_dict
bool AtlasDetectorID::m_is_initialized_from_dict {} |
|
privateinherited |
◆ m_isBarrel
std::set<int> MuonIdHelper::m_isBarrel |
|
privateinherited |
◆ m_isForward
std::set<int> MuonIdHelper::m_isForward |
|
privateinherited |
◆ m_isHighLuminosityLHC
bool AtlasDetectorID::m_isHighLuminosityLHC {} |
|
privateinherited |
◆ m_isSmall
std::set<int> MuonIdHelper::m_isSmall |
|
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_lay_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_mla_impl
◆ m_MM_ID
int AtlasDetectorID::m_MM_ID {5} |
|
privateinherited |
◆ m_module_hash_max
size_type MuonIdHelper::m_module_hash_max {0} |
|
protectedinherited |
◆ m_module_hashes
std::array<unsigned int, s_modHash> MdtIdHelper::m_module_hashes {} |
|
private |
◆ m_MODULE_INDEX
◆ m_module_ranges_by_station
◆ m_module_vec
id_vec MuonIdHelper::m_module_vec |
|
protectedinherited |
◆ 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_channel_range
◆ m_muon_detectorElement_range
MultiRange MuonIdHelper::m_muon_detectorElement_range |
|
protectedinherited |
◆ m_muon_dict
◆ m_MUON_ID
int AtlasDetectorID::m_MUON_ID {7} |
|
privateinherited |
◆ m_muon_impl
◆ m_MUON_INDEX
◆ m_muon_mdt_impl
◆ m_muon_range
◆ 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_INDEX
◆ m_next_eta_module_vec
hash_vec MuonIdHelper::m_next_eta_module_vec |
|
protectedinherited |
◆ m_next_phi_module_vec
hash_vec MuonIdHelper::m_next_phi_module_vec |
|
protectedinherited |
◆ m_nm
std::string AthMessaging::m_nm |
|
privateinherited |
◆ m_phi_impl
◆ m_PHI_INDEX
◆ m_PIXEL_ID
int AtlasDetectorID::m_PIXEL_ID {1} |
|
privateinherited |
◆ m_prev_eta_module_vec
hash_vec MuonIdHelper::m_prev_eta_module_vec |
|
protectedinherited |
◆ m_prev_phi_module_vec
hash_vec MuonIdHelper::m_prev_phi_module_vec |
|
protectedinherited |
◆ m_quiet
bool AtlasDetectorID::m_quiet {} |
|
protectedinherited |
◆ m_RPC_ID
int AtlasDetectorID::m_RPC_ID {2} |
|
privateinherited |
◆ m_SCT_ID
int AtlasDetectorID::m_SCT_ID {2} |
|
privateinherited |
◆ m_sta_impl
◆ m_station_region_index
size_type MuonIdHelper::m_station_region_index {0} |
|
protectedinherited |
◆ m_stationIdxToNameMap
std::map<int, std::string> MuonIdHelper::m_stationIdxToNameMap |
|
privateinherited |
◆ m_stationIndexMax
int MuonIdHelper::m_stationIndexMax {-INT_MAX} |
|
privateinherited |
◆ m_stationInTech
std::set<int> MuonIdHelper::m_stationInTech {} |
|
protectedinherited |
◆ m_stationNameToIdxMap
std::map<std::string, int> MuonIdHelper::m_stationNameToIdxMap |
|
privateinherited |
◆ m_STGC_ID
int AtlasDetectorID::m_STGC_ID {4} |
|
privateinherited |
◆ m_SUBDET_INDEX
size_type AtlasDetectorID::m_SUBDET_INDEX {999} |
|
privateinherited |
◆ m_tec_impl
◆ m_TECHNOLOGY_INDEX
size_type MuonIdHelper::m_TECHNOLOGY_INDEX {4} |
|
protectedinherited |
◆ m_technologyIdxToNameMap
std::map<int, std::string> MuonIdHelper::m_technologyIdxToNameMap |
|
privateinherited |
◆ m_technologyIndexMax
int MuonIdHelper::m_technologyIndexMax {-INT_MAX} |
|
privateinherited |
◆ m_technologyNameToIdxMap
std::map<std::string, int> MuonIdHelper::m_technologyNameToIdxMap |
|
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_tub_impl
◆ m_TUBELAYER_INDEX
◆ m_tubesMax
unsigned int MdtIdHelper::m_tubesMax {UINT_MAX} |
|
private |
◆ m_ZDC_ID
int AtlasDetectorID::m_ZDC_ID {7} |
|
privateinherited |
◆ maxNTubesPerLayer
constexpr int MdtIdHelper::maxNTubesPerLayer = 120 |
|
staticconstexpr |
The maxNTubesPerLayer represents the absolute maximum of tubes which are built into a single multilayer in any MDT chamber plus some safety margin Thus far the BIS78 chambers comprise the largest number of tubes in a single layer.
Definition at line 68 of file MdtIdHelper.h.
◆ NOT_VALID_HASH
constexpr int MuonIdHelper::NOT_VALID_HASH = 64000 |
|
staticconstexprprotectedinherited |
◆ s_detDim
◆ s_etaDim
constexpr unsigned MdtIdHelper::s_etaDim = 16 |
|
staticconstexprprivate |
◆ s_mlDim
constexpr unsigned MdtIdHelper::s_mlDim = 2 |
|
staticconstexprprivate |
◆ s_modHash
◆ s_phiDim
constexpr unsigned MdtIdHelper::s_phiDim = 8 |
|
staticconstexprprivate |
◆ s_stDim
constexpr unsigned MdtIdHelper::s_stDim = 55 |
|
staticconstexprprivate |
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.
hash_vec m_next_eta_module_vec
int multilayer(const Identifier &id) const
Access to components of the ID.
bool validStation(int stationName, int technology) const
const std::string & dict_tag(void) const
Access to the dictionary tag.
int stationNameIndex(const std::string &name) const
IdDictDictionary * m_muon_dict
int indet_field_value() const
Provide efficient access to individual field values, for subclass idhelpers.
bool validElement(const Identifier &id) const
IdContext detectorElement_context() const
id for detector element
std::map< int, std::string > m_technologyIdxToNameMap
Mapping int -> string.
bool is_forward(Identifier id) const
MultiRange build_multirange() const
Get MultiRange for full dictionary.
bool is_rpc(Identifier id) const
hash_vec m_prev_eta_module_vec
IdDictFieldImplementation m_lay_impl
std::vector< unsigned int > m_muon_tech_bits
int unpack(const Identifier &id, const ExpandedIdentifier &prefix, size_t index2, ExpandedIdentifier &unpackedId) const
Unpack the value_type id to an expanded Identifier, considering the provided prefix (result will incl...
virtual int initialize_from_dictionary(const IdDictMgr &dict_mgr) override
Initialization from the identifier dictionary.
IdDictFieldImplementation m_indet_part_impl
static int stationEtaMin(bool barrel)
Access to min and max of level ranges.
std::set< int > m_isSmall
Scalar phi() const
phi method
virtual int get_id(const IdentifierHash &hash_id, Identifier &id, const IdContext *context=0) const override
Create compact id from hash id (return == 0 for OK)
int technologyIndex(const std::string &name) const
bool is_csc(Identifier id) const
bool is_lar_fcal(Identifier id) const
hash_vec m_next_phi_module_vec
std::set< int > m_stationInTech
std::string show_to_string(void) const
bool is_lar(Identifier id) const
int muon_field_value() const
IdContext channel_context() const
id for channel
Scalar eta() const
pseudorapidity method
bool is_mdt(const Identifier &id) const
size_type detectorElement_hash_max() const
void add(const Range &range)
element_type get_minimum() const
Query the values.
size_type m_detectorElement_hash_max
static constexpr unsigned s_etaDim
IdDictFieldImplementation m_sta_impl
size_type end_index() const
int calo_field_value() const
std::array< unsigned int, s_modHash > m_module_hashes
size_type m_channel_hash_max
std::map< std::string, int > m_technologyNameToIdxMap
Mapping string -> int.
void add(element_type value)
Append a value into a new field.
bool is_mm(Identifier id) const
value_type get_compact() const
Get the compact id.
void pack(int value, Identifier &id) const
IdDictDictionary * m_tile_dict
int tubeLayer(const Identifier &id) const
IMessageSvc * m_msgSvc
pointer to the message service
std::string m_dict_version
element_type get_maximum() const
bool m_do_checks
Flag for subclasses to know whether or not to perform checks.
hash_vec m_prev_phi_module_vec
int stationName(const Identifier &id) const
#define ATH_MSG_VERBOSE(x)
bool isValid(const T &p)
Av: we implement here an ATLAS-sepcific convention: all particles which are 99xxxxx are fine.
IdDictFieldImplementation m_phi_impl
std::pair< int, int > multilayerMinMax(const Identifier &id) const
int lar_field_value() const
virtual bool isStNameInTech(const std::string &stationName) const =0
The valid element checks converted the identifier to a stationName string in order to assess whether ...
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.
MultiRange m_full_channel_range
int stationNameIndexMax() const
size_type m_TUBELAYER_INDEX
virtual bool do_neighbours(void) const override
Neighbour initialization is performed by default One can switch or query this mode for any idHelper w...
std::array< unsigned int, s_detDim > m_detectorElement_hashes
int pack32(const ExpandedIdentifier &id, size_t index1, size_t index2, Identifier &packedId) const
Pack to 32bits the subset of id between (inclusive) index1 and index2 - this is generic,...
unsigned int moduleHashIdx(const Identifier &id) const
IMessageSvc * getMessageSvc(bool quiet=false)
std::pair< int, int > findMinMax(const Identifier &id, const size_type field_index, const ranges_by_station_t &ranges_by_station) const
IdDictField * find_field(const std::string &name) const
bool is_lvl1_trig_towers(Identifier id) const
static int multilayerMax()
bool m_do_neighbours
Flag for subclasses to know whether or not to perform neighbour initialization.
bool isSmall(const Identifier &id) const
void reset(Identifier &id) const
std::pair< int, int > tubeMinMax(const Identifier &id) const
static constexpr unsigned s_phiDim
static int multilayerMin()
std::pair< int, int > tubeLayerMinMax(const Identifier &id) const
std::map< int, std::string > m_stationIdxToNameMap
Mapping int -> string.
bool match(element_type value) const
The basic match operation.
static int tubeLayerMax()
Range::field m_tile_dm_field
size_type begin_index() const
std::map< std::string, int > m_stationNameToIdxMap
Mapping string -> int.
IdDictGroup * find_group(const std::string &group_name) const
IdDictDictionary * find_dictionary(const std::string &name) const
Access dictionary by name.
int mdt_field_value() const
msgSvc
Provide convenience handles for various services.
IdDictDictionary * m_calo_dict
static int stationEtaMax(bool barrel)
bool m_is_initialized_from_dict
IdDictFieldImplementation m_lar_part_impl
ExpandedIdentifier indet_exp(void) const
Detector systems:
bool is_tgc(Identifier id) const
IdDictFieldImplementation m_muon_mdt_impl
IdDictFieldImplementation m_lar_fcal_module_impl
virtual int get_module_hash(const Identifier &id, IdentifierHash &hash_id) const
bool is_tile_dm(Identifier id) const
std::vector< IdDictRegion * > m_regions
int tube(const Identifier &id) const
MultiRange m_full_detectorElement_range
bool validChannel(const Identifier &id, int stationName, int stationEta, int stationPhi, int multilayer, int tubeLayer, int tube) const
IdDictDictionary * m_fwd_dict
bool isForward(const Identifier &id) const
bool get_next(element_type current, element_type &next) const
id_vec::const_iterator id_vec_it
bool is_tile(Identifier id) const
virtual int get_detectorElement_hash(const Identifier &id, IdentifierHash &hash_id) const
static constexpr unsigned s_mlDim
MultiRange m_full_module_range
std::tuple< int, int, int, int > stationEtaPhiMinMax(const Identifier &id) const
int get_expanded_id(const Identifier &id, ExpandedIdentifier &exp_id, const IdContext *context) const
Create expanded id from compact id (return == 0 for OK)
Range::field m_lvl1_onl_field
virtual int get_hash_calc(const Identifier &compact_id, IdentifierHash &hash_id, const IdContext *context) const
std::pair< int, int > stationEtaMinMax(const Identifier &id) const
const std::vector< IdDictRegion * > & regions()
int technologyNameIndexMax() const
bool m_quiet
If true, suppress DEBUG/INFO messages.
IdDictFieldImplementation m_eta_impl
MsgStream & msg() const
The standard message stream.
MuonIdHelper(const std::string &logName)
IdDictFieldImplementation m_muon_impl
IdDictFieldImplementation m_muon_rpc_impl
int nStationNames() 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.
void clear()
Reset to invalid state.
bool is_calo(Identifier id) const
int stationPhi(const Identifier &id) const
const std::string & file_name(void) const
Access to file name.
int tile_field_value() const
int get_label_value(const std::string &field, const std::string &label, int &value) const
const std::string & stationNameString(const int &index) const
std::string print_to_string(Identifier id, const IdContext *context=0) const
or provide the printout in string form
std::pair< int, int > stationPhiMinMax(const Identifier &id) const
unsigned int detEleHashIdx(const Identifier &id) const
const ExpandedIdentifier & prefix_id() const
Accessors.
A MultiRange combines several Ranges.
Identifier channelID(int stationName, int stationEta, int stationPhi, int multilayer, int tubeLayer, int tube) const
ranges_by_station_t m_module_ranges_by_station
IdDictDictionary * m_indet_dict
IdDictFieldImplementation m_calo_side_impl
id_vec m_detectorElement_vec
bool is_indet(Identifier id) const
std::vector< std::string > m_dict_names
List of dictionary names used by this helper.
bool isBarrel(const Identifier &id) const
Range::field m_lar_dm_field
ExpandedIdentifier muon_exp(void) const
int stationEta(const Identifier &id) const
A Range describes the possible ranges for the field values of an ExpandedIdentifier.
ExpandedIdentifier fwd_exp(void) const
IdDictFieldImplementation m_muon_station_name_impl
std::set< int > m_isBarrel
size_type module_hash_max() const
the maximum hash value
size_type m_module_hash_max
bool isEndcap(const Identifier &id) const
IdDictFieldImplementation m_tub_impl
virtual int init_detectorElement_hashes()
bool valid(const Identifier &id) const
Public validation of levels.
Identifier elementID(int stationName, int stationEta, int stationPhi) const
size_type m_station_region_index
bool is_lumi(Identifier id) const
bool reinitialize(const IdDictMgr &dict_mgr)
Test whether an idhelper should be reinitialized based on the change of tags.
size_type m_TECHNOLOGY_INDEX
bool is_lar_dm(Identifier id) const
LAr/Tile dead material:
bool is_muon(Identifier id) const
IdDictFieldImplementation m_det_impl
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
ExpandedIdentifier lar_exp(void) const
std::vector< std::string > m_file_names
List of dictionary file names used by this helper.
void sort(typename std::reverse_iterator< DataModel_detail::iterator< DVL > > beg, typename std::reverse_iterator< DataModel_detail::iterator< DVL > > end, const Compare &comp)
Specialization of sort for DataVector/List.
#define ATH_MSG_WARNING(x)
virtual int get_hash(const Identifier &id, IdentifierHash &hash_id, const IdContext *context=0) const override
Create hash id from compact id (return == 0 for OK)
int technology(const Identifier &id) const
std::string m_nm
Message source name.
Identifier muon(void) const
int get_expanded_id_calc(const Identifier &compact_id, ExpandedIdentifier &id, const IdContext *context) const
IdContext module_context() const
id for module
This is the individual specification for the range of one ExpandedIdentifier IdentifierField.
void resetAndSet(const IdDictFieldImplementation &dict, const int new_val, Identifier &id) const
size_type m_DETECTORELEMENT_INDEX
static int stationPhiMax()
bool get_previous(element_type current, element_type &previous) const
Returns false if previous/next is at end of range, or not possible.
std::vector< Identifier >::const_iterator const_id_iterator
IdDictDictionary * m_lar_dict
IdDictFieldImplementation m_tec_impl
Identifier multilayerID(const Identifier &channeldID) const
unsigned long long value_type
bool is_lvl1_online(Identifier id) const
bool is_stgc(Identifier id) const
static constexpr int NOT_VALID_HASH
IdDictFieldImplementation m_mla_impl
void initMessaging() const
Initialize our message level and MessageSvc.
size_type cardinality() const
Computes a possible cardinality from all ranges.
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
boost::thread_specific_ptr< MsgStream > m_msg_tls
MsgStream instance (a std::cout like with print-out levels)
std::set< int > m_isForward
int get_compact_id(const ExpandedIdentifier &id, Identifier &compact_id, const IdContext *context) const
static int stationPhiMin()
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.
std::vector< IdDictFieldImplementation > m_implementation
bool validTechnology(int technology) const
ranges_by_station_t m_channel_ranges_by_station
IdContext technology_context() const
access to IdContext's which define which levels or fields are contained in the Muon id
static int tubeLayerMin()
bool is_mdt(Identifier id) const
Range::field m_lvl1_field
Identifier parentID(const Identifier &id) const
get parent id from channel id
size_type m_CHANNEL_INDEX
static const std::string BAD_NAME
const IdDictDictionary * m_dict