|
LDMX Software
|
Extension of DetectorID providing access to ECal layers and cell numbers in a hex grid. More...
#include <EcalID.h>
Public Member Functions | |
| EcalID () | |
| Empty ECAL id (but not null!) | |
| EcalID (RawValue rawid) | |
| Create from raw number. | |
| EcalID (const DetectorID id) | |
| Create from a DetectorID, but check. | |
| EcalID (unsigned int layer, unsigned int module, unsigned int cell) | |
| Create from pieces. | |
| EcalID (unsigned int layer, unsigned int module, unsigned int u, unsigned int v) | |
| Create from pieces including u/v cell. | |
| EcalID (unsigned int layer, unsigned int module, std::pair< unsigned int, unsigned int > uv) | |
| Create from pieces including u/v cell. | |
| int | module () const |
| Get the value of the module field from the ID. | |
| int | getModuleID () const |
| Get the value of the module field from the ID. | |
| int | layer () const |
| Get the value of the layer field from the ID. | |
| int | getLayerID () const |
| Get the value of the layer field from the ID. | |
| int | cell () const |
| Get the value of the cell field from the ID. | |
| int | getCellID () const |
| Get the value of the cell field from the ID. | |
| std::pair< unsigned int, unsigned int > | getCellUV () const |
| Get the cell u,v index assuming a CMS-standard 432-cell sensor. | |
Public Member Functions inherited from ldmx::EcalAbstractID | |
| EcalAbstractID () | |
| Empty ECAL id (but not null!) | |
| EcalAbstractID (RawValue rawid) | |
| Create from raw number. | |
| EcalAbstractID (const DetectorID id) | |
| Create from a DetectorID, but check. | |
| EcalAbstractID (unsigned int cell_type, unsigned int payload) | |
| Create from pieces. | |
| int | cellType () const |
| Get the value of the cell field from the ID. | |
| int | payload () const |
| Get the value of the payload field from the ID. | |
Public Member Functions inherited from ldmx::DetectorID | |
| DetectorID () | |
| Class constructor for a null DetectorID. | |
| DetectorID (RawValue rawid) | |
| Class constructor from a raw 32-bit integer. | |
| DetectorID (SubdetectorIDType sdtype, RawValue raw_subpayload) | |
| Class constructor from a subdetector id and a subdetector-specific section (masked to. | |
| bool | null () const |
| SubdetectorIDType | subdet () const |
| RawValue | raw () const |
| void | setRawValue (RawValue rawValue) |
| Set the raw value of the detector ID. | |
| bool | operator< (const DetectorID &id) const |
| bool | operator== (const DetectorID &id) const |
| bool | operator!= (const DetectorID &id) const |
Static Public Member Functions | |
| static void | createInterpreters () |
Static Public Attributes | |
| static const RawValue | LAYER_MASK {0x3F} |
| static const RawValue | LAYER_SHIFT {17} |
| static const RawValue | MODULE_MASK {0x1F} |
| static const RawValue | MODULE_SHIFT {12} |
| static const RawValue | CELL_MASK {0xFFF} |
| static const RawValue | CELL_SHIFT {0} |
Static Public Attributes inherited from ldmx::EcalAbstractID | |
| static const RawValue | CELL_TYPE_MASK {0x7} |
| static const RawValue | CELL_TYPE_SHIFT {23} |
| static const RawValue | ECAL_PAYLOAD_MASK {0x007FFFFF} |
Static Public Attributes inherited from ldmx::DetectorID | |
| static const RawValue | SUBDETECTORID_MASK {0x3F} |
| static const RawValue | SUBDETECTORID_SHIFT {26} |
| static const RawValue | SUBDETECTOR_PAYLOAD_MASK {0x3FFFFFF} |
Friends | |
| std::ostream & | operator<< (std::ostream &o, const ldmx::EcalID &d) |
Additional Inherited Members | |
Public Types inherited from ldmx::EcalAbstractID | |
| enum | EcalCellType { PrecisionGlobal = 0 , PrecisionLocal = 1 , TriggerCell = 2 , Special = 7 } |
Public Types inherited from ldmx::DetectorID | |
| typedef uint32_t | RawValue |
Protected Attributes inherited from ldmx::DetectorID | |
| RawValue | id_ |
| The raw, packed value of the ID. | |
Extension of DetectorID providing access to ECal layers and cell numbers in a hex grid.
|
inline |
Empty ECAL id (but not null!)
Definition at line 32 of file EcalID.h.
|
inline |
Create from raw number.
Definition at line 37 of file EcalID.h.
References ldmx::EcalAbstractID::cellType(), and ldmx::DetectorID::null().
|
inline |
Create from a DetectorID, but check.
Definition at line 50 of file EcalID.h.
References ldmx::EcalAbstractID::cellType(), and ldmx::DetectorID::null().
|
inline |
Create from pieces.
Definition at line 63 of file EcalID.h.
References cell(), ldmx::DetectorID::id_, and layer().
| ldmx::EcalID::EcalID | ( | unsigned int | layer, |
| unsigned int | module, | ||
| unsigned int | u, | ||
| unsigned int | v ) |
Create from pieces including u/v cell.
Definition at line 42 of file EcalID.cxx.
References cell(), ldmx::DetectorID::id_, and layer().
|
inline |
Create from pieces including u/v cell.
Definition at line 79 of file EcalID.h.
|
inline |
Get the value of the cell field from the ID.
Definition at line 111 of file EcalID.h.
References ldmx::DetectorID::id_.
Referenced by ecal::EcalTriggerGeometry::belongsTo(), EcalID(), EcalID(), getCellUV(), ecal::EcalTriggerGeometry::localPosition(), and TEST_CASE().
|
static |
Definition at line 14 of file EcalID.cxx.
|
inline |
Get the value of the cell field from the ID.
Definition at line 117 of file EcalID.h.
References ldmx::DetectorID::id_.
Referenced by getCellUV(), and TEST_CASE().
| std::pair< unsigned int, unsigned int > ldmx::EcalID::getCellUV | ( | ) | const |
Get the cell u,v index assuming a CMS-standard 432-cell sensor.
Definition at line 81 of file EcalID.cxx.
References cell(), and getCellID().
|
inline |
Get the value of the layer field from the ID.
Definition at line 105 of file EcalID.h.
References ldmx::DetectorID::id_.
Referenced by TEST_CASE().
|
inline |
Get the value of the module field from the ID.
Definition at line 93 of file EcalID.h.
References ldmx::DetectorID::id_.
Referenced by dqm::EcalDigiVerifier::analyze(), and TEST_CASE().
|
inline |
Get the value of the layer field from the ID.
Definition at line 99 of file EcalID.h.
References ldmx::DetectorID::id_.
Referenced by dqm::EcalDigiVerifier::analyze(), ecal::EcalTriggerGeometry::belongsTo(), EcalID(), EcalID(), and TEST_CASE().
|
inline |
Get the value of the module field from the ID.
Definition at line 87 of file EcalID.h.
References ldmx::DetectorID::id_.
Referenced by ecal::EcalTriggerGeometry::belongsTo(), and TEST_CASE().
|
friend |
Definition at line 7 of file EcalID.cxx.
|
static |
|
static |
|
static |
|
static |
|
static |