std::vector<TYPE MuonReadoutElement*> MuonDetectorManager::getAllReadoutElements()
TYPE { \
std::vector<TYPE MuonReadoutElement*> allEles{}; \
insert(getAllMdtReadoutElements(), allEles); \
insert(getAllRpcReadoutElements(), allEles); \
insert(getAllTgcReadoutElements(), allEles); \
insert(getAllMmReadoutElements(), allEles); \
insert(getAllsTgcReadoutElements(), allEles); \
return allEles; \
} \
TYPE MuonReadoutElement* MuonDetectorManager::getReadoutElement(
const Identifier&
id)
TYPE { \
switch(m_idHelperSvc->technologyIndex(id)) { \
return getMdtReadoutElement(id); \
return getRpcReadoutElement(id); \
return getTgcReadoutElement(id); \
return getsTgcReadoutElement(id); \
return getMmReadoutElement(id); \
default: \
ATH_MSG_WARNING(__FILE__<<":"<<__LINE__<<" Not a muon detector element " \
<<m_idHelperSvc->toString(id)); \
} \
return nullptr; \
}
#define TYPE(CODE, TYP, IOTYP)
TechnologyIndex
enum to classify the different layers in the muon spectrometer
89#define WRITE_ALLGETTER(TYPE) \
90 std::vector<TYPE MuonReadoutElement*> MuonDetectorManager::getAllReadoutElements() TYPE { \
91 std::vector<TYPE MuonReadoutElement*> allEles{}; \
92 insert(getAllMdtReadoutElements(), allEles); \
93 insert(getAllRpcReadoutElements(), allEles); \
94 insert(getAllTgcReadoutElements(), allEles); \
95 insert(getAllMmReadoutElements(), allEles); \
96 insert(getAllsTgcReadoutElements(), allEles); \
97 return allEles; \
98 } \
99 TYPE MuonReadoutElement* MuonDetectorManager::getReadoutElement(const Identifier& id) TYPE { \
100 switch(m_idHelperSvc->technologyIndex(id)) { \
101 using enum Muon::MuonStationIndex::TechnologyIndex; \
102 case MDT: \
103 return getMdtReadoutElement(id); \
104 case RPC: \
105 return getRpcReadoutElement(id); \
106 case TGC: \
107 return getTgcReadoutElement(id); \
108 case STGC: \
109 return getsTgcReadoutElement(id); \
110 case MM: \
111 return getMmReadoutElement(id); \
112 default: \
113 ATH_MSG_WARNING(__FILE__<<":"<<__LINE__<<" Not a muon detector element " \
114 <<m_idHelperSvc->toString(id)); \
115 } \
116 return nullptr; \
117 }