Go to the documentation of this file. 1 #ifndef ECALDETID_ESDETID_H
2 #define ECALDETID_ESDETID_H
25 id_ |= (
strip & 0x3F) | ((ixs & 0x3F) << 6) | ((iys & 0x3F) << 12) | (((
plane - 1) & 0
x1) << 18) |
26 ((iz > 0) ? (1 << 19) : (0));
39 int zside()
const {
return (
id_ & 0x80000) ? (1) : (-1); }
43 int six()
const {
return (
id_ >> 6) & 0x3F; }
45 int siy()
const {
return (
id_ >> 12) & 0x3F; }
61 static bool validDetId(
int istrip,
int ixs,
int iys,
int iplane,
int iz);
62 static void verify(
int istrip,
int ixs,
int iys,
int iplane,
int iz);
ESDetId & operator=(const DetId &id)
static const int ISTRIP_MIN
EcalSubdetector subdet() const
get the subdetector
static const unsigned short hxy1[kXMAX][kYMAX]
int hashedIndex() const
get a compact index for arrays [TODO: NEEDS WORK]
static const unsigned short hx2[kXYMAX]
static const int PLANE_MIN
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
static void verify(int istrip, int ixs, int iys, int iplane, int iz)
std::ostream & operator<<(std::ostream &, const ESDetId &id)
static const int PLANE_MAX
static ESDetId detIdFromDenseIndex(uint32_t din)
static const int ISTRIP_MAX
static bool validDenseIndex(uint32_t din)
static const unsigned short hy2[kXYMAX]
static const unsigned short hy1[kXYMAX]
uint32_t denseIndex() const
static ESDetId unhashIndex(int hi)
get a DetId from a compact index for arrays
static const unsigned short hxy2[kXMAX][kYMAX]
static bool validDetId(int istrip, int ixs, int iys, int iplane, int iz)
check if a valid index combination
static bool validHashIndex(int hi)
static const unsigned short hx1[kXYMAX]
ESDetId(int strip, int ixs, int iys, int plane, int iz, bool doverify=false)
constructor from strip, ix, iy, plane, and iz