CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
EcalPnDiodeDetId.h
Go to the documentation of this file.
1 #ifndef ECALDETID_ECALPNDIODEDETID_H
2 #define ECALDETID_ECALPNDIODEDETID_H
3 
4 #include <ostream>
7 
8 
25 class EcalPnDiodeDetId : public DetId {
26  public:
30  EcalPnDiodeDetId(uint32_t rawid);
33  EcalPnDiodeDetId(int EcalSubDetectorId, int DCCId, int PnId);
35  EcalPnDiodeDetId(const DetId& id);
37  EcalPnDiodeDetId& operator=(const DetId& id);
38 
39  static const int MAX_DCCID = 54;
40  static const int MIN_DCCID = 1;
41  static const int MAX_PNID = 15;
42  static const int MIN_PNID = 1;
43 
45  int iEcalSubDetectorId() const { return (id_ & 0x800 ) ? (EcalEndcap):(EcalBarrel); }
47  int iDCCId() const { return (id_>>4) & 0x7F; }
49  int iPnId() const { return id_&0xF; }
51  int hashedIndex() const;
52 
53 };
54 
55 std::ostream& operator<<(std::ostream&,const EcalPnDiodeDetId& id);
56 
57 #endif
std::ostream & operator<<(std::ostream &out, const ALILine &li)
Definition: ALILine.cc:187
EcalPnDiodeDetId & operator=(const DetId &id)
static const int MIN_DCCID
int iPnId() const
get the PnId
static const int MAX_PNID
int iEcalSubDetectorId() const
get EcalSubDetectorId
static const int MAX_DCCID
int iDCCId() const
get the DCCId
Definition: DetId.h:20
int hashedIndex() const
get a compact index for arrays [TODO: NEEDS WORK]
uint32_t id_
Definition: DetId.h:57
static const int MIN_PNID