|
ATLAS Offline Software
|
#include <TGCCabling.h>
|
| TGCCabling (const std::string &filenameASDToPP, const std::string &filenameInPP, const std::string &filenamePPToSL, const std::string &filenameSLBToROD) |
|
virtual | ~TGCCabling (void) |
|
virtual TGCChannelId * | getASDOutChannel (const TGCChannelId *slb_in) const |
|
const TGCModuleId * | getSLBFromReadout (TGCId::SideType side, int rodId, int sswId, int sbLoc) const |
|
int | getRxIdFromReadout (TGCId::SideType side, int rodId, int sswId, int sbLoc) const |
|
TGCModuleId * | getSLBFromRxId (TGCId::SideType side, int rodId, int sswId, int rxId) const |
|
bool | getReadoutFromSLB (const TGCModuleSLB *slb, TGCId::SideType &side, int &rodId, int &sswId, int &sbLoc) const |
|
TGCChannelId * | getASDOutFromReadout (TGCId::SideType side, int rodId, int sswId, int sbLoc, int channel, bool orChannel=false) const |
|
bool | getReadoutFromASDOut (const TGCChannelASDOut *asdout, TGCId::SideType &side, int &rodId, int &sswId, int &sbLoc, int &channel, bool orChannel=false) const |
|
bool | getHighPtIDFromReadout (TGCId::SideType side, int rodId, int sswId, int sbLoc, int channel, TGCId::SignalType &signal, TGCId::RegionType ®ion, int §orInReadout, int &hpbId, int &block, int &hitId, int &pos) const |
|
bool | getReadoutFromHighPtID (TGCId::SideType side, int rodId, int &sswId, int &sbLoc, int &channel, TGCId::SignalType signal, TGCId::RegionType region, int sectorInReadout, int hpbId, int block, int hitId, int pos, TGCId::ModuleType moduleType, bool orChannel) const |
|
bool | getLowPtCoincidenceFromReadout (TGCId::SideType side, int rodId, int sswId, int sbLoc, int channel, int &block, int &pos, bool middle=false) const |
|
bool | getReadoutFromLowPtCoincidence (TGCId::SideType side, int rodId, int sswId, int sbLoc, int &channel, int block, int pos, bool middle=false) const |
|
TGCChannelId * | getChannel (const TGCChannelId *channelId, TGCChannelId::ChannelIdType type, bool orChannel=false) const |
|
TGCModuleMap * | getModule (const TGCModuleId *moduleId, TGCModuleId::ModuleIdType type) const |
|
StatusCode | updateCableASDToPP () |
|
Definition at line 34 of file TGCCabling.h.
◆ MAXMINREADOUTIDS
Enumerator |
---|
MAXRODID | |
MINRODID | |
MAXSRODID | |
MINSRODID | |
MAXSSWID | |
MINSSWID | |
MAXSBLOC | |
MINSBLOC | |
MINCHANNELID | |
MAXCHANNELID | |
Definition at line 51 of file TGCCabling.h.
◆ TGCCabling() [1/3]
MuonTGC_Cabling::TGCCabling::TGCCabling |
( |
| ) |
|
|
privatedelete |
◆ TGCCabling() [2/3]
◆ TGCCabling() [3/3]
MuonTGC_Cabling::TGCCabling::TGCCabling |
( |
const std::string & |
filenameASDToPP, |
|
|
const std::string & |
filenameInPP, |
|
|
const std::string & |
filenamePPToSL, |
|
|
const std::string & |
filenameSLBToROD |
|
) |
| |
◆ ~TGCCabling()
MuonTGC_Cabling::TGCCabling::~TGCCabling |
( |
void |
| ) |
|
|
virtual |
◆ getASDOutChannel()
Definition at line 68 of file TGCCabling.cxx.
70 TGCChannelSLBIn slb_in(in->getSideType(),
◆ getASDOutFromReadout()
TGCChannelId * MuonTGC_Cabling::TGCCabling::getASDOutFromReadout |
( |
TGCId::SideType |
side, |
|
|
int |
rodId, |
|
|
int |
sswId, |
|
|
int |
sbLoc, |
|
|
int |
channel, |
|
|
bool |
orChannel = false |
|
) |
| const |
Definition at line 555 of file TGCCabling.cxx.
565 if(!slb)
return nullptr;
567 TGCChannelSLBIn slbin(slb->getSideType(),
568 slb->getModuleType(),
569 slb->getRegionType(),
573 if(!slbin.isValid())
return nullptr;
◆ getChannel()
Definition at line 616 of file TGCCabling.cxx.
625 if(!asdout)
return nullptr;
626 if(!asdout->isValid()){
632 if(!ppin)
return nullptr;
633 if(!ppin->isValid()){
639 if(!ppout)
return nullptr;
640 if(!ppout->isValid()){
656 if(!ppin)
return nullptr;
657 if(!ppin->isValid()){
663 if(!ppout)
return nullptr;
664 if(!ppout->isValid()){
690 if(!slbout)
return nullptr;
691 if(!slbout->isValid()) {
703 if(!ppout)
return nullptr;
704 if(!ppout->isValid()){
710 if(!ppin)
return nullptr;
711 if(!ppin->isValid()){
721 if(!ppout)
return nullptr;
722 if(!ppout->isValid()){
728 if(!ppin)
return nullptr;
729 if(!ppin->isValid()){
735 if(!asdout)
return nullptr;
736 if(!asdout->isValid()){
755 if(!slbout)
return nullptr;
756 if(!slbout->isValid()){
◆ getHighPtIDFromReadout()
bool MuonTGC_Cabling::TGCCabling::getHighPtIDFromReadout |
( |
TGCId::SideType |
side, |
|
|
int |
rodId, |
|
|
int |
sswId, |
|
|
int |
sbLoc, |
|
|
int |
channel, |
|
|
TGCId::SignalType & |
signal, |
|
|
TGCId::RegionType & |
region, |
|
|
int & |
sectorInReadout, |
|
|
int & |
hpbId, |
|
|
int & |
block, |
|
|
int & |
hitId, |
|
|
int & |
pos |
|
) |
| const |
Definition at line 428 of file TGCCabling.cxx.
443 sectorInReadout = -1;
455 TGCChannelSLBIn slbin(slb->getSideType(),
456 slb->getModuleType(),
457 slb->getRegionType(),
464 if(!hpbin->isValid()) {
468 signal = hpbin->getSignalType();
469 region = hpbin->getRegionType();
470 sectorInReadout = hpbin->getSectorInReadout();
471 hpbId = hpbin->getId();
472 block = hpbin->getBlock();
473 pos = hpbin->getChannel()%2;
474 hitId = (hpbin->getChannel() -
pos)/2;
◆ getIndexFromReadoutWithoutChannel()
◆ getLowPtCoincidenceFromReadout()
bool MuonTGC_Cabling::TGCCabling::getLowPtCoincidenceFromReadout |
( |
TGCId::SideType |
side, |
|
|
int |
rodId, |
|
|
int |
sswId, |
|
|
int |
sbLoc, |
|
|
int |
channel, |
|
|
int & |
block, |
|
|
int & |
pos, |
|
|
bool |
middle = false |
|
) |
| const |
Definition at line 520 of file TGCCabling.cxx.
535 TGCChannelSLBIn slbin(slb->getSideType(),
536 slb->getModuleType(),
537 slb->getRegionType(),
541 if(!slbin.isValid())
return false;
544 if(!slbout)
return false;
546 block = slbout->getBlock();
547 pos = slbout->getChannel();
◆ getModule()
Definition at line 773 of file TGCCabling.cxx.
775 switch(moduleId->getModuleIdType()){
◆ getReadoutFromASDOut()
bool MuonTGC_Cabling::TGCCabling::getReadoutFromASDOut |
( |
const TGCChannelASDOut * |
asdout, |
|
|
TGCId::SideType & |
side, |
|
|
int & |
rodId, |
|
|
int & |
sswId, |
|
|
int & |
sbLoc, |
|
|
int & |
channel, |
|
|
bool |
orChannel = false |
|
) |
| const |
Definition at line 580 of file TGCCabling.cxx.
598 if(!slbin)
return false;
601 TGCModuleSLB* slb =
dynamic_cast<TGCModuleSLB*
>(slbin->getModule());
603 if(!slb)
return false;
◆ getReadoutFromHighPtID()
bool MuonTGC_Cabling::TGCCabling::getReadoutFromHighPtID |
( |
TGCId::SideType |
side, |
|
|
int |
rodId, |
|
|
int & |
sswId, |
|
|
int & |
sbLoc, |
|
|
int & |
channel, |
|
|
TGCId::SignalType |
signal, |
|
|
TGCId::RegionType |
region, |
|
|
int |
sectorInReadout, |
|
|
int |
hpbId, |
|
|
int |
block, |
|
|
int |
hitId, |
|
|
int |
pos, |
|
|
TGCId::ModuleType |
moduleType, |
|
|
bool |
orChannel |
|
) |
| const |
Definition at line 349 of file TGCCabling.cxx.
371 int readoutSector = (rodId -1);
372 int sector = sectorInReadout;
388 TGCChannelHPBIn hpbin(
side,
395 if(!hpbin.isValid())
return false;
398 if(!slbout)
return 0;
399 if(!slbout->isValid()){
406 if(!slbin)
return false;
409 TGCModuleSLB* slb =
dynamic_cast<TGCModuleSLB*
>(slbin->getModule());
411 if(!slb)
return false;
◆ getReadoutFromLowPtCoincidence()
bool MuonTGC_Cabling::TGCCabling::getReadoutFromLowPtCoincidence |
( |
TGCId::SideType |
side, |
|
|
int |
rodId, |
|
|
int |
sswId, |
|
|
int |
sbLoc, |
|
|
int & |
channel, |
|
|
int |
block, |
|
|
int |
pos, |
|
|
bool |
middle = false |
|
) |
| const |
Definition at line 482 of file TGCCabling.cxx.
491 bool orChannel =
flag;
499 TGCChannelSLBOut slbout(slb->getSideType(),
500 slb->getModuleType(),
501 slb->getRegionType(),
509 if(!slbin)
return false;
◆ getReadoutFromSLB()
Definition at line 259 of file TGCCabling.cxx.
271 if(!slb)
return false;
274 side = slb->getSideType();
278 if(!sswMap)
return false;
281 TGCModuleId* ssw = sswMap->popModuleId(0);
283 if(!ssw)
return false;
287 sswId = ssw->getId();
291 sbLoc = slb->getSBLoc();
297 delete ssw; ssw =
nullptr;
301 TGCModuleSLB* pSlb=
nullptr;
303 const int size = slbMap->size();
305 pSlb =
dynamic_cast<TGCModuleSLB*
>(slbMap->moduleId(
i));
308 slb->getRegionType() == pSlb->getRegionType() &&
309 slb->getSector() == pSlb->getSector() &&
310 slb->getId() == pSlb->getId()){
311 if(slb->getModuleType() == pSlb->getModuleType()) {
312 sbLoc = pSlb->getSBLoc();
318 sbLoc = pSlb->getSBLoc();
334 if(!rodMap)
return false;
337 TGCModuleId*
rod = rodMap->popModuleId(0);
339 if(!
rod)
return false;
342 rodId =
rod->getId();
◆ getRxIdFromReadout()
int MuonTGC_Cabling::TGCCabling::getRxIdFromReadout |
( |
TGCId::SideType |
side, |
|
|
int |
rodId, |
|
|
int |
sswId, |
|
|
int |
sbLoc |
|
) |
| const |
Definition at line 159 of file TGCCabling.cxx.
167 int readoutSector = rodId -1 ;
168 TGCModuleROD
rod(
side,readoutSector);
172 if(!sswMap)
return rxId;
174 TGCModuleId* ssw =
nullptr;
176 const int sswMapsize = sswMap->size();
177 for(
int i=0;
i<sswMapsize;
i++){
178 if((sswMap->moduleId(
i))->getId()==sswId){
179 ssw = sswMap->popModuleId(
i);
185 if(!
found || !ssw)
return rxId;
191 if(!slbMap)
return rxId;
193 TGCModuleSLB* slb=
nullptr;
195 const int slbMapsize = slbMap->size();
196 for(
int i=0;
i<slbMapsize;
i++){
197 slb =
dynamic_cast<TGCModuleSLB*
>(slbMap->moduleId(
i));
198 if(slb && slb->getSBLoc()== sbLoc){
199 rxId = slbMap->connector(
i);
◆ getSLBFromReadout()
Definition at line 83 of file TGCCabling.cxx.
88 std::scoped_lock lock (
m_mutex);
90 int indexFromReadoutWithoutChannel
93 = m_slbModuleIdMap.find(indexFromReadoutWithoutChannel);
94 if(
it!=m_slbModuleIdMap.end()) {
101 int readoutSector = rodId -1 ;
102 TGCModuleROD
rod(
side,readoutSector);
107 m_slbModuleIdMap.insert(std::pair<int, TGCModuleId*>(indexFromReadoutWithoutChannel, 0));
111 TGCModuleId* ssw =
nullptr;
113 const int sswMapsize = sswMap->size();
114 for(
int i=0;
i<sswMapsize;
i++){
115 if((sswMap->moduleId(
i))->getId()==sswId){
116 ssw = sswMap->popModuleId(
i);
123 m_slbModuleIdMap.insert(std::pair<int, TGCModuleId*>(indexFromReadoutWithoutChannel, 0));
132 m_slbModuleIdMap.insert(std::pair<int, TGCModuleId*>(indexFromReadoutWithoutChannel, 0));
136 TGCModuleSLB* slb=
nullptr;
138 const int slbMapsize = slbMap->size();
139 for(
int i=0;
i<slbMapsize;
i++){
140 slb =
dynamic_cast<TGCModuleSLB*
>(slbMap->moduleId(
i));
141 if(slb && slb->getSBLoc()== sbLoc){
143 slb =
dynamic_cast<TGCModuleSLB*
>(slbMap->popModuleId(
i));
150 m_slbModuleIdMap.insert(std::pair<int, TGCModuleId*>(indexFromReadoutWithoutChannel, 0));
154 m_slbModuleIdMap.insert(std::pair<int, TGCModuleId*>(indexFromReadoutWithoutChannel, slb));
◆ getSLBFromRxId()
Definition at line 209 of file TGCCabling.cxx.
217 int readoutSector = rodId -1 ;
218 TGCModuleROD
rod(
side,readoutSector);
222 if(!sswMap)
return nullptr;
224 TGCModuleId* ssw =
nullptr;
226 const int size = sswMap->size();
228 if((sswMap->moduleId(
i))->getId()==sswId){
229 ssw = sswMap->popModuleId(
i);
235 if(!
found || !ssw)
return nullptr;
241 if(!slbMap)
return nullptr;
243 TGCModuleSLB* slb=
nullptr;
244 int ip = slbMap->find(rxId);
245 if(ip <0 || ip >= slbMap->size()){
246 delete slbMap; slbMap =
nullptr;
249 slb =
dynamic_cast<TGCModuleSLB*
>(slbMap->popModuleId(
ip));
252 if(!slb)
return nullptr;
◆ operator=()
◆ updateCableASDToPP()
StatusCode MuonTGC_Cabling::TGCCabling::updateCableASDToPP |
( |
| ) |
|
◆ ATLAS_THREAD_SAFE
std::map<int, TGCModuleId*> m_slbModuleIdMap MuonTGC_Cabling::TGCCabling::ATLAS_THREAD_SAFE |
|
mutableprivate |
◆ m_cableASDToPP
◆ m_cableHPBToSL
◆ m_cableInASD
◆ m_cableInPP
◆ m_cableInSLB
◆ m_cablePPToSLB
◆ m_cableSLBToHPB
◆ m_cableSLBToSSW
◆ m_cableSSWToROD
◆ m_mutex
std::mutex MuonTGC_Cabling::TGCCabling::m_mutex |
|
mutableprivate |
The documentation for this class was generated from the following files:
JetConstituentVector::iterator iterator
TGCChannelId * getChannel(const TGCChannelId *channelId, TGCChannelId::ChannelIdType type, bool orChannel=false) const
TGCCableSSWToROD * m_cableSSWToROD
TGCCableInASD * m_cableInASD
TGCCableInPP * m_cableInPP
TGCCableSLBToHPB * m_cableSLBToHPB
virtual TGCModuleMap * getModule(const TGCModuleId *moduleId) const
static constexpr int N_RODS
TGCCableSLBToSSW * m_cableSLBToSSW
const TGCModuleId * getSLBFromReadout(TGCId::SideType side, int rodId, int sswId, int sbLoc) const
static constexpr int NUM_FORWARD_SECTOR
virtual TGCModuleMap * getModule(const TGCModuleId *moduleId) const
virtual TGCChannelId * getChannel(const TGCChannelId *channelId, bool orChannel=false) const
TGCCableHPBToSL * m_cableHPBToSL
virtual TGCChannelId * getChannel(const TGCChannelId *channelId, bool orChannel=false) const
TGCCableASDToPP * m_cableASDToPP
virtual TGCModuleMap * getModule(const TGCModuleId *moduleId) const
TGCChannelId * getChannelInforHPB(const TGCChannelId *hpbin, TGCId::ModuleType moduleType, bool orChannel=false) const
virtual TGCModuleMap * getModule(const TGCModuleId *moduleId) const
virtual TGCChannelId * getChannel(const TGCChannelId *channelId, bool orChannel=false) const
TGCModuleMap * getModule(const TGCModuleId *moduleId, TGCModuleId::ModuleIdType type) const
StatusCode updateDatabase()
virtual TGCChannelId * getChannel(const TGCChannelId *channelId, bool orChannel=false) const
TGCCablePPToSLB * m_cablePPToSLB
TGCCableInSLB * m_cableInSLB
static constexpr int NUM_ENDCAP_SECTOR
int getIndexFromReadoutWithoutChannel(const TGCId::SideType side, const int rodId, const int sswId, const int sbLoc) const
virtual TGCChannelId * getChannel(const TGCChannelId *channelId, bool orChannel=false) const
virtual TGCChannelId * getChannel(const TGCChannelId *channelId, bool orChannel=false) const
virtual TGCModuleMap * getModule(const TGCModuleId *moduleId) const
bool getReadoutFromSLB(const TGCModuleSLB *slb, TGCId::SideType &side, int &rodId, int &sswId, int &sbLoc) const