![]() |
ATLAS Offline Software
|
#include <MuonDetectorManager.h>
Classes | |
| struct | MSEnvelopeSorter |
| Helper struct to ensure that the spectrometer sectors & chambers are sorted. More... | |
Public Types | |
| using | ChIndex = Muon::MuonStationIndex::ChIndex |
| template<class MuonDetectorType > | |
| using | ElementPtr_t = std::unique_ptr< MuonDetectorType > |
| : Abrivation of the smart pointer holding the readout element More... | |
| template<class MuonDetectorType > | |
| using | ElementStorage_t = std::vector< ElementPtr_t< MuonDetectorType > > |
| : Abbrivation of the container holding all readout elements of a technology. More... | |
| using | MuonSectorSet = std::set< const SpectrometerSector *, MSEnvelopeSorter > |
| using | MuonChamberSet = std::set< const Chamber *, MSEnvelopeSorter > |
Public Member Functions | |
| MuonDetectorManager () | |
| ~MuonDetectorManager () | |
| unsigned int | getNumTreeTops () const override final |
| Declaration of the readout element getters & setter function as described above. More... | |
| PVConstLink | getTreeTop (unsigned int i) const override final |
| Returns the i-the tree top GeoModel volume. More... | |
| void | addTreeTop (PVConstLink pv) |
| Adds a new GeoModelVolume with its children as a new top node of the muon system. More... | |
| const Muon::IMuonIdHelperSvc * | idHelperSvc () const |
| Returns a pointer to the central MuonIdHelperSvc. More... | |
| std::vector< const MuonReadoutElement * > | getAllReadoutElements () const |
| Returns the list of all detector elements. More... | |
| std::vector< MuonReadoutElement * > | getAllReadoutElements () |
| const MuonReadoutElement * | getReadoutElement (const Identifier &id) const |
| Returns a generic Muon readout element. More... | |
| MuonReadoutElement * | getReadoutElement (const Identifier &id) |
| void | addSpectrometerSector (ElementPtr_t< SpectrometerSector > &&chSector) |
| Add a spectrometer enevelope object to the manager. More... | |
| const SpectrometerSector * | getSectorEnvelope (const Identifier &channelId) const |
| Retrieves the spectrometer envelope enclosing the channel's readout element. More... | |
| const SpectrometerSector * | getSectorEnvelope (const Muon::MuonStationIndex::ChIndex chIdx, const unsigned sector, const int side) const |
| Retrieves the spectrometer envelope from a generic identifier as it's used by e.g., the xAOD::MuonSegment. More... | |
| const Chamber * | getChamber (const Identifier &channelId) const |
| Retrieves the chamber enclosing the channel's readout element. More... | |
| MuonSectorSet | getAllSectors () const |
| : Returns all MuonChambers associated with the readout geometry More... | |
| MuonChamberSet | getAllChambers () const |
| std::vector< ActsTrk::DetectorType > | getDetectorTypes () const |
| Returns a list of all detector types. More... | |
| template<> | |
| void | linkElements (ElementStorage_t< MdtReadoutElement > &detStore, MdtReadoutElement *refEle) |
| 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... | |
Private Types | |
| using | EnvelopeMap_t = std::unordered_map< unsigned, const SpectrometerSector * > |
| Abbrivation to find the sector envelopes sorted by the generic MS identifier. More... | |
Private Member Functions | |
| template<class MuonDetectorType > | |
| void | linkElements (ElementStorage_t< MuonDetectorType > &allStore, MuonDetectorType *readOutEle) |
| Method that connects the same elements from the station with the parsed readout Element and vice versa. More... | |
| void | initMessaging () const |
| Initialize our message level and MessageSvc. More... | |
Private Attributes | |
| ServiceHandle< Muon::IMuonIdHelperSvc > | m_idHelperSvc |
| ElementStorage_t< SpectrometerSector > | m_secEnvelopes {} |
| EnvelopeMap_t | m_envelopesById {} |
| ElementStorage_t< MdtReadoutElement > | m_mdtEles {} |
| ElementStorage_t< TgcReadoutElement > | m_tgcEles {} |
| ElementStorage_t< RpcReadoutElement > | m_rpcEles {} |
| ElementStorage_t< sTgcReadoutElement > | m_sTgcEles {} |
| ElementStorage_t< MmReadoutElement > | m_mmEles {} |
| std::vector< PVConstLink > | m_treeTopVector {} |
| std::string | m_nm |
| Message source name. More... | |
| boost::thread_specific_ptr< MsgStream > | m_msg_tls |
| MsgStream instance (a std::cout like with print-out levels) More... | |
| std::atomic< IMessageSvc * > | m_imsg { nullptr } |
| MessageSvc pointer. More... | |
| std::atomic< MSG::Level > | m_lvl { MSG::NIL } |
| Current logging level. More... | |
| std::atomic_flag m_initialized | ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
| Messaging initialized (initMessaging) More... | |
Definition at line 62 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
Definition at line 68 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
| using MuonGMR4::MuonDetectorManager::ElementPtr_t = std::unique_ptr<MuonDetectorType> |
: Abrivation of the smart pointer holding the readout element
Definition at line 70 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
| using MuonGMR4::MuonDetectorManager::ElementStorage_t = std::vector<ElementPtr_t<MuonDetectorType> > |
: Abbrivation of the container holding all readout elements of a technology.
The index of the vector entry corresponds to the IdentifierHash of the readout element.
Definition at line 73 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
private |
Abbrivation to find the sector envelopes sorted by the generic MS identifier.
Definition at line 146 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
| using MuonGMR4::MuonDetectorManager::MuonChamberSet = std::set<const Chamber*, MSEnvelopeSorter> |
Definition at line 124 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
| using MuonGMR4::MuonDetectorManager::MuonSectorSet = std::set<const SpectrometerSector*, MSEnvelopeSorter> |
Definition at line 123 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
| MuonGMR4::MuonDetectorManager::MuonDetectorManager | ( | ) |
Definition at line 133 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
| MuonGMR4::MuonDetectorManager::~MuonDetectorManager | ( | ) |
Definition at line 128 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
| void MuonGMR4::MuonDetectorManager::addSpectrometerSector | ( | ElementPtr_t< SpectrometerSector > && | chSector | ) |
Add a spectrometer enevelope object to the manager.
| chSector | Unique_ptr to the sector |
Definition at line 173 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
| void MuonGMR4::MuonDetectorManager::addTreeTop | ( | PVConstLink | pv | ) |
Adds a new GeoModelVolume with its children as a new top node of the muon system.
Definition at line 156 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
| MuonChamberSet MuonGMR4::MuonDetectorManager::getAllChambers | ( | ) | const |
Definition at line 215 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
| std::vector<MuonReadoutElement*> MuonGMR4::MuonDetectorManager::getAllReadoutElements | ( | ) |
| std::vector<const MuonReadoutElement*> MuonGMR4::MuonDetectorManager::getAllReadoutElements | ( | ) | const |
Returns the list of all detector elements.
| MuonSectorSet MuonGMR4::MuonDetectorManager::getAllSectors | ( | ) | const |
: Returns all MuonChambers associated with the readout geometry
Definition at line 207 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
| const Chamber * MuonGMR4::MuonDetectorManager::getChamber | ( | const Identifier & | channelId | ) | const |
Retrieves the chamber enclosing the channel's readout element.
| channelId | Identifier of a muon channel of interest |
Definition at line 203 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
| std::vector< ActsTrk::DetectorType > MuonGMR4::MuonDetectorManager::getDetectorTypes | ( | ) | const |
Returns a list of all detector types.
Definition at line 162 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
|
finaloverride |
Declaration of the readout element getters & setter function as described above.
Returns the number of tree top nodes describing the muon system
Definition at line 149 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
| MuonReadoutElement* MuonGMR4::MuonDetectorManager::getReadoutElement | ( | const Identifier & | id | ) |
| const MuonReadoutElement* MuonGMR4::MuonDetectorManager::getReadoutElement | ( | const Identifier & | id | ) | const |
Returns a generic Muon readout element.
| const SpectrometerSector * MuonGMR4::MuonDetectorManager::getSectorEnvelope | ( | const Identifier & | channelId | ) | const |
Retrieves the spectrometer envelope enclosing the channel's readout element.
| channelId | Identifier of a muon channel of interest |
Definition at line 198 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
| const SpectrometerSector * MuonGMR4::MuonDetectorManager::getSectorEnvelope | ( | const Muon::MuonStationIndex::ChIndex | chIdx, |
| const unsigned | sector, | ||
| const int | side | ||
| ) | const |
Retrieves the spectrometer envelope from a generic identifier as it's used by e.g., the xAOD::MuonSegment.
| chIdx | Chamber index indicating where the envelope is residing (BIL, BIS, etc.) |
| sector | Global sector of the envelope (1-16) |
| side | Integer indicating whether, the envelope is in the positive or negative hemisphere |
Definition at line 186 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
|
finaloverride |
Returns the i-the tree top GeoModel volume.
Definition at line 152 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
| const Muon::IMuonIdHelperSvc * MuonGMR4::MuonDetectorManager::idHelperSvc | ( | ) | const |
Returns a pointer to the central MuonIdHelperSvc.
Definition at line 159 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
|
privateinherited |
Initialize our message level and MessageSvc.
This method should only be called once.
Definition at line 39 of file AthMessaging.cxx.
| void MuonGMR4::MuonDetectorManager::linkElements | ( | ElementStorage_t< MdtReadoutElement > & | detStore, |
| MdtReadoutElement * | refEle | ||
| ) |
The complementary detector element has not yet been parsed.
Definition at line 232 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
|
private |
Method that connects the same elements from the station with the parsed readout Element and vice versa.
The way how they are inter-linked depends on the detector technology For the moment, only link Mdts from the same multilayer against each other.
| allStore | Storage of all detector element that are cached up to this point |
| readOutEle | Particular readout element to link against the existing elements |
Definition at line 228 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
|
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.
|
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.
|
inlineinherited |
Test the output level.
| lvl | The message level to test against |
| true | Messages at level "lvl" will be printed |
Definition at line 151 of file AthMessaging.h.
|
inherited |
Change the current logging level.
Use this rather than msg().setLevel() for proper operation with MT.
Definition at line 28 of file AthMessaging.cxx.
|
mutableprivateinherited |
Messaging initialized (initMessaging)
Definition at line 141 of file AthMessaging.h.
|
private |
Definition at line 147 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
private |
Definition at line 141 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
mutableprivateinherited |
MessageSvc pointer.
Definition at line 135 of file AthMessaging.h.
|
mutableprivateinherited |
Current logging level.
Definition at line 138 of file AthMessaging.h.
|
private |
Definition at line 149 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
private |
Definition at line 153 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
mutableprivateinherited |
MsgStream instance (a std::cout like with print-out levels)
Definition at line 132 of file AthMessaging.h.
|
privateinherited |
Message source name.
Definition at line 129 of file AthMessaging.h.
|
private |
Definition at line 151 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
private |
Definition at line 144 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
private |
Definition at line 152 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
private |
Definition at line 150 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
private |
Definition at line 155 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
1.8.18