|
ATLAS Offline Software
|
Go to the documentation of this file.
13 #ifndef MUONIDHELPERS_MDTIDHELPER_H
14 #define MUONIDHELPERS_MDTIDHELPER_H
152 std::tuple<int, int, int, int>
251 #endif // MUONIDHELPERS_MDTIDHELPER_H
bool isBMG(const Identifier &id) const
is this a BMG chamber
int multilayer(const Identifier &id) const
Access to components of the ID.
bool validElement(const Identifier &id) const
IdDictFieldImplementation m_lay_impl
static int stationEtaMin(bool barrel)
Access to min and max of level ranges.
int numberOfMultilayers(const Identifier &id) const
static constexpr unsigned s_etaDim
std::array< unsigned int, s_modHash > m_module_hashes
static constexpr unsigned s_stDim
int tubeLayer(const Identifier &id) const
virtual ~MdtIdHelper()=default
int stationName(const Identifier &id) const
bool isValid(const T &p)
Av: we implement here an ATLAS-sepcific convention: all particles which are 99xxxxx are fine.
std::pair< int, int > multilayerMinMax(const Identifier &id) const
size_type m_TUBELAYER_INDEX
std::array< unsigned int, s_detDim > m_detectorElement_hashes
unsigned int moduleHashIdx(const Identifier &id) const
std::pair< int, int > findMinMax(const Identifier &id, const size_type field_index, const ranges_by_station_t &ranges_by_station) const
bool measuresPhi(const Identifier &id) const override
always false for MDTs
static int multilayerMax()
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
Identifier::size_type size_type
static int tubeLayerMax()
static int stationEtaMax(bool barrel)
int channel(const Identifier &id) const override
int tube(const Identifier &id) const
bool validChannel(const Identifier &id, int stationName, int stationEta, int stationPhi, int multilayer, int tubeLayer, int tube) const
static constexpr unsigned s_mlDim
std::tuple< int, int, int, int > stationEtaPhiMinMax(const Identifier &id) const
std::pair< int, int > stationEtaMinMax(const Identifier &id) const
int stationPhi(const Identifier &id) const
virtual int initialize_from_dictionary(const IdDictMgr &dict_mgr) override
Initialization from the identifier dictionary.
static constexpr unsigned int s_modHash
std::pair< int, int > stationPhiMinMax(const Identifier &id) const
unsigned int detEleHashIdx(const Identifier &id) const
Identifier channelID(int stationName, int stationEta, int stationPhi, int multilayer, int tubeLayer, int tube) const
ranges_by_station_t m_module_ranges_by_station
int stationEta(const Identifier &id) const
bool isBME(const Identifier &id) const
is this a BME chamber
IdDictFieldImplementation m_tub_impl
bool valid(const Identifier &id) const
Public validation of levels.
Identifier elementID(int stationName, int stationEta, int stationPhi) const
virtual int get_detectorElement_hash(const Identifier &id, IdentifierHash &hash_id) const override
#define CLASS_DEF(NAME, CID, VERSION)
associate a clid and a version to a type eg
static int stationPhiMax()
Identifier multilayerID(const Identifier &channeldID) const
int gasGap(const Identifier &id) const override
the gas-gap function for the MDT's returns the tube layer
IdDictFieldImplementation m_mla_impl
virtual int get_module_hash(const Identifier &id, IdentifierHash &hash_id) const override
IdDictFieldImplementation is used to capture the specification of a single field of an Identifier.
This is a "hash" representation of an Identifier. This encodes a 32 bit index which can be used to lo...
static constexpr int maxNTubesPerLayer
The maxNTubesPerLayer represents the absolute maximum of tubes which are built into a single multilay...
static constexpr unsigned int s_detDim
std::vector< std::vector< const Range * > > ranges_by_station_t
static int stationPhiMin()
int mdtTechnology() const
Utility methods.
ranges_by_station_t m_channel_ranges_by_station
static int tubeLayerMin()
bool isStNameInTech(const std::string &stationName) const override
The valid element checks converted the identifier to a stationName string in order to assess whether ...
Identifier parentID(const Identifier &id) const
get parent id from channel id
void idChannels(const Identifier &id, std::vector< Identifier > &vect) const