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 {
85 int subsystemNumber{0}, octantNumber{0}, moduleNumber{0}, layerNumber{0},
86 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) {
391 }
else if (subSystemNumber == -1) {
397 if (wireOrStrip == 0) {
400 if (wireOrStrip == 1) {
405 <<
" side=" << sideType <<
" octant=" << octantNumber
406 <<
" module=" << moduleNumber <<
" layer=" << layerNumber
407 <<
" chamber=" << rNumber <<
" w/s=" << signalType
408 <<
" channel=" << channelNumber);
412 layerNumber, rNumber, channelNumber);
415 <<
" side=" << sideType <<
" octant=" << octantNumber
416 <<
" module=" << moduleNumber
417 <<
" layer=" << layerNumber <<
" chamber=" << rNumber
418 <<
" w/s=" << signalType
419 <<
" channel=" << channelNumber);
424 std::unique_ptr<TGCChannelId> asdin =
426 if (!asdin || !asdin->isValid()) {
428 <<
" side=" << sideType <<
" octant=" << octantNumber
429 <<
" module=" << moduleNumber
430 <<
" layer=" << layerNumber <<
" chamber=" << rNumber
431 <<
" w/s=" << signalType
432 <<
" channel=" << channelNumber);
437 std::string stationNameStr;
438 switch (asdin->getStation()) {
440 stationNameStr = (asdin->isForward()) ?
"T1F" :
"T1E";
443 stationNameStr = (asdin->isForward()) ?
"T2F" :
"T2E";
446 stationNameStr = (asdin->isForward()) ?
"T3F" :
"T3E";
449 stationNameStr = (asdin->isForward()) ?
"T4F" :
"T4E";
459 int gasGap = asdin->getGasGap();
460 int isStrip = (asdin->isStrip()) ? 1 : 0;
461 int channel = asdin->getChannel();
465 constexpr std::array<int, 25> phiIE{-1, 1, 2, 3, 4, 5, 6, 7, 8,
466 -1, 9, 10, 11, 12, 13, 14, 15, -1,
467 16, 17, 18, -1, 19, 20, 21};
478 const int OffsetForT11S = 8;
483 if (asdin->isEndcap()) {
494 channel -= OffsetForT11S;
513 const int subDetectorID,
const int rodID,
const int sswID,
const int sbLoc,
514 const int channelID,
int& subsystemNumber,
int& octantNumber,
515 int& moduleNumber,
int& layerNumber,
int& rNumber,
int& wireOrStrip,
516 int& channelNumber,
bool orChannel)
const {
527 sideType, rodID, sswID, sbLoc, channelID, orChannel);
528 if (asdout ==
nullptr) {
531 <<
" Cannot get OnlineID of "
532 <<
" side=" << sideType <<
" rodID=" << rodID
533 <<
" sswID=" << sswID <<
" sbLoc=" << sbLoc
534 <<
" channel=" << channelID
535 <<
" [ Or =" << orChannel <<
"] ");
539 if (!asdout->isValid()) {
541 <<
" Illegal ASDout for "
542 <<
" side=" << sideType <<
" rodID=" << rodID
543 <<
" sswID=" << sswID <<
" sbLoc=" << sbLoc
544 <<
" channel=" << channelID <<
" [ Or =" << orChannel
550 subsystemNumber = (asdout->isAside()) ? 1 : -1;
553 octantNumber = asdout->getOctant();
556 rNumber = asdout->getChamber();
559 moduleNumber = asdout->getSectorModule();
561 layerNumber = asdout->getLayer();
564 wireOrStrip = (asdout->isStrip()) ? 1 : 0;
567 channelNumber = asdout->getChannel();
575 int& subDetectorID,
int& rodID,
int& sswID,
int& sbLoc,
int& channelID,
576 const int subsystemNumber,
const int octantNumber,
const int moduleNumber,
577 const int layerNumber,
const int rNumber,
const int wireOrStrip,
578 const int channelNumber,
bool adChannel)
const {
581 if (subsystemNumber == 1) {
584 if (subsystemNumber == -1) {
590 if (wireOrStrip == 0) {
593 if (wireOrStrip == 1) {
599 layerNumber, rNumber, channelNumber);
602 <<
" Cannot get ASDout for "
603 <<
" side=" << sideType <<
" signal=" << signalType
604 <<
" octant=" << octantNumber
605 <<
" module=" << moduleNumber
606 <<
" layer=" << layerNumber <<
" chamber=" << rNumber
607 <<
" channel=" << channelNumber);
616 channelID, adChannel);
622 <<
" Cannot get ReadoutID for "
623 <<
" side=" << sideType <<
" signal=" << signalType
624 <<
" octant=" << octantNumber <<
" module="
625 << moduleNumber <<
" layer=" << layerNumber
626 <<
" chamber=" << rNumber
627 <<
" channel=" << channelNumber);
648 const int iStation =
m_idHelperSvc->tgcIdHelper().stationName(elementID);
649 const int stationType = (iStation - 39) / 2;
651 int iEta =
m_idHelperSvc->tgcIdHelper().stationEta(elementID);
652 int iPhi =
m_idHelperSvc->tgcIdHelper().stationPhi(elementID);
656 const int regionType =
663 const int max_phi = (regionType ==
FORWARD || stationType == 4)
667 const int sector = ((iPhi - 1) + max_phi / 24 + max_phi) % max_phi;
668 int readoutSector =
static_cast<int>(sector / max_module);
670 if (stationType == 4) {
671 readoutSector = (readoutSector / 3);
672 readoutSector = 3 * readoutSector + 1;
675 rodID = readoutSector + 1;
683 const int subDetectorID,
684 const int rodID,
const int sswID,
687 bool orChannel)
const {
691 int maxRodId, maxSRodId, maxSswId, maxSbloc, minChannelId, maxChannelId;
696 if ((sswID > maxSswId) || (channelID < minChannelId) ||
697 (channelID > maxChannelId)) {
699 <<
" Illeagal channel ID"
700 <<
" subdetectorID=" << subDetectorID
701 <<
" rodID=" << rodID <<
" sswID=" << sswID
702 <<
" sbLoc=" << sbLoc <<
" channel=" << channelID
703 <<
" [ Or =" << orChannel <<
"] ");
708 sswID, sbLoc, channelID, orChannel);
711 " getElementIDfromReadoutID :" <<
" Cannot get OfflineID ");
715 elementID =
m_idHelperSvc->tgcIdHelper().elementID(offlineID);
722 bool& isEndcap,
int& moduleType,
723 int&
id,
const int subsectorID,
724 const int rodID,
const int sswID,
725 const int sbLoc)
const {
733 <<
" Cannot get SLB of "
734 <<
" side" << side <<
" rodID=" << rodID
735 <<
" sswID=" << sswID <<
" sbLoc=" << sbLoc);
742 int offset, numOfSector;
752 offset = numOfSector - numOfSector / 24;
762 const int subsectorID,
763 const int rodID,
const int sswID,
764 const int sbLoc)
const {
767 bool isAside = (subsectorID ==
m_AsideId);
774 <<
" Cannot get SLB of "
775 <<
" side" << side <<
" rodID=" << rodID
776 <<
" sswID=" << sswID <<
" sbLoc=" << sbLoc);
783 <<
"dynamic_cast<const "
784 "TGCModuleSLB*>(slb) failed.");
795 int& moduleType,
int&
id,
796 const int subsectorID,
const int rodID,
797 const int sswID,
const int rxId)
const {
801 std::unique_ptr<TGCModuleId> slb =
getSLBFromRxId(side, rodID, sswID, rxId);
804 <<
" side" << side <<
" rodID="
805 << rodID <<
" sswID=" << sswID
806 <<
" rxId=" << rxId);
811 moduleType = (int)slb->getModuleType();
813 int offset, numOfSector;
823 offset = numOfSector - numOfSector / 24;
824 phi = (slb->getSector() + offset) % numOfSector + 1;
833 const int moduleType,
const int id,
834 int& subsectorID,
int& rodID,
835 int& sswID,
int& sbLoc)
const {
838 bool isInner = (
module == TGCId::ModuleType::WI || module == TGCId::ModuleType::SI);
842 }
else if (isEndcap) {
853 <<
" phi=" <<
phi <<
" side=" << ((isAside) ?
"A" :
"C")
854 <<
" region=" << ((isEndcap) ?
"Endcap" :
"Forward")
855 <<
" type=" << moduleType <<
" id=" <<
id
872 <<
" side=" << ((isAside) ?
"A" :
"C")
873 <<
" region=" << ((isEndcap) ?
"Endcap" :
"Forward")
874 <<
" type=" << moduleType <<
" id=" <<
id <<
" side"
875 << side <<
" rodID=" << rodID <<
" sswID=" << sswID
876 <<
" sbLoc=" << sbLoc);
883 bool& isEndcap,
const int subsectorID,
884 const int rodID,
const int sswID,
885 const int sbLoc)
const {
887 if (!isAside && (subsectorID !=
m_CsideId)) {
889 <<
" ERROR illegal subsectorID [=" << subsectorID
893 int sectorInReadout = (rodID - 1);
901 <<
" ERROR sswID for SL should be 9 [now =" << sswID
906 int offset, numOfSector, sector;
907 if (0 <= sbLoc && sbLoc <= 3) {
910 offset = numOfSector - numOfSector / 24;
912 phi = (sector + sbLoc + offset) % numOfSector + 1;
913 }
else if (sbLoc == 4 || sbLoc == 5) {
916 offset = numOfSector - numOfSector / 24;
918 phi = (sector + (sbLoc - 4) + offset) % numOfSector + 1;
921 <<
" ERROR illegal sbLoc for SL [=" << sbLoc <<
"] ");
930 const int subsectorID,
931 const int srodID,
const int sector,
932 const bool forward)
const {
934 if (!isAside && (subsectorID !=
m_CsideId)) {
936 <<
" ERROR illegal subsectorID [=" << subsectorID
941 int sectorInReadout = (srodID - 17);
943 (sectorInReadout < 0)) {
948 int offset, tmpsector, numOfSector;
952 offset = numOfSector - numOfSector / 24;
953 tmpsector = numOfSector * sectorInReadout /
955 phi = (sector + tmpsector + offset) % numOfSector + 1;
958 offset = numOfSector - numOfSector / 24;
959 tmpsector = numOfSector * sectorInReadout /
961 phi = (sector + tmpsector + offset) % numOfSector + 1;
969 const bool isEndcap,
int& subsectorID,
970 int& rodID,
int& sswID,
993 sbLoc = sectorInReadout;
994 rodID = (sector - sectorInReadout) /
1000 sbLoc = sectorInReadout + 4;
1001 rodID = (sector - sectorInReadout) /
1014 const bool isEndcap,
int& subsectorID,
1015 int& srodID,
int& sswID,
1034 int sectorInReadout;
1041 sbLoc = sectorInReadout;
1052 sbLoc = sectorInReadout;
1067 const bool isEndcap,
const bool,
1068 const int,
int& subsectorID,
1069 int& rodID,
int& sswID,
1078 bool isStrip,
int& hpb,
int& chip,
1079 int& hitId,
int& sub)
const {
1082 int RoiRow =
static_cast<int>(roi / 4);
1083 int RoiColumn =
static_cast<int>(roi % 4);
1364 }
else if (isStrip) {
1366 switch (RoiColumn) {
1392 switch (RoiColumn) {
1398 }
else if (RoiRow < 8) {
1402 }
else if (RoiRow < 12) {
1406 }
else if (RoiRow < 25) {
1410 }
else if (RoiRow < 37) {
1423 }
else if (RoiRow < 8) {
1427 }
else if (RoiRow < 12) {
1431 }
else if (RoiRow < 25) {
1435 }
else if (RoiRow < 37) {
1448 }
else if (RoiRow < 8) {
1452 }
else if (RoiRow < 12) {
1456 }
else if (RoiRow < 25) {
1460 }
else if (RoiRow < 37) {
1473 }
else if (RoiRow < 8) {
1477 }
else if (RoiRow < 12) {
1481 }
else if (RoiRow < 25) {
1485 }
else if (RoiRow < 37) {
1508 int chip_wire,
int hitId_wire,
1512 int sub_strip)
const {
1520 RoiRow = 12 * chip_wire + 2 * (hitId_wire - 1) + sub_wire;
1521 RoiColumn = 2 * ((hitId_strip - 1) % 2) + sub_strip;
1522 }
else if (!isForward) {
1523 RoiColumn = 2 * ((hitId_strip - 1) % 2) + sub_strip;
1524 switch (chip_wire) {
1532 12 * (chip_wire - 1) + 2 * (hitId_wire - 1) + sub_wire + 1;
1539 roi = 4 * RoiRow + RoiColumn;
1548 int&
index,
int& chip,
1554 }
else if (!isStrip) {
1562 }
else if (!isStrip) {
1563 if (
index == 0 && chip == 0) {
1565 }
else if (
index == 0 && chip == 1) {
1567 }
else if (
index == 1 && chip == 0) {
1570 }
else if (
index == 1 && chip == 1) {
1584 int&
index,
int& chip,
1590 }
else if (!isStrip) {
1598 }
else if (!isStrip) {
1630 Identifier& offlineID,
const int subDetectorID,
const int rodID,
1631 const int sectorInReadout,
const bool isStrip,
const bool isForward,
1632 const int hpb,
const int chip,
const int hitID,
const int pos)
const {
1661 sideType, rodID, sswID, sbLoc, channelID, signalType, regionType,
1662 sectorInReadout, hpb, chip, hitID, pos, moduleType,
false);
1676 int& subDetectorID,
int& rodID,
1677 int& sectorInReadout,
1678 bool& isStrip,
bool& isForward,
1679 int& hpb,
int& chip,
int& hitID,
1686 sswID, sbLoc, channelID);
1704 signalType, regionType, sectorInReadout,
1705 hpb, chip, hitID, pos);
1719 Identifier& offlineID,
const int subDetectorID,
const int rodID,
1720 const int sswID,
const int sbLoc,
const int block,
const int pos,
1721 bool middle)
const {
1734 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.