26 int& maxSswId,
int& maxSbloc,
28 int& maxChannelId)
const {
39 int& startEndcapSector,
40 int& coverageOfEndcapSector,
41 int& startForwardSector,
42 int& coverageOfForwardSector)
const {
43 int sectorInReadout = srodID - 17;
48 coverageOfEndcapSector =
50 startEndcapSector = sectorInReadout * coverageOfEndcapSector;
51 coverageOfForwardSector =
53 startForwardSector = sectorInReadout * coverageOfForwardSector;
61 const int sswID,
const int sbLoc,
62 const int channelID)
const {
71 int subDetectorID{0}, rodID{0}, sswID{0}, sbLoc{0}, channelID{0};
73 sbLoc, channelID,
true);
79 const int subDetectorID,
80 const int rodID,
const int sswID,
83 bool orChannel)
const {
84 int subsystemNumber{0}, octantNumber{0}, moduleNumber{0}, layerNumber{0},
85 rNumber{0}, wireOrStrip{0}, channelNumber{0};
89 subDetectorID, rodID, sswID, sbLoc, channelID, subsystemNumber,
90 octantNumber, moduleNumber, layerNumber, rNumber, wireOrStrip,
91 channelNumber, orChannel);
92 if ((!status) && (!orChannel)) {
94 <<
" Cannot get OnineID for "
95 <<
" subdetectorID=" << subDetectorID
96 <<
" rodID=" << rodID <<
" sswID=" << sswID
97 <<
" sbLoc=" << sbLoc <<
" channel=" << channelID
98 <<
" [ Or =" << orChannel <<
"] ");
106 moduleNumber, layerNumber, rNumber,
107 wireOrStrip, channelNumber);
111 <<
" Cannot get OfflineID for "
112 <<
" side=" << subsystemNumber <<
" octant="
113 << octantNumber <<
" module=" << moduleNumber
114 <<
" layer=" << layerNumber <<
" chamber=" << rNumber
115 <<
" w/s=" << wireOrStrip
116 <<
" channel=" << channelNumber);
125 int& subDetectorID,
int& rodID,
126 int& sswID,
int& sbLoc,
128 bool adChannel)
const {
139 offlineID, subsystemNumber, octantNumber, moduleNumber, layerNumber,
140 rNumber, wireOrStrip, channelNumber);
150 <<
" offlineID=" << offlineID <<
" onlineID: "
151 <<
" side=" << subsystemNumber <<
" octant=" << octantNumber
152 <<
" module=" << moduleNumber <<
" layer=" << layerNumber
153 <<
" chamber=" << rNumber <<
" w/s=" << wireOrStrip
154 <<
" channel=" << channelNumber);
158 channelID, subsystemNumber, octantNumber,
159 moduleNumber, layerNumber, rNumber,
160 wireOrStrip, channelNumber, adChannel);
166 << octantNumber <<
" module=" << moduleNumber
167 <<
" layer=" << layerNumber <<
" chamber="
168 << rNumber <<
" w/s=" << wireOrStrip
169 <<
" channel=" << channelNumber);
172 <<
" Cannot get ReadoutID for "
173 <<
" side=" << subsystemNumber <<
" octant="
174 << octantNumber <<
" module=" << moduleNumber
175 <<
" layer=" << layerNumber
176 <<
" chamber=" << rNumber <<
" w/s=" << wireOrStrip
177 <<
" channel=" << channelNumber);
181 ATH_MSG_DEBUG(
" side=" << subsystemNumber <<
" octant=" << octantNumber
182 <<
" module=" << moduleNumber <<
" layer="
183 << layerNumber <<
" chamber=" << rNumber
184 <<
" w/s=" << wireOrStrip <<
" channel="
185 << channelNumber <<
"adjacent=" << adChannel);
186 ATH_MSG_DEBUG(
" subDetectorID" << subDetectorID <<
" rodID=" << rodID
187 <<
" sswID=" << sswID
188 <<
" channelID=" << channelID);
197 const Identifier& offlineId,
int& subSystemNumber,
int& octantNumber,
198 int& moduleNumber,
int& layerNumber,
int& rNumber,
int& wireOrStrip,
199 int& channelNumber)
const {
201 const int iStation =
m_idHelperSvc->tgcIdHelper().stationName(offlineId);
202 const int stationType = (iStation - 39) / 2;
204 if ((stationType < 1) || (stationType > 4)) {
209 int iEta =
m_idHelperSvc->tgcIdHelper().stationEta(offlineId);
210 int iPhi =
m_idHelperSvc->tgcIdHelper().stationPhi(offlineId);
214 const int regionType =
218 const int sectorEI[] = {-1, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11,
219 12, 13, 14, 15, 16, 18, 19, 20, 22, 23, 0};
221 if (regionType ==
ENDCAP) {
222 if (stationType != 4) {
227 sector = sectorEI[iPhi];
236 if (stationType != 4) {
244 int max_module = (regionType ==
FORWARD || stationType == 4)
248 const int iOctant =
static_cast<int>(sector / max_module);
249 const int iModule = sector % max_module;
252 const int rIndex = std::abs(iEta);
255 const int iGasGap =
m_idHelperSvc->tgcIdHelper().gasGap(offlineId);
259 subSystemNumber = (iEta > 0) ? 1 : -1;
261 octantNumber = iOctant;
272 const int modmapE[7] = {-1, 0, 1, 3, 4, 6, 7};
273 const int modmapF[4] = {-1, 2, 5, 8};
274 const int modmapEI[4] = {-1, 9, 10, 11};
275 const int modmapFI[4] = {-1, 12, 13, 14};
277 if (stationType != 4) {
278 if (regionType ==
ENDCAP) {
279 moduleNumber = modmapE[iModule + 1];
282 moduleNumber = modmapF[iModule + 1];
286 if (regionType ==
ENDCAP) {
287 moduleNumber = modmapEI[iModule + 1];
290 moduleNumber = modmapFI[iModule + 1];
298 const int lyr_offset[5] = {0, -1, 2, 4, 6};
299 layerNumber = iGasGap + lyr_offset[stationType];
302 wireOrStrip =
m_idHelperSvc->tgcIdHelper().isStrip(offlineId);
305 int channel =
m_idHelperSvc->tgcIdHelper().channel(offlineId);
311 const int OffsetForT11S = 8;
316 if ((wireOrStrip == 0) && (stationType == 4)) {
317 if (regionType ==
ENDCAP) {
329 channel += OffsetForT11S;
338 if (subSystemNumber == 1) {
341 if (subSystemNumber == -1) {
347 if (wireOrStrip == 0) {
350 if (wireOrStrip == 1) {
359 if (regionType ==
ENDCAP) {
371 std::unique_ptr<TGCChannelId> asdout =
373 if (asdout ==
nullptr || !asdout->isValid()) {
376 channelNumber = asdout->getChannel();
384 Identifier& offlineId,
const int subSystemNumber,
const int octantNumber,
385 const int moduleNumber,
const int layerNumber,
const int rNumber,
386 const int wireOrStrip,
const int channelNumber)
const {
389 if (subSystemNumber == 1) {
392 if (subSystemNumber == -1) {
398 if (wireOrStrip == 0) {
401 if (wireOrStrip == 1) {
406 <<
" side=" << sideType <<
" octant=" << octantNumber
407 <<
" module=" << moduleNumber <<
" layer=" << layerNumber
408 <<
" chamber=" << rNumber <<
" w/s=" << signalType
409 <<
" channel=" << channelNumber);
413 layerNumber, rNumber, channelNumber);
416 <<
" side=" << sideType <<
" octant=" << octantNumber
417 <<
" module=" << moduleNumber
418 <<
" layer=" << layerNumber <<
" chamber=" << rNumber
419 <<
" w/s=" << signalType
420 <<
" channel=" << channelNumber);
425 std::unique_ptr<TGCChannelId> asdin =
427 if (!asdin || !asdin->isValid()) {
429 <<
" Illegal AsdIn for "
430 <<
" side=" << sideType <<
" octant=" << octantNumber
431 <<
" module=" << moduleNumber
432 <<
" layer=" << layerNumber <<
" chamber=" << rNumber
433 <<
" w/s=" << signalType
434 <<
" channel=" << channelNumber);
439 std::string stationNameStr;
440 switch (asdin->getStation()) {
442 stationNameStr = (asdin->isForward()) ?
"T1F" :
"T1E";
445 stationNameStr = (asdin->isForward()) ?
"T2F" :
"T2E";
448 stationNameStr = (asdin->isForward()) ?
"T3F" :
"T3E";
451 stationNameStr = (asdin->isForward()) ?
"T4F" :
"T4E";
461 int gasGap = asdin->getGasGap();
462 int isStrip = (asdin->isStrip()) ? 1 : 0;
463 int channel = asdin->getChannel();
465 if ((asdin->getStation() == 3) && (asdin->isEndcap())) {
467 constexpr std::array<int, 25> phiIE{-1, 1, 2, 3, 4, 5, 6, 7, 8,
468 -1, 9, 10, 11, 12, 13, 14, 15, -1,
469 16, 17, 18, -1, 19, 20, 21};
480 const int OffsetForT11S = 8;
484 if ((asdin->getStation() == 3) && (!isStrip)) {
485 if (asdin->isEndcap()) {
496 channel -= OffsetForT11S;
515 const int subDetectorID,
const int rodID,
const int sswID,
const int sbLoc,
516 const int channelID,
int& subsystemNumber,
int& octantNumber,
517 int& moduleNumber,
int& layerNumber,
int& rNumber,
int& wireOrStrip,
518 int& channelNumber,
bool orChannel)
const {
530 sideType, rodID, sswID, sbLoc, channelID, orChannel);
531 if (asdout ==
nullptr) {
534 <<
" Cannot get OnlineID of "
535 <<
" side=" << sideType <<
" rodID=" << rodID
536 <<
" sswID=" << sswID <<
" sbLoc=" << sbLoc
537 <<
" channel=" << channelID
538 <<
" [ Or =" << orChannel <<
"] ");
542 if (!asdout->isValid()) {
544 <<
" Illegal ASDout for "
545 <<
" side=" << sideType <<
" rodID=" << rodID
546 <<
" sswID=" << sswID <<
" sbLoc=" << sbLoc
547 <<
" channel=" << channelID <<
" [ Or =" << orChannel
553 subsystemNumber = (asdout->isAside()) ? 1 : -1;
556 octantNumber = asdout->getOctant();
559 rNumber = asdout->getChamber();
562 moduleNumber = asdout->getSectorModule();
564 layerNumber = asdout->getLayer();
567 wireOrStrip = (asdout->isStrip()) ? 1 : 0;
570 channelNumber = asdout->getChannel();
578 int& subDetectorID,
int& rodID,
int& sswID,
int& sbLoc,
int& channelID,
579 const int subsystemNumber,
const int octantNumber,
const int moduleNumber,
580 const int layerNumber,
const int rNumber,
const int wireOrStrip,
581 const int channelNumber,
bool adChannel)
const {
584 if (subsystemNumber == 1) {
587 if (subsystemNumber == -1) {
593 if (wireOrStrip == 0) {
596 if (wireOrStrip == 1) {
602 layerNumber, rNumber, channelNumber);
605 <<
" Cannot get ASDout for "
606 <<
" side=" << sideType <<
" signal=" << signalType
607 <<
" octant=" << octantNumber
608 <<
" module=" << moduleNumber
609 <<
" layer=" << layerNumber <<
" chamber=" << rNumber
610 <<
" channel=" << channelNumber);
619 channelID, adChannel);
625 <<
" Cannot get ReadoutID for "
626 <<
" side=" << sideType <<
" signal=" << signalType
627 <<
" octant=" << octantNumber <<
" module="
628 << moduleNumber <<
" layer=" << layerNumber
629 <<
" chamber=" << rNumber
630 <<
" channel=" << channelNumber);
651 const int iStation =
m_idHelperSvc->tgcIdHelper().stationName(elementID);
652 const int stationType = (iStation - 39) / 2;
654 int iEta =
m_idHelperSvc->tgcIdHelper().stationEta(elementID);
655 int iPhi =
m_idHelperSvc->tgcIdHelper().stationPhi(elementID);
659 const int regionType =
666 const int max_phi = (regionType ==
FORWARD || stationType == 4)
670 const int sector = ((iPhi - 1) + max_phi / 24 + max_phi) % max_phi;
671 int readoutSector =
static_cast<int>(sector / max_module);
673 if (stationType == 4) {
674 readoutSector = (readoutSector / 3);
675 readoutSector = 3 * readoutSector + 1;
678 rodID = readoutSector + 1;
686 const int subDetectorID,
687 const int rodID,
const int sswID,
690 bool orChannel)
const {
694 int maxRodId, maxSRodId, maxSswId, maxSbloc, minChannelId, maxChannelId;
699 if ((sswID > maxSswId) || (channelID < minChannelId) ||
700 (channelID > maxChannelId)) {
702 <<
" Illeagal channel ID"
703 <<
" subdetectorID=" << subDetectorID
704 <<
" rodID=" << rodID <<
" sswID=" << sswID
705 <<
" sbLoc=" << sbLoc <<
" channel=" << channelID
706 <<
" [ Or =" << orChannel <<
"] ");
711 sswID, sbLoc, channelID, orChannel);
714 " getElementIDfromReadoutID :" <<
" Cannot get OfflineID ");
718 elementID =
m_idHelperSvc->tgcIdHelper().elementID(offlineID);
725 bool& isEndcap,
int& moduleType,
726 int&
id,
const int subsectorID,
727 const int rodID,
const int sswID,
728 const int sbLoc)
const {
736 <<
" Cannot get SLB of "
737 <<
" side" << side <<
" rodID=" << rodID
738 <<
" sswID=" << sswID <<
" sbLoc=" << sbLoc);
745 int offset, numOfSector;
755 offset = numOfSector - numOfSector / 24;
765 const int subsectorID,
766 const int rodID,
const int sswID,
767 const int sbLoc)
const {
770 bool isAside = (subsectorID ==
m_AsideId);
777 <<
" Cannot get SLB of "
778 <<
" side" << side <<
" rodID=" << rodID
779 <<
" sswID=" << sswID <<
" sbLoc=" << sbLoc);
786 <<
"dynamic_cast<const "
787 "TGCModuleSLB*>(slb) failed.");
798 int& moduleType,
int&
id,
799 const int subsectorID,
const int rodID,
800 const int sswID,
const int rxId)
const {
804 std::unique_ptr<TGCModuleId> slb =
getSLBFromRxId(side, rodID, sswID, rxId);
807 <<
" side" << side <<
" rodID="
808 << rodID <<
" sswID=" << sswID
809 <<
" rxId=" << rxId);
814 moduleType = (int)slb->getModuleType();
816 int offset, numOfSector;
826 offset = numOfSector - numOfSector / 24;
827 phi = (slb->getSector() + offset) % numOfSector + 1;
836 const int moduleType,
const int id,
837 int& subsectorID,
int& rodID,
838 int& sswID,
int& sbLoc)
const {
841 bool isInner = (
module == TGCId::WI || module == TGCId::SI);
845 }
else if (isEndcap) {
856 <<
" phi=" <<
phi <<
" side=" << ((isAside) ?
"A" :
"C")
857 <<
" region=" << ((isEndcap) ?
"Endcap" :
"Forward")
858 <<
" type=" << moduleType <<
" id=" <<
id
875 <<
" side=" << ((isAside) ?
"A" :
"C")
876 <<
" region=" << ((isEndcap) ?
"Endcap" :
"Forward")
877 <<
" type=" << moduleType <<
" id=" <<
id <<
" side"
878 << side <<
" rodID=" << rodID <<
" sswID=" << sswID
879 <<
" sbLoc=" << sbLoc);
886 bool& isEndcap,
const int subsectorID,
887 const int rodID,
const int sswID,
888 const int sbLoc)
const {
890 if (!isAside && (subsectorID !=
m_CsideId)) {
892 <<
" ERROR illegal subsectorID [=" << subsectorID
896 int sectorInReadout = (rodID - 1);
904 <<
" ERROR sswID for SL should be 9 [now =" << sswID
909 int offset, numOfSector, sector;
910 if (0 <= sbLoc && sbLoc <= 3) {
913 offset = numOfSector - numOfSector / 24;
915 phi = (sector + sbLoc + offset) % numOfSector + 1;
916 }
else if (sbLoc == 4 || sbLoc == 5) {
919 offset = numOfSector - numOfSector / 24;
921 phi = (sector + (sbLoc - 4) + offset) % numOfSector + 1;
924 <<
" ERROR illegal sbLoc for SL [=" << sbLoc <<
"] ");
933 const int subsectorID,
934 const int srodID,
const int sector,
935 const bool forward)
const {
937 if (!isAside && (subsectorID !=
m_CsideId)) {
939 <<
" ERROR illegal subsectorID [=" << subsectorID
944 int sectorInReadout = (srodID - 17);
946 (sectorInReadout < 0)) {
951 int offset, tmpsector, numOfSector;
955 offset = numOfSector - numOfSector / 24;
956 tmpsector = numOfSector * sectorInReadout /
958 phi = (sector + tmpsector + offset) % numOfSector + 1;
961 offset = numOfSector - numOfSector / 24;
962 tmpsector = numOfSector * sectorInReadout /
964 phi = (sector + tmpsector + offset) % numOfSector + 1;
972 const bool isEndcap,
int& subsectorID,
973 int& rodID,
int& sswID,
996 sbLoc = sectorInReadout;
997 rodID = (sector - sectorInReadout) /
1003 sbLoc = sectorInReadout + 4;
1004 rodID = (sector - sectorInReadout) /
1017 const bool isEndcap,
int& subsectorID,
1018 int& srodID,
int& sswID,
1037 int sectorInReadout;
1044 sbLoc = sectorInReadout;
1055 sbLoc = sectorInReadout;
1070 const bool isEndcap,
const bool,
1071 const int,
int& subsectorID,
1072 int& rodID,
int& sswID,
1081 bool isStrip,
int& hpb,
int& chip,
1082 int& hitId,
int& sub)
const {
1085 int RoiRow =
static_cast<int>(roi / 4);
1086 int RoiColumn =
static_cast<int>(roi % 4);
1367 }
else if (isStrip) {
1369 switch (RoiColumn) {
1395 switch (RoiColumn) {
1401 }
else if (RoiRow < 8) {
1405 }
else if (RoiRow < 12) {
1409 }
else if (RoiRow < 25) {
1413 }
else if (RoiRow < 37) {
1426 }
else if (RoiRow < 8) {
1430 }
else if (RoiRow < 12) {
1434 }
else if (RoiRow < 25) {
1438 }
else if (RoiRow < 37) {
1451 }
else if (RoiRow < 8) {
1455 }
else if (RoiRow < 12) {
1459 }
else if (RoiRow < 25) {
1463 }
else if (RoiRow < 37) {
1476 }
else if (RoiRow < 8) {
1480 }
else if (RoiRow < 12) {
1484 }
else if (RoiRow < 25) {
1488 }
else if (RoiRow < 37) {
1511 int chip_wire,
int hitId_wire,
1515 int sub_strip)
const {
1523 RoiRow = 12 * chip_wire + 2 * (hitId_wire - 1) + sub_wire;
1524 RoiColumn = 2 * ((hitId_strip - 1) % 2) + sub_strip;
1525 }
else if (!isForward) {
1526 RoiColumn = 2 * ((hitId_strip - 1) % 2) + sub_strip;
1527 switch (chip_wire) {
1535 12 * (chip_wire - 1) + 2 * (hitId_wire - 1) + sub_wire + 1;
1542 roi = 4 * RoiRow + RoiColumn;
1551 int&
index,
int& chip,
1557 }
else if (!isStrip) {
1565 }
else if (!isStrip) {
1566 if (
index == 0 && chip == 0) {
1568 }
else if (
index == 0 && chip == 1) {
1570 }
else if (
index == 1 && chip == 0) {
1573 }
else if (
index == 1 && chip == 1) {
1587 int&
index,
int& chip,
1593 }
else if (!isStrip) {
1601 }
else if (!isStrip) {
1633 Identifier& offlineID,
const int subDetectorID,
const int rodID,
1634 const int sectorInReadout,
const bool isStrip,
const bool isForward,
1635 const int hpb,
const int chip,
const int hitID,
const int pos)
const {
1664 sideType, rodID, sswID, sbLoc, channelID, signalType, regionType,
1665 sectorInReadout, hpb, chip, hitID, pos, moduleType,
false);
1679 int& subDetectorID,
int& rodID,
1680 int& sectorInReadout,
1681 bool& isStrip,
bool& isForward,
1682 int& hpb,
int& chip,
int& hitID,
1689 sswID, sbLoc, channelID);
1707 signalType, regionType, sectorInReadout,
1708 hpb, chip, hitID, pos);
1722 Identifier& offlineID,
const int subDetectorID,
const int rodID,
1723 const int sswID,
const int sbLoc,
const int block,
const int pos,
1724 bool middle)
const {
1737 channelID, block, pos, middle);
Scalar phi() const
phi method
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_WARNING(x)
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
bool getReadoutFromLowPtCoincidence(TGCId::SideType side, int rodId, int sswId, int sbLoc, int &channel, int block, int pos, bool middle=false) const
bool getReadoutFromSLB(const TGCModuleSLB &slb, TGCId::SideType &side, int &rodId, int &sswId, int &sbLoc) 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
std::unique_ptr< TGCChannelId > getASDOutFromReadout(TGCId::SideType side, int rodId, int sswId, int sbLoc, int channel, bool orChannel=false) const
TGCCabling(const TGCCabling &)=delete
bool getReadoutFromASDOut(const TGCChannelASDOut &asdout, TGCId::SideType &side, int &rodId, int &sswId, int &sbLoc, int &channel, bool orChannel=false) const
std::unique_ptr< TGCModuleId > getSLBFromRxId(TGCId::SideType side, int rodId, int sswId, int rxId) const
std::unique_ptr< TGCChannelId > getChannel(const TGCChannelId &channelId, TGCChannelId::ChannelIdType type, bool orChannel=false) 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
const TGCModuleId * getSLBFromReadout(TGCId::SideType side, int rodId, int sswId, int sbLoc) const
virtual bool isValid() const override
virtual bool isValid() const override
static constexpr int NUM_INNER_SECTOR
ModuleType getModuleType() const
static constexpr int NUM_ENDCAP_SECTOR
RegionType getRegionType() const
static constexpr int N_RODS
virtual int getSector() const
static constexpr int NUM_OCTANT
static constexpr int NUM_FORWARD_SECTOR
virtual bool isValid() const
bool getOfflineIDfromHighPtID(Identifier &offlineID, const int subDetectorID, const int rodID, const int sectorInReadout, const bool isStrip, const bool isForward, const int hpb, const int chip, const int hitID, const int pos) const
bool getCoveragefromSRodID(const int srodID, int &startEndcapSector, int &coverageOfEndcapSector, int &startForwardSector, int &coverageOfForwardSector) const
bool getSLBAddressfromReadoutID(int &slbAddr, const int subsectorID, const int rodID, const int sswID, const int sbLoc) const
bool getSLBIDfromReadoutID(int &phi, bool &isAside, bool &isEndcap, int &moduleType, int &id, const int subsectorID, const int rodID, const int sswID, const int sbLoc) const
bool getReadoutIDfromHPTID(const int phi, const bool isAside, const bool isEndcap, const bool isStrip, const int id, int &subsectorID, int &rodID, int &sswID, int &sbLoc) const
const Muon::IMuonIdHelperSvc * m_idHelperSvc
bool getHighPtIDfromOfflineID(const Identifier &offlineID, int &subDetectorID, int &rodID, int §orInReadout, bool &isStrip, bool &isForward, int &hpb, int &chip, int &hitID, int &pos) const
bool getElementIDfromReadoutID(Identifier &elementID, const int subDetectorID, const int rodID, const int sswID, const int sbLoc, const int channelID, bool orChannel=false) const
bool getReadoutIDfromSLBID(const int phi, const bool isAside, const bool isEndcap, const int moduleType, const int id, int &subsectorID, int &rodID, int &sswID, int &sbLoc) const
bool getReadoutIDfromOnlineID(int &subDetectorID, int &rodID, int &sswID, int &sbLoc, int &channelID, const int subsystemNumber, const int octantNumber, const int moduleNumber, const int layerNumber, const int rNumber, const int wireOrStrip, const int channelNumber, bool adChannel=false) const
bool getRDOHighPtIDfromSimHighPtID(const bool isForward, const bool isStrip, int &index, int &chip, int &hitId) const
bool getOnlineIDfromReadoutID(const int subDetectorID, const int rodID, const int sswID, const int sbLoc, const int channelID, int &subsystemNumber, int &octantNumber, int &moduleNumber, int &layerNumber, int &rNumber, int &wireOrStrip, int &channelNumber, bool orChannel=false) const
bool getOfflineIDfromReadoutID(Identifier &offlineID, const int subDetectorID, const int rodID, const int sswID, const int sbLoc, const int channelID, bool orChannel=false) const
To be ported.
bool getSLIDfromReadoutID(int &phi, bool &isAside, bool &isEndcap, const int subsectorID, const int rodID, const int sswID, const int sbLoc) const
bool getReadoutIDfromOfflineID(const Identifier &offlineID, int &subDetectorID, int &rodID, int &sswID, int &sbLoc, int &channelID, bool adChannel=false) const
bool getHighPtIDfromROINumber(int roi, bool isForward, bool isStrip, int &hpb, int &chip, int &hitID, int &sub) const
bool getOnlineIDfromOfflineID(const Identifier &offlineID, int &subsystemNumber, int &octantNumber, int &moduleNumber, int &layerNumber, int &rNumber, int &wireOrStrip, int &channelNumber) const
bool getSimHighPtIDfromRDOHighPtID(const bool isForward, const bool isStrip, int &index, int &chip, int &hitId) const
bool getSLBIDfromRxID(int &phi, bool &isAside, bool &isEndcap, int &moduleType, int &id, const int subsectorID, const int rodID, const int sswID, const int rxId) const
bool getOfflineIDfromLowPtCoincidenceID(Identifier &offlineID, const int subDetectorID, const int rodID, const int sswID, const int sbLoc, const int block, const int pos, bool middle=false) const
bool getSReadoutIDfromSLID(const int phi, const bool isAside, const bool isEndcap, int &subsectorID, int &srodID, int &sswID, int &sbLoc) const
bool hasAdjacentChannel(const Identifier &offlineID) const
bool getROINumberfromHighPtID(int &roi, bool isForward, int hpb_wire, int chip_wire, int hitId_wire, int sub_wire, int chip_strip, int hitId_strip, int sub_strip) const
bool getReadoutIDfromSLID(const int phi, const bool isAside, const bool isEndcap, int &subsectorID, int &rodID, int &sswID, int &sbLoc) const
bool getSLIDfromSReadoutID(int &phi, bool &isAside, const int subsectorID, const int srodID, const int sector, const bool forward) const
void getReadoutIDRanges(int &maxRodId, int &maxSRodId, int &maxSswId, int &maxSbloc, int &minChannelId, int &maxChannelId) const
bool isOredChannel(const int subDetectorID, const int rodID, const int sswID, const int sbLoc, const int channelID) const
To be ported.
TgcCablingMap(const Config &cfg)
bool getReadoutIDfromElementID(const Identifier &elementID, int &subdetectorID, int &rodID) const
bool getOfflineIDfromOnlineID(Identifier &offlineID, const int subsystemNumber, const int octantNumber, const int moduleNumber, const int layerNumber, const int rNumber, const int wireOrStrip, const int channelNumber) const
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.