20 int theLevelPart=muonConstants.
getValue(
"level");
29 <<
"Initialize CSCNumberingScheme" 64 LogDebug(
"CSCNumbering") <<
"endcap=" << fwbw_id ;
68 station_id=station_tag;
69 LogDebug(
"CSCNumbering")<<
"station=" << station_id ;
74 LogDebug(
"CSCNumbering")<<
"subring=" << subring_id ;
79 LogDebug(
"CSCNumbering")<<
"sector=" << sector_id ;
84 LogDebug(
"CSCNumbering") <<
"layer=" << layer_id ;
95 if ((fwbw_id < 1) || (fwbw_id > 2)) {
96 edm::LogError(
"CSCNumbering") <<
"@SUB=CSCNumberingScheme::baseNumberToUnitNumber" <<
"forward/backward id out of range:" << fwbw_id;
99 if ((station_id < 1) || (station_id > 4)) {
100 edm::LogError(
"CSCNumbering") <<
"@SUB=CSCNumberingScheme::baseNumberToUnitNumber" <<
"station id out of range:" << station_id;
103 if ((ring_id < 1) || (ring_id > 4)) {
104 edm::LogError(
"CSCNumbering") <<
"@SUB=CSCNumberingScheme::baseNumberToUnitNumber" <<
"ring id out of range:" <<
ring_id ;
107 if ((subring_id < 1) || (subring_id > 2)) {
108 edm::LogError(
"CSCNumbering") <<
"@SUB=CSCNumberingScheme::baseNumberToUnitNumber" <<
"subring id out of range:" << subring_id ;
111 if ((sector_id < 1) || (sector_id > 36)) {
112 edm::LogError(
"CSCNumbering") <<
"@SUB=CSCNumberingScheme::baseNumberToUnitNumber" <<
"sector id out of range:" << sector_id ;
116 if ((layer_id < 0) || (layer_id > 6)) {
117 edm::LogError(
"CSCNumbering") <<
"@SUB=CSCNumberingScheme::baseNumberToUnitNumber" <<
"layer id out of range" << layer_id ;
123 subring_id, sector_id);
128 chamber_id, layer_id);
132 <<
"CSCNumberingScheme : fw/bw " << fwbw_id <<
" station " << station_id
133 <<
" ring " << ring_id <<
" subring " << subring_id <<
" chamber " 134 << chamber_id <<
" sector " << sector_id <<
" layer " << layer_id;
141 int sector_id)
const {
150 chamber_id=sector_id;
152 if (subring_id == 1) {
153 chamber_id=2*sector_id-1;
155 chamber_id=2*sector_id;
void initMe(const MuonDDDConstants &muonConstants)
int getBaseNo(int level) const
static int rawIdMaker(int iendcap, int istation, int iring, int ichamber, int ilayer)
Compact representation of the geometrical detector hierarchy.
CSCNumberingScheme(const MuonDDDConstants &muonConstants)
int getValue(const std::string &name) const
int chamberIndex(int, int, int, int) const
int baseNumberToUnitNumber(const MuonBaseNumber &) override
int getSuperNo(int level) const