24 <<
" is not a valid RPC id";
35 <<
" is not a valid RPC id";
50 this->
init(region,ring,station,sector,layer,subsector);
124 if(this->
type() == 0){
145 if ( region < allRegionId || region >
maxRegionId ||
146 ring < allRingId || ring > maxRing ||
153 <<
" Invalid parameters: " 154 <<
" region "<<region
156 <<
" station "<<station
157 <<
" sector "<<sector
159 <<
" subsector "<<subsector
180 if (this->
type()==0){
190 if (buf.find(
':')!=buf.npos){
191 buf = buf.substr(buf.find(
':')+1,buf.npos);
196 if(buf.substr(0,1)==
"W"){
198 }
else if(buf.substr(0,2)==
"EP"){
200 }
else if(buf.substr(0,2)==
"EM"){
204 <<
" is not a valid DB Name for RPCCompDetId" 217 std::stringstream os;
220 if (buf.substr(1,1)==
"M"){
226 std::stringstream os;
227 os<<buf.substr(buf.find(
"RB")+2,1);
232 std::stringstream os;
233 os<<buf.substr(buf.find(
"S")+1,2);
238 if (buf.find(
"4L")!=buf.npos)
240 if (buf.find(
"4R")!=buf.npos)
246 std::stringstream os;
247 os<<buf.substr(buf.find(
"_R0")+3,1);
252 std::stringstream os;
258 std::stringstream os;
259 os<<buf.substr(buf.find(
"_C")+2,2);
264 if (buf.find(
"UP")!=buf.npos)
266 if (buf.find(
"DW")!=buf.npos)
270 this->
init(region,ring,station,sector,layer,subsector);
275 std::stringstream os;
279 if (this->
wheel()<0)wsign=
"M";
283 os<<
"W"<<wsign<<
abs(this->
wheel())<<
"_S"<<std::setw(2)<<std::setfill(
'0')<<this->
sector()<<
"_RB"<<this->
station()<<lr;
290 os<<
"E"<<esign<<this->
disk();
293 if (this->
disk()==1){
294 os<<
"_R"<<std::setw(2)<<std::setfill(
'0')<<this->
ring()
295 <<
"_C"<<std::setw(2)<<std::setfill(
'0')<<this->
sector()
296 <<
"_C"<<std::setw(2)<<std::setfill(
'0')<<this->
sector()+5;
298 os<<
"_R"<<std::setw(2)<<std::setfill(
'0')<<this->
ring()
299 <<
"_R"<<std::setw(2)<<std::setfill(
'0')<<this->
ring()+1
300 <<
"_C"<<std::setw(2)<<std::setfill(
'0')<<this->
sector()
301 <<
"_C"<<std::setw(2)<<std::setfill(
'0')<<this->
sector()+2;
307 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_
static const int StationStartBit_
static const int RingStartBit_
std::string gasDBname() const
static const int SubSectorStartBit_
static const int allStationId
static const int maxLayerId
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum) ...
Abs< T >::type abs(const T &t)
std::string dbname() const
static const int allLayerId
static const unsigned int StationMask_
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
bool operator<(const RPCCompDetId &r) const
Sort Operator based on the name.
std::ostream & operator<<(std::ostream &os, const RPCCompDetId &id)
static const unsigned int RingMask_
static const int LayerStartBit_
static const int SectorStartBit_
constexpr Detector det() const
get the detector field from this detid