#include <CSCDetId.h>
Public Member Functions | |
int | chamber () const |
CSCDetId | chamberId () const |
int | channel (int istrip) |
CSCDetId () | |
CSCDetId (uint32_t id) | |
CSCDetId (DetId id) | |
CSCDetId (int iendcap, int istation, int iring, int ichamber, int ilayer=0) | |
int | endcap () const |
unsigned short | iChamberType () |
int | layer () const |
int | ring () const |
int | station () const |
int | triggerCscId () const |
int | triggerSector () const |
short int | zendcap () const |
Public Member Functions inherited from DetId | |
Detector | det () const |
get the detector field from this detid More... | |
DetId () | |
Create an empty or null id (also for persistence) More... | |
DetId (uint32_t id) | |
Create an id from a raw number. More... | |
DetId (Detector det, int subdet) | |
Create an id, filling the detector and subdetector fields as specified. More... | |
bool | null () const |
is this a null id ? More... | |
operator uint32_t () const | |
bool | operator!= (DetId id) const |
inequality More... | |
uint32_t | operator() () const |
bool | operator< (DetId id) const |
comparison More... | |
bool | operator== (DetId id) const |
equality More... | |
uint32_t | rawId () const |
get the raw id More... | |
int | subdetId () const |
get the contents of the subdetector field (not cast into any detector's numbering enum) More... | |
Static Public Member Functions | |
static int | chamber (int index) |
static int | endcap (int index) |
static unsigned short | iChamberType (unsigned short istation, unsigned short iring) |
static int | layer (int index) |
static int | maxChamberId () |
static int | maxEndcapId () |
static int | maxLayerId () |
static int | maxRingId () |
static int | maxStationId () |
static int | minChamberId () |
static int | minEndcapId () |
static int | minLayerId () |
static int | minRingId () |
static int | minStationId () |
static int | rawIdMaker (int iendcap, int istation, int iring, int ichamber, int ilayer) |
static int | ring (int index) |
static int | station (int index) |
Private Types | |
enum | eMaskBitDet { MASK_ENDCAP =07, MASK_STATION =07, MASK_RING =07, MASK_CHAMBER =077, MASK_LAYER =07 } |
enum | eMaxNum { MAX_ENDCAP =2, MAX_STATION =4, MAX_RING =4, MAX_CHAMBER =36, MAX_LAYER =6 } |
enum | eMinNum { MIN_ENDCAP =1, MIN_STATION =1, MIN_RING =1, MIN_CHAMBER =1, MIN_LAYER =1 } |
enum | eNumBitDet { BITS_ENDCAP =3, BITS_STATION =3, BITS_RING =3, BITS_CHAMBER =6, BITS_LAYER =3 } |
enum | eStartBitDet { START_CHAMBER =BITS_LAYER, START_RING =START_CHAMBER+BITS_CHAMBER, START_STATION =START_RING+BITS_RING, START_ENDCAP =START_STATION+BITS_STATION } |
Static Private Member Functions | |
static int | detIdToInt (int iring) |
static uint32_t | init (int iendcap, int istation, int iring, int ichamber, int ilayer) |
static int | intToDetId (int iring) |
Additional Inherited Members | |
Public Types inherited from DetId | |
enum | Detector { Tracker =1, Muon =2, Ecal =3, Hcal =4, Calo =5, Forward =6, VeryForward =7 } |
Static Public Attributes inherited from DetId | |
static const int | kDetOffset = 28 |
static const int | kSubdetOffset = 25 |
Protected Attributes inherited from DetId | |
uint32_t | id_ |
Identifier class for hierarchy of Endcap Muon detector components.
Ported from MuEndDetectorId but now derived from DetId and updated accordingly.
Allows access to hardware integer labels of the subcomponents of the Muon Endcap CSC detector system.
The STATIC member functions can be used to translate back and forth between a layer/chamber 'rawId' and the set of subdetector labels.
Definition at line 26 of file CSCDetId.h.
|
private |
Enumerator | |
---|---|
MASK_ENDCAP | |
MASK_STATION | |
MASK_RING | |
MASK_CHAMBER | |
MASK_LAYER |
Definition at line 304 of file CSCDetId.h.
|
private |
Enumerator | |
---|---|
MAX_ENDCAP | |
MAX_STATION | |
MAX_RING | |
MAX_CHAMBER | |
MAX_LAYER |
Definition at line 295 of file CSCDetId.h.
|
private |
Enumerator | |
---|---|
MIN_ENDCAP | |
MIN_STATION | |
MIN_RING | |
MIN_CHAMBER | |
MIN_LAYER |
Definition at line 297 of file CSCDetId.h.
|
private |
Enumerator | |
---|---|
BITS_ENDCAP | |
BITS_STATION | |
BITS_RING | |
BITS_CHAMBER | |
BITS_LAYER |
Definition at line 301 of file CSCDetId.h.
|
private |
Enumerator | |
---|---|
START_CHAMBER | |
START_RING | |
START_STATION | |
START_ENDCAP |
Definition at line 307 of file CSCDetId.h.
|
inline |
Default constructor; fills the common part in the base and leaves 0 in all other fields
Definition at line 33 of file CSCDetId.h.
|
inline |
Construct from a packed id. It is required that the Detector part of id is Muon and the SubDet part is CSC, otherwise an exception is thrown.
Definition at line 37 of file CSCDetId.h.
|
inline |
Definition at line 38 of file CSCDetId.h.
|
inline |
Construct from fully qualified identifier. Input values are required to be within legal ranges, otherwise an exception is thrown.
iendcap: 1=forward (+Z), 2=backward(-Z)
Definition at line 45 of file CSCDetId.h.
|
inline |
Return Chamber label.
Definition at line 68 of file CSCDetId.h.
Referenced by CSCReadoutMapping::detId(), HLTCSCOverlapFilter::hltFilter(), TAMuonChamberMatch::info(), AlignmentCSCOverlapSelector::select(), triggerCscId(), and triggerSector().
|
inlinestatic |
Return Chamber label for supplied CSCDetId index.
Definition at line 161 of file CSCDetId.h.
|
inline |
Chamber CSCDetId from a Layer CSCDetId
Definition at line 53 of file CSCDetId.h.
Referenced by CSCChamber::layer(), CSCDetIdSameChamberCompare::operator()(), and CSCDetIdSameChamberComparator::operator()().
|
inline |
Geometric channel no. from geometric strip no. - identical except for ME1a ganged strips
Note that 'Geometric' means increasing number corresponds to increasing local x coordinate.
Definition at line 118 of file CSCDetId.h.
|
inlinestaticprivate |
Definition at line 284 of file CSCDetId.h.
|
inline |
Return Endcap label. 1=forward (+Z); 2=backward (-Z)
Definition at line 93 of file CSCDetId.h.
Referenced by CSCReadoutMapping::detId(), csc::L1TrackId::endcap(), HLTCSCOverlapFilter::hltFilter(), TAMuonChamberMatch::info(), CSCDetIdSameDetLayerComparator::operator()(), AlignmentCSCOverlapSelector::select(), AlignmentCSCBeamHaloSelector::select(), and AlignmentCSCTrackSelector::select().
|
inlinestatic |
Return Endcap label for supplied CSCDetId index.
Definition at line 186 of file CSCDetId.h.
|
inline |
Chamber type (integer 1-10)
Definition at line 107 of file CSCDetId.h.
Referenced by CSCALCTDigiValidation::analyze(), and CSCCLCTDigiValidation::analyze().
|
static |
Return a unique integer 1-10 for a station, ring pair: 1 for S = 1 and R=4 inner strip part of ME11 (ME1a) 2,3,4 = R+1 for S = 1 and R = 1,2,3 (ME11 means ME1b) 5-10 = 2*S+R for S = 2,3,4 and R = 1,2
Definition at line 56 of file CSCDetId.cc.
References i.
|
inlinestaticprivate |
Method for initialization within ctors.
Definition at line 253 of file CSCDetId.h.
|
inlinestaticprivate |
Methods for reordering CSCDetId for ME1 detectors.
Internally the chambers are ordered (Station/Ring) as: ME1/a (1/1), ME1/b (1/2), ME1/2 (1/3), ME1/3 (1/4) i.e. they are labelled within the DetId as if ME1a, ME1b, ME12, ME13 are rings 1, 2, 3, 4. The offline software always considers rings 1, 2, 3, 4 as ME1b, ME12, ME13, ME1a so that at least ME12 and ME13 have ring numbers which match in hardware and software!
Definition at line 276 of file CSCDetId.h.
|
inline |
Return Layer label.
Definition at line 61 of file CSCDetId.h.
Referenced by MuonChamberResidual::hitlayer(), TAMuonChamberMatch::info(), and CSCChamber::layer().
|
inlinestatic |
Return Layer label for supplied CSCDetId index.
Definition at line 154 of file CSCDetId.h.
|
inlinestatic |
Definition at line 243 of file CSCDetId.h.
Referenced by MuonCSCDetLayerGeometryBuilder::buildLayer(), CSCFakeCrosstalkConditions::prefillCrosstalk(), CSCFakeGainsConditions::prefillGains(), and CSCFakePedestalsConditions::prefillPedestals().
|
inlinestatic |
Definition at line 237 of file CSCDetId.h.
Referenced by CSCFakeCrosstalkConditions::prefillCrosstalk(), CSCFakeGainsConditions::prefillGains(), CSCFakePedestalsConditions::prefillPedestals(), and CSCTFDTReceiver::process().
|
inlinestatic |
Definition at line 245 of file CSCDetId.h.
Referenced by CSCFakeCrosstalkConditions::prefillCrosstalk(), CSCFakeGainsConditions::prefillGains(), and CSCFakePedestalsConditions::prefillPedestals().
|
inlinestatic |
Definition at line 241 of file CSCDetId.h.
Referenced by MuonCSCDetLayerGeometryBuilder::buildLayers(), CSCFakeCrosstalkConditions::prefillCrosstalk(), CSCFakeGainsConditions::prefillGains(), and CSCFakePedestalsConditions::prefillPedestals().
|
inlinestatic |
Definition at line 239 of file CSCDetId.h.
Referenced by MuonCSCDetLayerGeometryBuilder::buildLayers(), CSCFakeCrosstalkConditions::prefillCrosstalk(), CSCFakeGainsConditions::prefillGains(), and CSCFakePedestalsConditions::prefillPedestals().
|
inlinestatic |
Definition at line 242 of file CSCDetId.h.
Referenced by MuonCSCDetLayerGeometryBuilder::buildLayer(), CSCFakeCrosstalkConditions::prefillCrosstalk(), CSCFakeGainsConditions::prefillGains(), and CSCFakePedestalsConditions::prefillPedestals().
|
inlinestatic |
Lower and upper counts for the subdetector hierarchy
Definition at line 236 of file CSCDetId.h.
Referenced by CSCFakeCrosstalkConditions::prefillCrosstalk(), CSCFakeGainsConditions::prefillGains(), CSCFakePedestalsConditions::prefillPedestals(), and CSCTFDTReceiver::process().
|
inlinestatic |
Definition at line 244 of file CSCDetId.h.
Referenced by CSCFakeCrosstalkConditions::prefillCrosstalk(), CSCFakeGainsConditions::prefillGains(), and CSCFakePedestalsConditions::prefillPedestals().
|
inlinestatic |
Definition at line 240 of file CSCDetId.h.
Referenced by MuonCSCDetLayerGeometryBuilder::buildLayers(), CSCFakeCrosstalkConditions::prefillCrosstalk(), CSCFakeGainsConditions::prefillGains(), and CSCFakePedestalsConditions::prefillPedestals().
|
inlinestatic |
Definition at line 238 of file CSCDetId.h.
Referenced by CSCFakeCrosstalkConditions::prefillCrosstalk(), CSCFakeGainsConditions::prefillGains(), and CSCFakePedestalsConditions::prefillPedestals().
|
inlinestatic |
Returns the unique integer 'rawId' which labels each CSC layer.
The arguments are the integer labels for, respectively,
endcap, station, ring, chamber, layer.
Definition at line 144 of file CSCDetId.h.
Referenced by CSCNumberingScheme::baseNumberToUnitNumber(), CSCReadoutMapping::findHardwareId(), CSCTriggerSimpleMapping::hwId(), CSCTriggerMapping::swId(), and CSCReadoutMapping::swId().
|
inline |
Return Ring label.
Definition at line 75 of file CSCDetId.h.
Referenced by FWCSCWireDigiProxyBuilder::build(), CSCReadoutMapping::detId(), CSCConfigurableStripConditions::fetchNoisifier(), CSCConfigurableStripConditions::gain(), HLTCSCOverlapFilter::hltFilter(), TAMuonChamberMatch::info(), CSCDetIdSameDetLayerComparator::operator()(), triggerCscId(), and triggerSector().
|
inlinestatic |
Return Ring label for supplied CSCDetId index.
Definition at line 168 of file CSCDetId.h.
|
inline |
Return Station label.
Definition at line 86 of file CSCDetId.h.
Referenced by FWCSCWireDigiProxyBuilder::build(), CSCReadoutMapping::detId(), CSCConfigurableStripConditions::fetchNoisifier(), CSCConfigurableStripConditions::gain(), HLTCSCOverlapFilter::hltFilter(), TAMuonChamberMatch::info(), CSCDetIdSameDetLayerComparator::operator()(), AlignmentCSCOverlapSelector::select(), AlignmentCSCBeamHaloSelector::select(), AlignmentCSCTrackSelector::select(), TAMuonChamberMatch::station(), reco::MuonChamberMatch::station(), csc::L1TrackId::station(), triggerCscId(), and triggerSector().
|
inlinestatic |
Return Station label for supplied CSCDetId index.
Definition at line 179 of file CSCDetId.h.
int CSCDetId::triggerCscId | ( | ) | const |
Return trigger-level CSC id within a sector for an Endcap Muon chamber.
This id is an index within a sector such that the 3 inner ring chambers (20 degrees each) are 1, 2, 3 (increasing counterclockwise) and the 6 outer ring chambers (10 degrees each) are 4, 5, 6, 7, 8, 9 (again increasing counter-clockwise.)
This method knows which chambers are part of which sector and returns the chamber label/index/identifier accordingly. Beware that this information is liable to change according to hardware and software changes.
Definition at line 23 of file CSCDetId.cc.
References chamber(), mps_fire::result, ring(), and station().
int CSCDetId::triggerSector | ( | ) | const |
Return trigger-level sector id for an Endcap Muon chamber.
This method encapsulates the information about which chambers are in which sectors, and may need updating according to hardware changes, or software chamber indexing.
Station 1 has 3 rings of 10-degree chambers.
Stations 2, 3, 4 have an inner ring of 20-degree chambers and an outer ring of 10-degree chambers.
Sectors are 60 degree slices of a station, covering both rings.
For Station 1, there are subsectors of 30 degrees: 9 10-degree chambers (3 each from ME1/1, ME1/2, ME1/3.)
The first sector starts at phi = 15 degrees so it matches Barrel Muon sectors. We count from one not zero.
Definition at line 3 of file CSCDetId.cc.
References chamber(), mps_fire::result, ring(), and station().
|
inline |
What is the sign of global z?
Definition at line 100 of file CSCDetId.h.