#include <RPCGeomServ.h>
Public Member Functions | |
virtual bool | aclockwise () |
virtual std::string | chambername () |
virtual int | chambernr () |
std::vector< int > | channelInChip () |
virtual int | eta_partition () |
virtual bool | inverted () |
virtual std::string | name () |
RPCGeomServ (const RPCDetId &id) | |
virtual int | segment () |
virtual std::string | shortname () |
virtual bool | zpositive () |
virtual | ~RPCGeomServ () |
Protected Member Functions | |
RPCGeomServ () | |
Protected Attributes | |
bool | _a |
std::string | _cn |
int | _cnr |
const RPCDetId * | _id |
std::string | _n |
std::string | _sn |
int | _t |
bool | _z |
Definition at line 8 of file RPCGeomServ.h.
RPCGeomServ::RPCGeomServ | ( | const RPCDetId & | id | ) |
RPCGeomServ::~RPCGeomServ | ( | void | ) | [virtual] |
Definition at line 16 of file RPCGeomServ.cc.
{}
RPCGeomServ::RPCGeomServ | ( | ) | [protected] |
bool RPCGeomServ::aclockwise | ( | ) | [virtual] |
Definition at line 505 of file RPCGeomServ.cc.
References _a, _id, _t, RPCDetId::layer(), RPCDetId::region(), RPCDetId::ring(), and RPCDetId::sector().
{ if (_id->region()==0 && _t<-90 ){ if (_id->ring() > 0){ if (_id->layer()==2){ _a=false; } }else if(_id->ring() <0){ if (_id->layer()==1){ _a=false; } }else if(_id->ring() ==0) { if ((_id->sector() == 1 || _id->sector() == 4 || _id->sector() == 5 || _id->sector() == 8 || _id->sector() == 9 || _id->sector() == 12) && _id->layer()==1) _a=false; else if ((_id->sector() == 2 || _id->sector() == 3 || _id->sector() == 6 || _id->sector() == 7 || _id->sector() == 10|| _id->sector() == 11) && _id->layer()==2) _a=false; } } return _a; }
std::string RPCGeomServ::chambername | ( | ) | [virtual] |
Definition at line 120 of file RPCGeomServ.cc.
References _cn, _id, RPCDetId::layer(), RPCDetId::region(), RPCDetId::ring(), relativeConstraints::ring, RPCDetId::sector(), segment(), relativeConstraints::station, RPCDetId::station(), and RPCDetId::subsector().
Referenced by RPCMonitorDigi::beginRun(), RPCMonitorDigi::bookRollME(), RPCDqmClient::getMonitorElements(), and RPCMonitorDigi::performSourceOperation().
{ if( _cn.size() < 1 ) { int station = _id->station(); int region = _id->region(); int ring = _id->ring(); int layer = _id->layer(); int sector = _id->sector(); int subsector = _id->subsector(); std::stringstream os; if( region == 0 ) { os << "W"; os << std::setw(2) << std::setfill('+') << ring << std::setfill(' ') << "_"; os << "RB" << station; if ( station <= 2 ) { (layer == 1 ) ? os << "in" : os << "out"; }else if( station > 2 ) { if( sector == 4 && station == 4 ) { if( subsector == 1 ) { os << "--"; } else if( subsector == 2 ) { os << "-"; } else if( subsector == 3 ) { os << "+"; } else if( subsector == 4 ) { os <<"++"; } } if( station == 3 ) { if( subsector == 1 ) os << "-"; else os << "+"; } else if( station == 4 && sector != 9 && sector != 11 && sector != 4 ) { if( subsector == 1 ) os << "-"; else os << "+"; } } os << "_"; os << "S" << std::setw(2) << std::setfill('0') << sector << std::setfill(' '); } else { os << "RE"; os << std::setw(2) << std::setfill('+') << station * region << std::setfill(' ') << "_"; os << "R" << ring; os << "_CH" << std::setw(2) << std::setfill('0') << this->segment(); } _cn = os.str(); } return _cn; }
int RPCGeomServ::chambernr | ( | ) | [virtual] |
Definition at line 324 of file RPCGeomServ.cc.
References _cnr, _id, RPCDetId::layer(), RPCDetId::roll(), RPCDetId::sector(), RPCDetId::station(), and RPCDetId::subsector().
Referenced by RPCMon_SS_Dbx_Global::analyze().
{ // Station1 if( _id->station() ==1) { // in if(_id->layer() ==1) { if(_id->roll()==1) _cnr = 1; else _cnr = 2; } //out else { if(_id->roll()==1) _cnr = 3; else _cnr = 4; } } //Station 2 if (_id->station()==2) { //in if(_id->layer()==1) { if(_id->roll()==1)//backward _cnr = 5; if(_id->roll()==3)//forward _cnr=6; if(_id->roll()==2)//middle _cnr=7; } //out else { if(_id->roll()==2) _cnr=7; if(_id->roll()==1) _cnr=8; if(_id->roll()==3) _cnr=9; } } //RB3- RB3+ if(_id->station()==3) { if(_id->subsector()==1) { if(_id->roll()==1) _cnr=10; else _cnr=11; } else { if(_id->roll()==1) _cnr=12; else _cnr=13; } } //RB4 if(_id->station()==4) { if (_id->sector()== 4) { if ( _id->subsector()==2){//RB4- if(_id->roll()==1) _cnr=14; else _cnr=15; } if ( _id->subsector()==3){//RB4+ if(_id->roll()==1) _cnr=16; else _cnr=17; } if ( _id->subsector()==1) {//RB4-- if(_id->roll()==1) _cnr=18; else _cnr=19; } if ( _id->subsector()==4){//RB4++ if(_id->roll()==1) _cnr=20; else _cnr=21; } } else { if(_id->subsector()==1) { if(_id->roll()==1) _cnr=14; else _cnr=15; } else { if(_id->roll()==1) _cnr=16; else _cnr=17; } } } // _cnr=10; return _cnr; }
std::vector< int > RPCGeomServ::channelInChip | ( | void | ) |
Definition at line 275 of file RPCGeomServ.cc.
References _id, RPCDetId::region(), RPCDetId::sector(), relativeConstraints::station, RPCDetId::station(), and RPCDetId::subsector().
{ std::vector<int> chipCh(4,8);//Endcap if(_id->region()==0){//Barrel chipCh.clear(); int station = _id->station(); if (station<3 && _id->layer()==1){ // i.e. RB1in ||RB2in chipCh.push_back(7); chipCh.push_back(8); }else if (station == 1 || station == 3){//i.e. RB1out || RB3 chipCh.push_back(7); chipCh.push_back(7); }else if (station == 2){// i.e. RB2out chipCh.push_back(6); chipCh.push_back(8); }else if (_id->sector() == 4 || _id->sector()==10 ||(_id->sector() == 8 && _id->subsector()!=1) || (_id->sector() == 12 && _id->subsector()==1)){ chipCh.push_back(6);//i.e. Sector 4 & 10 RB4 and Sector 8 &12 RB4+ chipCh.push_back(6); }else { chipCh.push_back(8); chipCh.push_back(8); } } return chipCh; }
int RPCGeomServ::eta_partition | ( | ) | [virtual] |
Definition at line 307 of file RPCGeomServ.cc.
References _id, _t, inverted(), RPCDetId::region(), RPCDetId::ring(), and RPCDetId::roll().
Referenced by RPCStripsRing::getRingId(), and RPCStripsRing::RPCStripsRing().
bool RPCGeomServ::inverted | ( | ) | [virtual] |
Definition at line 478 of file RPCGeomServ.cc.
References zpositive().
Referenced by eta_partition().
{ // return !(this->zpositive() && this->aclockwise()); return !(this->zpositive()); }
std::string RPCGeomServ::name | ( | void | ) | [virtual] |
Definition at line 20 of file RPCGeomServ.cc.
References _id, _n, RPCDetId::layer(), RPCDetId::region(), RPCDetId::ring(), relativeConstraints::ring, RPCDetId::roll(), RPCDetId::sector(), segment(), relativeConstraints::station, RPCDetId::station(), and RPCDetId::subsector().
Referenced by RPCMon_SS_Dbx_Global::analyze(), RPCEfficiency::analyze(), RPCDBPopConAnalyzer::analyze(), RPCMonitorDigi::beginRun(), RPCEfficiencySecond::bookDetUnitSeg(), RPCMonitorDigi::bookRollME(), DTSegtoRPC::DTSegtoRPC(), RPCEfficiencySecond::endRun(), rpcdqmclient::clientTools::getMEs(), RPCDqmClient::getMonitorElements(), L1TRPCTPG::L1TRPCBookME(), HSCPValidator::makeSimDigiPlotsRPC(), RPCMonitorDigi::performSourceOperation(), cond::PayLoadInspector< DataT >::plot(), RPCSimAverageNoiseEff::simulate(), RPCSimAverageNoiseEff::simulateNoise(), cond::PayLoadInspector< DataT >::summary(), and TracktoRPC::TracktoRPC().
{ if( _n.size() < 1 ) { int station = _id->station(); int region = _id->region(); int roll = _id->roll(); int ring = _id->ring(); int layer = _id->layer(); int sector = _id->sector(); int subsector = _id->subsector(); std::stringstream os; if( region == 0 ) { os << "W"; os << std::setw(2) << std::setfill('+') << ring << std::setfill(' ') << "_"; os << "RB" << station; if ( station <= 2){ (layer == 1 ) ? os << "in" : os << "out"; }else if( station > 2 ) { if( sector == 4 && station == 4 ) { if( subsector == 1 ) { os << "--"; } else if( subsector == 2 ) { os << "-"; } else if( subsector == 3 ) { os << "+"; } else if( subsector == 4 ) { os << "++"; } } if( station == 3 ) { if( subsector == 1 ) os << "-"; else os << "+"; } else if( station == 4 && sector != 9 && sector !=11 && sector != 4 ) { if( subsector == 1 ) os << "-"; else os << "+"; } } os << "_"; os << "S" << std::setw(2) << std::setfill('0') << sector << std::setfill(' '); if( roll == 1 ) os << "_Backward"; else if( roll == 3 ) os << "_Forward"; else if( roll == 2 ) os << "_Middle"; } else { os << "RE"; os << std::setw(2) << std::setfill('+') << station * region << std::setfill(' ') << "_"; os << "R" << ring; os << "_CH" << std::setw(2) << std::setfill('0') << this->segment(); if( roll == 1 ) os << "_A"; else if( roll == 2 ) os << "_B"; else if( roll == 3 ) os << "_C"; else if( roll == 4 ) os << "_D"; } _n = os.str(); } return _n; }
int RPCGeomServ::segment | ( | void | ) | [virtual] |
Definition at line 467 of file RPCGeomServ.cc.
References _id, RPCDetId::ring(), relativeConstraints::ring, RPCDetId::sector(), relativeConstraints::station, RPCDetId::station(), and RPCDetId::subsector().
Referenced by RPCMon_SS_Dbx_Global::analyze(), RPCDBPopConAnalyzer::analyze(), RPCEfficiency::beginRun(), chambername(), RPCDeadChannelTest::clientOperation(), RPCClusterSizeTest::clientOperation(), CSCSegtoRPC::CSCSegtoRPC(), RPCEfficiencySecond::endRun(), RPCNoisyStripTest::fillGlobalME(), RPCMultiplicityTest::fillGlobalME(), RPCOccupancyTest::fillGlobalME(), name(), ObjectMap2CSC::ObjectMap2CSC(), ObjectMapCSC::ObjectMapCSC(), RPCMonitorDigi::performSourceOperation(), and TracktoRPC::TracktoRPC().
std::string RPCGeomServ::shortname | ( | void | ) | [virtual] |
Definition at line 206 of file RPCGeomServ.cc.
References _id, _sn, RPCDetId::layer(), RPCDetId::region(), RPCDetId::ring(), relativeConstraints::ring, RPCDetId::roll(), RPCDetId::sector(), relativeConstraints::station, RPCDetId::station(), and RPCDetId::subsector().
Referenced by RPCEfficiencySecond::endRun().
{ if( _sn.size() < 1 ) { int station = _id->station(); int region = _id->region(); int roll = _id->roll(); int ring = _id->ring(); int layer = _id->layer(); int sector = _id->sector(); int subsector = _id->subsector(); std::stringstream os; if( region == 0 ) { os << "RB" << station; if( station <= 2 ){ (layer == 1 ) ? os << "in" : os << "out"; } else { if( sector == 4 && station == 4 ) { if( subsector == 1 ) { os << "--"; } else if( subsector == 2 ) { os << ",-"; } else if( subsector == 3 ) { os << "+"; } else if( subsector == 4 ) { os << "++"; } } else { if( subsector == 1 ) os << ",-"; else os << "+"; } } if( roll == 1 ) os << " B"; else if( roll == 3 ) os << " F"; else if( roll == 2 ) os << " M"; } else { os << "Ri" << ring << " Su" << subsector; } _sn = os.str(); } return _sn; }
bool RPCGeomServ::zpositive | ( | ) | [virtual] |
Definition at line 486 of file RPCGeomServ.cc.
References _id, _t, _z, RPCDetId::region(), RPCDetId::ring(), and RPCDetId::sector().
Referenced by inverted().
bool RPCGeomServ::_a [protected] |
Definition at line 34 of file RPCGeomServ.h.
Referenced by aclockwise().
std::string RPCGeomServ::_cn [protected] |
Definition at line 30 of file RPCGeomServ.h.
Referenced by chambername().
int RPCGeomServ::_cnr [protected] |
Definition at line 32 of file RPCGeomServ.h.
Referenced by chambernr().
const RPCDetId* RPCGeomServ::_id [protected] |
Definition at line 27 of file RPCGeomServ.h.
Referenced by aclockwise(), chambername(), chambernr(), channelInChip(), eta_partition(), name(), segment(), shortname(), and zpositive().
std::string RPCGeomServ::_n [protected] |
Definition at line 28 of file RPCGeomServ.h.
Referenced by name().
std::string RPCGeomServ::_sn [protected] |
Definition at line 29 of file RPCGeomServ.h.
Referenced by shortname().
int RPCGeomServ::_t [protected] |
Definition at line 31 of file RPCGeomServ.h.
Referenced by aclockwise(), eta_partition(), and zpositive().
bool RPCGeomServ::_z [protected] |
Definition at line 33 of file RPCGeomServ.h.
Referenced by zpositive().