25 <<
" is not a valid RPC id";
36 <<
" is not a valid RPC id";
51 this->
init(region,ring,station,sector,layer,subsector);
125 if(this->
type() == 0){
146 if ( region < allRegionId || region >
maxRegionId ||
147 ring < allRingId || ring > maxRing ||
154 <<
" Invalid parameters: "
155 <<
" region "<<region
157 <<
" station "<<station
158 <<
" sector "<<sector
160 <<
" subsector "<<subsector
181 if (this->
type()==0){
189 std::string buf(this->
dbname());
191 if (buf.find(
':')!=buf.npos){
192 buf = buf.substr(buf.find(
':')+1,buf.npos);
197 if(buf.substr(0,1)==
"W"){
199 }
else if(buf.substr(0,2)==
"EP"){
201 }
else if(buf.substr(0,2)==
"EM"){
205 <<
" is not a valid DB Name for RPCCompDetId"
218 std::stringstream os;
221 if (buf.substr(1,1)==
"M"){
227 std::stringstream os;
228 os<<buf.substr(buf.find(
"RB")+2,1);
233 std::stringstream os;
234 os<<buf.substr(buf.find(
"S")+1,2);
239 if (buf.find(
"4L")!=buf.npos)
241 if (buf.find(
"4R")!=buf.npos)
247 std::stringstream os;
248 os<<buf.substr(buf.find(
"_R0")+3,1);
253 std::stringstream os;
259 std::stringstream os;
260 os<<buf.substr(buf.find(
"_C")+2,2);
265 if (buf.find(
"UP")!=buf.npos)
267 if (buf.find(
"DW")!=buf.npos)
271 this->
init(region,ring,station,sector,layer,subsector);
276 std::stringstream os;
279 std::string wsign=
"P";
280 if (this->
wheel()<0)wsign=
"M";
284 os<<
"W"<<wsign<<
abs(this->
wheel())<<
"_S"<<std::setw(2)<<std::setfill(
'0')<<this->
sector()<<
"_RB"<<this->
station()<<lr;
287 std::string esign=
"P";
291 os<<
"E"<<esign<<this->
disk();
294 if (this->
disk()==1){
295 os<<
"_R"<<std::setw(2)<<std::setfill(
'0')<<this->
ring()
296 <<
"_C"<<std::setw(2)<<std::setfill(
'0')<<this->
sector()
297 <<
"_C"<<std::setw(2)<<std::setfill(
'0')<<this->
sector()+5;
299 os<<
"_R"<<std::setw(2)<<std::setfill(
'0')<<this->
ring()
300 <<
"_R"<<std::setw(2)<<std::setfill(
'0')<<this->
ring()+1
301 <<
"_C"<<std::setw(2)<<std::setfill(
'0')<<this->
sector()
302 <<
"_C"<<std::setw(2)<<std::setfill(
'0')<<this->
sector()+2;
308 else if (this->
layer()==2)
static const int RegionMask_
static const int maxStationId
static const int allRegionId
static const int maxSubSectorId
static const int allSubSectorId
static const int allRingId
static const unsigned int LayerMask_
static const int allSectorId
static const int RegionStartBit_
std::ostream & operator<<(std::ostream &out, const ALILine &li)
static const int StationStartBit_
static const int RingStartBit_
std::string gasDBname() const
static const int SubSectorStartBit_
static const int allStationId
static const int maxLayerId
std::string dbname() const
static const int allLayerId
static const unsigned int StationMask_
int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum) ...
static const unsigned int SectorMask_
static const int maxRingBarrelId
static const unsigned int SubSectorMask_
static const int maxRegionId
static const int maxSectorId
static const int maxRingForwardId
Detector det() const
get the detector field from this detid
bool operator<(const RPCCompDetId &r) const
Sort Operator based on the name.
static const unsigned int RingMask_
static const int LayerStartBit_
static const int SectorStartBit_