![]() |
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 | |
| template<class MuonDetectorType> | |
| using | ElementStorage_t = std::vector<ElementPtr_t<MuonDetectorType>> |
| : Abbrivation of the container holding all readout elements of a technology. | |
| using | MuonSectorSet = std::vector<const SpectrometerSector*> |
| using | MuonChamberSet = std::vector<const Chamber*> |
Public Member Functions | |
| MuonDetectorManager () | |
| ~MuonDetectorManager () | |
| unsigned int | getNumTreeTops () const override final |
| Declaration of the readout element getters & setter function as described above. | |
| PVConstLink | getTreeTop (unsigned int i) const override final |
| Returns the i-the tree top GeoModel volume. | |
| void | addTreeTop (PVConstLink pv) |
| Adds a new GeoModelVolume with its children as a new top node of the muon system. | |
| void | clearTreeTops () |
| Clears all tree tops helds by the manager. | |
| const Muon::IMuonIdHelperSvc * | idHelperSvc () const |
| Returns a pointer to the central MuonIdHelperSvc. | |
| std::vector< const MuonReadoutElement * > | getAllReadoutElements () const |
| Returns the list of all detector elements. | |
| std::vector< MuonReadoutElement * > | getAllReadoutElements () |
| const MuonReadoutElement * | getReadoutElement (const Identifier &id) const |
| Returns a generic Muon readout element. | |
| MuonReadoutElement * | getReadoutElement (const Identifier &id) |
| void | addSpectrometerSector (ElementPtr_t< SpectrometerSector > &&chSector) |
| Add a spectrometer enevelope object to the manager. | |
| const SpectrometerSector * | getSectorEnvelope (const Identifier &channelId) const |
| Retrieves the spectrometer envelope enclosing the channel's readout element. | |
| 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. | |
| const Chamber * | getChamber (const Identifier &channelId) const |
| Retrieves the chamber enclosing the channel's readout element. | |
| MuonSectorSet | getAllSectors () const |
| : Returns all MuonChambers associated with the readout geometry | |
| MuonChamberSet | getAllChambers () const |
| std::vector< ActsTrk::DetectorType > | getDetectorTypes () const |
| Returns a list of all detector types. | |
| template<> | |
| void | linkElements (ElementStorage_t< MdtReadoutElement > &detStore, MdtReadoutElement *refEle) |
| template<> | |
| void | linkElements (ElementStorage_t< MdtReadoutElement > &detStore, MdtReadoutElement *refEle) |
| bool | msgLvl (const MSG::Level lvl) const |
| Test the output level. | |
| MsgStream & | msg () const |
| The standard message stream. | |
| MsgStream & | msg (const MSG::Level lvl) const |
| The standard message stream. | |
| void | setLevel (MSG::Level lvl) |
| Change the current logging level. | |
Private Types | |
| using | EnvelopeMap_t = std::unordered_map<unsigned, const SpectrometerSector*> |
| Abbrivation to find the sector envelopes sorted by the generic MS identifier. | |
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. | |
| void | initMessaging () const |
| Initialize our message level and MessageSvc. | |
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. | |
| boost::thread_specific_ptr< MsgStream > | m_msg_tls |
| MsgStream instance (a std::cout like with print-out levels) | |
| std::atomic< IMessageSvc * > | m_imsg { nullptr } |
| MessageSvc pointer. | |
| std::atomic< MSG::Level > | m_lvl { MSG::NIL } |
| Current logging level. | |
| std::atomic_flag m_initialized | ATLAS_THREAD_SAFE = ATOMIC_FLAG_INIT |
| Messaging initialized (initMessaging) | |
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 148 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
| using MuonGMR4::MuonDetectorManager::MuonChamberSet = std::vector<const Chamber*> |
Definition at line 126 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
| using MuonGMR4::MuonDetectorManager::MuonSectorSet = std::vector<const SpectrometerSector*> |
Definition at line 125 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
| MuonGMR4::MuonDetectorManager::MuonDetectorManager | ( | ) |
Definition at line 137 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
| MuonGMR4::MuonDetectorManager::~MuonDetectorManager | ( | ) |
Definition at line 132 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 179 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 162 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
| void MuonGMR4::MuonDetectorManager::clearTreeTops | ( | ) |
Clears all tree tops helds by the manager.
Definition at line 160 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
| MuonChamberSet MuonGMR4::MuonDetectorManager::getAllChambers | ( | ) | const |
Definition at line 213 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 210 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 206 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 168 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 153 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 201 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 189 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/src/MuonDetectorManager.cxx.
|
finaloverride |
Returns the i-the tree top GeoModel volume.
Definition at line 156 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 165 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 ) |
| void MuonGMR4::MuonDetectorManager::linkElements | ( | ElementStorage_t< MdtReadoutElement > & | detStore, |
| MdtReadoutElement * | refEle ) |
The complementary detector element has not yet been parsed.
Definition at line 230 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 226 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 163 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 178 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 149 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
private |
Definition at line 143 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
mutableprivateinherited |
|
mutableprivateinherited |
|
private |
Definition at line 151 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
private |
Definition at line 155 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 153 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
private |
Definition at line 146 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.
|
private |
Definition at line 154 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 157 of file MuonPhaseII/MuonDetDescr/MuonReadoutGeometryR4/MuonReadoutGeometryR4/MuonDetectorManager.h.