23 const string CTPPSDetId::subDetectorNames[] = {
"",
"",
"",
"ctpps_tr_strip",
"ctpps_tr_pixel",
"ctpps_ti_diamond",
"ctpps_ti_fastsilicon" };
24 const string CTPPSDetId::subDetectorPaths[] = {
"",
"",
"",
"CTPPS/TrackingStrip",
"CTPPS/TrackingPixel",
"CTPPS/TimingDiamond",
"CTPPS/TimingFastSilicon" };
27 const string CTPPSDetId::rpNames[] = {
"nr_tp",
"nr_bt",
"nr_hr",
"fr_hr",
"fr_tp",
"fr_bt",
"cyl_hr" };
40 <<
" is not a valid CTPPS id.";
51 throw cms::Exception(
"InvalidDetId") <<
"CTPPSDetId ctor: invalid sub-detector " << SubDet <<
".";
57 <<
" Invalid parameters:" 59 <<
" station=" << Station
64 uint32_t
ok=0xfe000000;
77 <<
"subDet=" <<
id.subdetId()
78 <<
" arm=" <<
id.arm()
79 <<
" station=" <<
id.station()
std::ostream & operator<<(std::ostream &os, const CTPPSDetId &id)
static const uint32_t maxStation
static const uint32_t startRPBit
static const uint32_t maskStation
static const uint32_t maskRP
static const std::string armNames[]
static const uint32_t lowMaskStation
static const uint32_t maskArm
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum) ...
static const uint32_t maxArm
static const std::string subDetectorPaths[]
static const uint32_t maxRP
static const std::string rpNames[]
static const std::string subDetectorNames[]
static const uint32_t startStationBit
Base class for CTPPS detector IDs.
CTPPSDetId(uint32_t id)
Construct from a raw id.
static const uint32_t startArmBit
static const std::string stationNames[]
static const uint32_t lowMaskArm
static const uint32_t lowMaskRP
constexpr Detector det() const
get the detector field from this detid