CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Static Private Attributes
PXBDetId Class Reference

#include <PXBDetId.h>

Inheritance diagram for PXBDetId:
DetId

Public Member Functions

unsigned int ladder () const
 ladder id More...
 
unsigned int layer () const
 layer id More...
 
unsigned int module () const
 det id More...
 
 PXBDetId ()
 
 PXBDetId (uint32_t rawid)
 
 PXBDetId (const DetId &id)
 
 PXBDetId (uint32_t layer, uint32_t ladder, uint32_t module)
 
- 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 Private Attributes

static const unsigned int ladderMask_ = 0xFF
 
static const unsigned int ladderStartBit_ = 8
 
static const unsigned int layerMask_ = 0xF
 two bits would be enough, but we could use the number "0" as a wildcard More...
 
static const unsigned int layerStartBit_ = 16
 two bits would be enough, but we could use the number "0" as a wildcard More...
 
static const unsigned int moduleMask_ = 0x3F
 
static const unsigned int moduleStartBit_ = 2
 

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_
 

Detailed Description

Definition at line 16 of file PXBDetId.h.

Constructor & Destructor Documentation

PXBDetId::PXBDetId ( )

Constructor of a null id

Definition at line 3 of file PXBDetId.cc.

3  : DetId() {
4 }
DetId()
Create an empty or null id (also for persistence)
Definition: DetId.h:26
PXBDetId::PXBDetId ( uint32_t  rawid)

Constructor from a raw value

Definition at line 6 of file PXBDetId.cc.

6  : DetId(rawid) {
7 }
DetId()
Create an empty or null id (also for persistence)
Definition: DetId.h:26
PXBDetId::PXBDetId ( const DetId id)

Construct from generic DetId

Definition at line 8 of file PXBDetId.cc.

8  : DetId(id.rawId()) {
9 }
DetId()
Create an empty or null id (also for persistence)
Definition: DetId.h:26
uint32_t rawId() const
get the raw id
Definition: DetId.h:43
PXBDetId::PXBDetId ( uint32_t  layer,
uint32_t  ladder,
uint32_t  module 
)
inline

Definition at line 25 of file PXBDetId.h.

References DetId::id_, ladderMask_, ladderStartBit_, layerMask_, layerStartBit_, moduleMask_, and moduleStartBit_.

31  }
static const unsigned int layerMask_
two bits would be enough, but we could use the number &quot;0&quot; as a wildcard
Definition: PXBDetId.h:52
unsigned int ladder() const
ladder id
Definition: PXBDetId.h:39
DetId()
Create an empty or null id (also for persistence)
Definition: DetId.h:26
unsigned int layer() const
layer id
Definition: PXBDetId.h:35
static const unsigned int moduleMask_
Definition: PXBDetId.h:54
static const unsigned int moduleStartBit_
Definition: PXBDetId.h:50
static const unsigned int layerStartBit_
two bits would be enough, but we could use the number &quot;0&quot; as a wildcard
Definition: PXBDetId.h:48
static const unsigned int ladderStartBit_
Definition: PXBDetId.h:49
static const unsigned int ladderMask_
Definition: PXBDetId.h:53
uint32_t id_
Definition: DetId.h:55
Definition: vlib.h:208

Member Function Documentation

unsigned int PXBDetId::ladder ( ) const
inline

ladder id

Definition at line 39 of file PXBDetId.h.

References DetId::id_, ladderMask_, and ladderStartBit_.

Referenced by trackerHierarchy().

40  { return ((id_>>ladderStartBit_) & ladderMask_) ;}
static const unsigned int ladderStartBit_
Definition: PXBDetId.h:49
static const unsigned int ladderMask_
Definition: PXBDetId.h:53
uint32_t id_
Definition: DetId.h:55
unsigned int PXBDetId::layer ( ) const
inline

layer id

Definition at line 35 of file PXBDetId.h.

References DetId::id_, layerMask_, and layerStartBit_.

Referenced by trackerHierarchy().

35  {
36  return int((id_>>layerStartBit_) & layerMask_);}
static const unsigned int layerMask_
two bits would be enough, but we could use the number &quot;0&quot; as a wildcard
Definition: PXBDetId.h:52
static const unsigned int layerStartBit_
two bits would be enough, but we could use the number &quot;0&quot; as a wildcard
Definition: PXBDetId.h:48
uint32_t id_
Definition: DetId.h:55
unsigned int PXBDetId::module ( ) const
inline

det id

Definition at line 43 of file PXBDetId.h.

References DetId::id_, moduleMask_, and moduleStartBit_.

Referenced by trackerHierarchy().

44  { return ((id_>>moduleStartBit_)& moduleMask_) ;}
static const unsigned int moduleMask_
Definition: PXBDetId.h:54
static const unsigned int moduleStartBit_
Definition: PXBDetId.h:50
uint32_t id_
Definition: DetId.h:55

Member Data Documentation

const unsigned int PXBDetId::ladderMask_ = 0xFF
staticprivate

Definition at line 53 of file PXBDetId.h.

Referenced by ladder(), and PXBDetId().

const unsigned int PXBDetId::ladderStartBit_ = 8
staticprivate

Definition at line 49 of file PXBDetId.h.

Referenced by ladder(), and PXBDetId().

const unsigned int PXBDetId::layerMask_ = 0xF
staticprivate

two bits would be enough, but we could use the number "0" as a wildcard

Definition at line 52 of file PXBDetId.h.

Referenced by layer(), and PXBDetId().

const unsigned int PXBDetId::layerStartBit_ = 16
staticprivate

two bits would be enough, but we could use the number "0" as a wildcard

Definition at line 48 of file PXBDetId.h.

Referenced by layer(), and PXBDetId().

const unsigned int PXBDetId::moduleMask_ = 0x3F
staticprivate

Definition at line 54 of file PXBDetId.h.

Referenced by module(), and PXBDetId().

const unsigned int PXBDetId::moduleStartBit_ = 2
staticprivate

Definition at line 50 of file PXBDetId.h.

Referenced by module(), and PXBDetId().