CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Private Member Functions | Static Private Member Functions | Static Private Attributes
EEDetId Class Reference

#include <EEDetId.h>

Inheritance diagram for EEDetId:
DetId

Public Types

enum  { Subdet = EcalEndcap }
 
enum  { kEEhalf = 7324, kSizeForDenseIndexing = 2 * kEEhalf }
 
- Public Types inherited from DetId
enum  Detector {
  Tracker = 1, Muon = 2, Ecal = 3, Hcal = 4,
  Calo = 5, Forward = 6, VeryForward = 7, HGCalEE = 8,
  HGCalHSi = 9, HGCalHSc = 10, HGCalTrigger = 11
}
 

Public Member Functions

uint32_t denseIndex () const
 
 EEDetId ()
 
 EEDetId (const DetId &id)
 
 EEDetId (int crystal_ix, int crystal_iy, int iz)
 
 EEDetId (int i, int j, int iz, int mode)
 
 EEDetId (uint32_t rawid)
 
int hashedIndex () const
 
int ic () const
 
int iPhiOuterRing () const
 
int iquadrant () const
 
int isc () const
 
int ix () const
 
int iy () const
 
EEDetId offsetBy (int nrStepsX, int nrStepsY) const
 
EEDetIdoperator= (const DetId &id)
 
bool positiveZ () const
 
EcalScDetId sc () const
 
EEDetId switchZSide () const
 
int zside () const
 
- Public Member Functions inherited from DetId
constexpr Detector det () const
 get the detector field from this detid More...
 
constexpr DetId ()
 Create an empty or null id (also for persistence) More...
 
constexpr DetId (Detector det, int subdet)
 Create an id, filling the detector and subdetector fields as specified. More...
 
constexpr DetId (uint32_t id)
 Create an id from a raw number. More...
 
constexpr bool null () const
 is this a null id ? More...
 
constexpr operator uint32_t () const
 
constexpr bool operator!= (DetId id) const
 inequality More...
 
constexpr uint32_t operator() () const
 
constexpr bool operator< (DetId id) const
 comparison More...
 
constexpr bool operator== (DetId id) const
 equality More...
 
constexpr uint32_t rawId () const
 get the raw id More...
 
constexpr int subdetId () const
 get the contents of the subdetector field (not cast into any detector's numbering enum) More...
 

Static Public Member Functions

static EEDetId detIdFromDenseIndex (uint32_t din)
 
static int distanceX (const EEDetId &a, const EEDetId &b)
 
static int distanceY (const EEDetId &a, const EEDetId &b)
 
static bool fastValidDetId (int crystal_ix, int crystal_iy)
 
static EEDetId idOuterRing (int iPhi, int zEnd)
 
static int isc (int iscCol, int iscRow)
 
static bool isNextToBoundary (EEDetId id)
 
static bool isNextToDBoundary (EEDetId id)
 
static bool isNextToRingBoundary (EEDetId id)
 
static DetId offsetBy (const DetId startId, int nrStepsX, int nrStepsY)
 
static bool slowValidDetId (int crystal_ix, int crystal_iy)
 
static EcalSubdetector subdet ()
 
static DetId switchZSide (const DetId startId)
 
static EEDetId unhashIndex (int hi)
 
static bool validDenseIndex (uint32_t din)
 
static bool validDetId (int crystal_ix, int crystal_iy, int iz)
 
static bool validHashIndex (int i)
 

Static Public Attributes

static const int ICR_MAX = 25
 
static const int ICR_MIN = 1
 
static const int ISC_MAX = 316
 
static const int ISC_MIN = 1
 
static const int IX_MAX = 100
 
static const int IX_MIN = 1
 
static const int IY_MAX = 100
 
static const int IY_MIN = 1
 
static const int SCCRYSTALMODE = 1
 
static const int XYMODE = 0
 
- Static Public Attributes inherited from DetId
static const int kDetMask = 0xF
 
static const int kDetOffset = 28
 
static const int kSubdetMask = 0x7
 
static const int kSubdetOffset = 25
 

Private Member Functions

bool isOuterRing () const
 
int ix (int iSC, int iCrys) const
 
int ixQuadrantOne () const
 
int iy (int iSC, int iCrys) const
 
int iyQuadrantOne () const
 

Static Private Member Functions

static bool isOuterRingXY (int ax, int ay)
 

Static Private Attributes

static const int iYoffset [nCols+1] = {0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0}
 
static const unsigned short kdi [2 *IY_MAX]
 
static const unsigned short kxf [2 *IY_MAX]
 
static const int nCols = 10
 
static const int nCrys = 5
 
static const int QuadColLimits [nCols+1] = {0, 8, 17, 27, 36, 45, 54, 62, 70, 76, 79}
 

Additional Inherited Members

- Protected Attributes inherited from DetId
uint32_t id_
 

Detailed Description

Crystal/cell identifier class for the ECAL endcap

Definition at line 14 of file EEDetId.h.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
Subdet 

Sudetector type. Here it is ECAL endcap.

Definition at line 16 of file EEDetId.h.

16  {
20  };

◆ anonymous enum

anonymous enum
Enumerator
kEEhalf 

Number of crystals per Dee

kSizeForDenseIndexing 

Number of dense crystal indices, that is number of crystals per endcap.

Definition at line 322 of file EEDetId.h.

322  {
325  kEEhalf = 7324,
330  };

Constructor & Destructor Documentation

◆ EEDetId() [1/5]

EEDetId::EEDetId ( )
inline

Constructor of a null id

Definition at line 24 of file EEDetId.h.

24 {}

Referenced by idOuterRing(), offsetBy(), switchZSide(), and unhashIndex().

◆ EEDetId() [2/5]

EEDetId::EEDetId ( uint32_t  rawid)
inline

Constructor from a raw value

Parameters
rawiddet ID number

Definition at line 29 of file EEDetId.h.

29 : DetId(rawid) {}

◆ EEDetId() [3/5]

EEDetId::EEDetId ( int  crystal_ix,
int  crystal_iy,
int  iz 
)
inline

Constructor from crystal ix,iy,iz (iz=+1/-1) (mode = XYMODE) or from sc,cr,iz (mode = SCCRYSTALMODE).

ix runs from 1 to 100 along x-axis of standard CMS coordinates
iy runs from 1 to 100 along y-axis of standard CMS coordinates
iz is -1 for EE- and +1 for EE+

For isc see isc(), for ic see ic()

See also
isc(), ic()
Parameters
iix or isc index
jiy or isc index
iziz/zside index: -1 for EE-, +1 for EE+
modepass XYMODE if i j refer to ix, iy, SCCRYSTALMODE if thery refer to isc, ic

Definition at line 44 of file EEDetId.h.

44  : DetId(Ecal, EcalEndcap) {
45  id_ |= (crystal_iy & 0x7f) | ((crystal_ix & 0x7f) << 7) | ((iz > 0) ? (0x4000) : (0));
46  }

References DetId::id_.

◆ EEDetId() [4/5]

EEDetId::EEDetId ( int  i,
int  j,
int  iz,
int  mode 
)

Definition at line 32 of file EEDetId.cc.

32  : DetId(Ecal, EcalEndcap) {
33  int crystal_ix = 0;
34  int crystal_iy = 0;
35  if (mode == XYMODE) {
36  crystal_ix = index1;
37  crystal_iy = index2;
38  } else if (mode == SCCRYSTALMODE) {
39  int SC = index1;
40  int crystal = index2;
41  // std::cout << "iz " << iz << " SC " << index1 << "crystal " << index2 << std::endl;
42 
43  crystal_ix = iz * ix(SC, crystal);
44  if (crystal_ix < 0)
45  crystal_ix++;
46  crystal_ix += 50;
47  crystal_iy = iy(SC, crystal);
48  if (crystal_iy < 0)
49  crystal_iy++;
50  crystal_iy += 50;
51 
52  } else {
53  throw cms::Exception("InvalidDetId")
54  << "EEDetId: Cannot create object. Unknown mode for (int, int, int) constructor.";
55  }
56 
57  if (!validDetId(crystal_ix, crystal_iy, iz)) {
58  throw cms::Exception("InvalidDetId") << "EEDetId: Cannot create object. Indexes out of bounds \n"
59  << "x = " << crystal_ix << " y = " << crystal_iy << " z = " << iz;
60  }
61 
62  id_ |= (crystal_iy & 0x7f) | ((crystal_ix & 0x7f) << 7) | ((iz > 0) ? (0x4000) : (0));
63 }

References Exception, DetId::id_, ix(), iy(), ALCARECOPromptCalibProdSiPixelAli0T_cff::mode, SCCRYSTALMODE, validDetId(), and XYMODE.

◆ EEDetId() [5/5]

EEDetId::EEDetId ( const DetId id)
inline

Constructor from a generic cell id

Parameters
idsource detid

Definition at line 53 of file EEDetId.h.

53 : DetId(id) {}

Member Function Documentation

◆ denseIndex()

uint32_t EEDetId::denseIndex ( ) const
inline

Same as hashedIndex()

Returns
compact index from 0 to kSizeForDenseIndexing-1

Definition at line 192 of file EEDetId.h.

192 { return hashedIndex(); }

References hashedIndex().

◆ detIdFromDenseIndex()

static EEDetId EEDetId::detIdFromDenseIndex ( uint32_t  din)
inlinestatic

◆ distanceX()

int EEDetId::distanceX ( const EEDetId a,
const EEDetId b 
)
static

Returns the distance along x-axis in crystal units between two EEDetId

Parameters
adet id of first crystal
bdet id of second crystal
Returns
distance

Definition at line 474 of file EEDetId.cc.

474 { return abs(a.ix() - b.ix()); }

References a, funct::abs(), and b.

◆ distanceY()

int EEDetId::distanceY ( const EEDetId a,
const EEDetId b 
)
static

Returns the distance along y-axis in crystal units between two EEDetId

Parameters
adet id of first crystal
bdet id of second crystal
Returns
distance

Definition at line 476 of file EEDetId.cc.

476 { return abs(a.iy() - b.iy()); }

References a, funct::abs(), and b.

◆ fastValidDetId()

static bool EEDetId::fastValidDetId ( int  crystal_ix,
int  crystal_iy 
)
inlinestatic

check if ix and iy is in a "ring" inscribed in EE if is inside is valid for sure if not the slow version shall be called

Definition at line 258 of file EEDetId.h.

258  {
259  float x = crystal_ix;
260  float y = crystal_iy;
261  float r = (x - 50.5f) * (x - 50.5f) + (y - 50.5f) * (y - 50.5f);
262  return r > 12.f * 12.f && r < 48.f * 48.f;
263  }

References f, alignCSCRings::r, x, and y.

Referenced by validDetId().

◆ hashedIndex()

int EEDetId::hashedIndex ( ) const
inline

Gets a compact index for arrays

Returns
compact index from 0 to kSizeForDenseIndexing-1

Definition at line 183 of file EEDetId.h.

183  {
184  const uint32_t jx(ix());
185  const uint32_t jd(2 * (iy() - 1) + (jx - 1) / 50);
186  return ((positiveZ() ? kEEhalf : 0) + kdi[jd] + jx - kxf[jd]);
187  }

References ix(), iy(), kdi, kEEhalf, kxf, and positiveZ().

Referenced by EcalGetLaserData::analyze(), ECALpedestalPCLworker::analyze(), EcalPulseShapeGrapher::analyze(), EcalURecHitHists::analyze(), EcalPedestalHistory::beginRun(), CaloGeometryHelper::buildCrystalArray(), CaloGeometryHelper::buildNeighbourArray(), popcon::EcalChannelStatusHandler::cosmicsAnalysis(), EcalLaserCondTools::dbToAscii(), denseIndex(), ecalEnergyInCone(), PFECALHashNavigator::ecalNeighbArray(), fillEEMap_DiffIOV(), EcalTestDevDB::generateEcalLaserAlphas(), EcalTestDevDB::generateEcalLaserAPDPNRatios(), EcalTestDevDB::generateEcalLaserAPDPNRatiosRef(), EcalLaserDbService::getLaserCorrection(), CaloGeometryHelper::getNeighbours(), popcon::EcalLaser_weekly_Linearization_Check::getNewObjects(), popcon::EcalPedestalsHandler::getNewObjectsH2(), popcon::EcalPedestalsHandler::getNewObjectsP5(), popcon::EcalChannelStatusHandler::laserAnalysis(), CaloGeometryHelper::move(), PFECALHashNavigator::move(), popcon::EcalChannelStatusHandler::pedAnalysis(), popcon::EcalPedestalsHandler::readPedestal2017(), popcon::EcalPedestalsHandler::readPedestalFile(), popcon::EcalPedestalsHandler::readPedestalMC(), EcalUncalibRecHitWorkerRatio::run(), EcalUncalibRecHitWorkerWeights::run(), EcalUncalibRecHitWorkerGlobal::run(), EcalUncalibRecHitWorkerMultiFit::run(), and EcalGeomPhiSymHelper::setup().

◆ ic()

int EEDetId::ic ( ) const

Gets crystal number inside SuperCrystal. Crystal numbering withing a supercrystal in each quadrant:

*                       A y
*  (Q2)                 |                    (Q1)
*       25 20 15 10 5   |     5 10 15 20 25
*       24 19 14  9 4   |     4  9 14 19 24
*       23 18 13  8 3   |     3  8 13 18 23
*       22 17 12  7 2   |     2  7 12 17 22
*       21 16 11  6 1   |     1  6 11 16 21
*                       |
* ----------------------o---------------------------> x
*                       |
*       21 16 11  6 1   |     1  6 11 16 21
*       22 17 12  7 2   |     2  7 12 17 22
*       23 18 13  8 3   |     3  8 13 18 23
*       24 19 14  9 4   |     4  9 14 19 24
*       25 20 15 10 5   |     5 10 15 20 25
*  (Q3)                                       (Q4)
* 
Returns
crystal number from 1 to 25

Definition at line 245 of file EEDetId.cc.

245  {
246  /*
247  * Return crystal number from (x,y) coordinates.
248  *
249  * Author : B W Kennedy
250  * Version : 1.00
251  * Created : 5 May 2006
252  * Last Mod :
253  *
254  * Input : ix, iy - (x,y) position of crystal
255  */
256 
257  /* Useful constants . */
258  int iQuadrant = iquadrant();
259  int icrCol = -1;
260  int icrRow = -1;
261 
262  if (iQuadrant == 1 || iQuadrant == 3) {
263  icrCol = (ixQuadrantOne() - 1) % nCrys;
264  icrRow = (iyQuadrantOne() - 1) % nCrys;
265  }
266 
267  else if (iQuadrant == 2 || iQuadrant == 4) {
268  icrRow = (ixQuadrantOne() - 1) % nCrys;
269  icrCol = (iyQuadrantOne() - 1) % nCrys;
270  }
271 
272  int icrys = 5 * icrCol + icrRow + 1;
273 
274  return icrys;
275 }

References iquadrant(), ixQuadrantOne(), iyQuadrantOne(), and nCrys.

Referenced by EcalSimple2007H4TBAnalyzer::analyze(), EcalURecHitHists::analyze(), DetIdInfo::info(), and fireworks::info().

◆ idOuterRing()

EEDetId EEDetId::idOuterRing ( int  iPhi,
int  zEnd 
)
static

Definition at line 339 of file EEDetId.cc.

339  {
340  iPhi -= 10; // phi=1 in barrel is at -10deg
341  while (iPhi < 1)
342  iPhi += 360;
343  while (iPhi > 360)
344  iPhi -= 360;
345 
346  const int index1(iPhi - 1);
347  const int quad(index1 / 90);
348  int indexq(index1 - quad * 90 + 1);
349  if (0 == quad || 2 == quad)
350  indexq = 91 - indexq;
351  const int indexh(indexq > 45 ? 91 - indexq : indexq);
352  const int axh(
353  indexh <= 10
354  ? indexh
355  : (indexh <= 12
356  ? 10
357  : (indexh <= 17
358  ? indexh - 2
359  : (indexh <= 18
360  ? 15
361  : (indexh <= 28
362  ? indexh - 3
363  : (indexh <= 30
364  ? 25
365  : (indexh <= 35
366  ? indexh - 5
367  : (indexh <= 39 ? 30 : (indexh <= 44 ? indexh - 9 : 35)))))))));
368  const int ayh(
369  indexh <= 10
370  ? 50
371  : (indexh <= 12
372  ? 60 - indexh
373  : (indexh <= 17
374  ? 47
375  : (indexh <= 18
376  ? 64 - indexh
377  : (indexh <= 28
378  ? 45
379  : (indexh <= 30 ? 73 - indexh
380  : (indexh <= 35 ? 42
381  : (indexh <= 39 ? 77 - indexh
382  : (indexh <= 44 ? 37 : 36)))))))));
383  const int bxh(indexq > 45 ? ayh : axh);
384  const int byh(indexq > 45 ? axh : ayh);
385  const int cx((quad == 0 || quad == 3 ? bxh : -bxh + 1) + IX_MAX / 2);
386  const int cy((quad == 0 || quad == 1 ? byh : -byh + 1) + IY_MAX / 2);
387 
388  return EEDetId(cx, cy, (zEnd > 0 ? 1 : -1));
389 }

References EEDetId(), IX_MAX, and IY_MAX.

Referenced by EcalBarrelGeometry::getClosestEndcapCells().

◆ iPhiOuterRing()

int EEDetId::iPhiOuterRing ( ) const

Definition at line 295 of file EEDetId.cc.

295  {
296  int returnValue(0);
297  if (isOuterRing()) {
298  const int ax(abs(ix() - IX_MAX / 2));
299  const int ay(abs(iy() - IY_MAX / 2));
300  returnValue = ax + 50 - ay;
301  if (ay <= 47)
302  --returnValue;
303  if (ay <= 45)
304  --returnValue;
305  if (ay <= 42)
306  --returnValue;
307  if (ay <= 37)
308  --returnValue;
309  if (ay <= 35)
310  --returnValue;
311  if (ay <= 30)
312  --returnValue;
313  if (ay <= 25)
314  --returnValue;
315  if (ay <= 15)
316  --returnValue;
317  if (ay <= 10)
318  --returnValue;
319  const int iq(iquadrant());
320  if (1 == iq) {
321  returnValue = 91 - returnValue;
322  } else {
323  if (2 == iq) {
324  returnValue += 90;
325  } else {
326  if (3 == iq) {
327  returnValue = 271 - returnValue;
328  } else {
329  returnValue += 270;
330  }
331  }
332  }
333  returnValue = 1 + (360 + returnValue - 10 - 1) % 360;
334  }
335  // if( positiveZ() ) returnValue += 360 ;
336  return returnValue;
337 }

References funct::abs(), iquadrant(), isOuterRing(), ix(), IX_MAX, iy(), and IY_MAX.

Referenced by spr::simpleMove(), and PFECALHashNavigator::stdsimplemove().

◆ iquadrant()

int EEDetId::iquadrant ( ) const

Gets the quadrant of the DetId. Quadrant number definition, x and y in std CMS coordinates, for EE+:

*                 A y
*                 |
*          Q2     |    Q1
*                 |
*       ----------o---------> x
*                 |
*          Q3     |    Q4
*                 |
* 
Returns
quadrant number

Definition at line 206 of file EEDetId.cc.

206  {
207  if (ix() > 50) {
208  if (iy() > 50)
209  return 1;
210  else
211  return 4;
212  } else {
213  if (iy() > 50)
214  return 2;
215  else
216  return 3;
217  }
218  //Should never be reached
219  return -1;
220 }

References ix(), and iy().

Referenced by EcalTrigTowerConstituentsMap::changeEEDetIdQuadrantAndZ(), EcalBarrelGeometry::getClosestEndcapCells(), ic(), DetIdInfo::info(), fireworks::info(), iPhiOuterRing(), ixQuadrantOne(), iyQuadrantOne(), and EcalTrigTowerConstituentsMap::wrapEEDetId().

◆ isc() [1/2]

int EEDetId::isc ( ) const

Gets the SuperCrystal number within the endcap. This number runs from 1 to 316, numbers 70 149 228 307 are not used.

BEWARE: This number is not consistent with indices used in constructor: see details below.

Numbering in quadrant 1 of EE+ is the following

*  08 17 27        
*  07 16 26 36 45 54     
*  06 15 25 35 44 53 62    
*  05 14 24 34 43 52 61 69   
*  04 13 23 33 42 51 60 68 76  
*  03 12 22 32 41 50 59 67 75  
*  02 11 21 31 40 49 58 66 74  
*  01 10 20 30 39 48 57 65 73 79 
*     09 19 29 38 47 56 64 72 78 
*        18 28 37 46 55 63 71 77
*  
*        == THERE IS NO INDEX 70! ==
* 

Quadrant 2 indices are deduced by a symetry about y-axis and by adding an offset of 79.
Quadrant 3 and 4 indices are deduced from quadrant 1 and 2 by a symetry about x-axis and adding an offset. Quadrant N starts with index 1 + (N-1)*79.

EE- indices are deduced from EE+ by a symetry about (x,y)-plane (mirrored view). It is inconsistent with indices used in constructor EEDetId(int, int,int) in SCCRYSTALMODE. Indices of constructor uses a symetry along y-axis: in principal it considers the isc as a local index. The discrepancy is most probably due to a bug in the implementation of this isc() method.

Definition at line 222 of file EEDetId.cc.

222 { return isc(1 + (ix() - 1) / nCrys, 1 + (iy() - 1) / nCrys); }

References ix(), iy(), and nCrys.

Referenced by CaloGeometryHelper::borderCrossing(), DetIdInfo::info(), and fireworks::info().

◆ isc() [2/2]

int EEDetId::isc ( int  iscCol,
int  iscRow 
)
static

Gives supercrystal index from endcap supercrystal x and y indexes.

See also
isc() for the index definition
Parameters
iscColsupercrystal column number: supecrystal x-index for EE+
iscRowsupecrystal y-index
Returns
supercystal index

Definition at line 224 of file EEDetId.cc.

224  {
225  if (0 < jx && 21 > jx && 0 < jy && 21 > jy) {
226  const int iquad((10 < jx && 10 < jy ? 1 : (11 > jx && 10 < jy ? 2 : (11 > jx && 11 > jy ? 3 : 4))));
227 
228  const int iCol = (1 == iquad || 4 == iquad ? jx - 10 : 11 - jx);
229  const int iRow = (1 == iquad || 2 == iquad ? jy - 10 : 11 - jy);
230 
231  static const int nSCinQuadrant = ISC_MAX / 4;
232 
233  const int yOff(iYoffset[iCol]);
234 
235  const int qOff(nSCinQuadrant * (iquad - 1));
236 
237  const int iscOne(QuadColLimits[iCol - 1] + iRow - yOff);
238 
239  return (yOff >= iRow ? -1 : (QuadColLimits[iCol] < iscOne ? -2 : iscOne + qOff));
240  } else {
241  return -3; // bad inputs
242  }
243 }

References ISC_MAX, iYoffset, and QuadColLimits.

◆ isNextToBoundary()

bool EEDetId::isNextToBoundary ( EEDetId  id)
static

Definition at line 277 of file EEDetId.cc.

277 { return isNextToDBoundary(id) || isNextToRingBoundary(id); }

References isNextToDBoundary(), and isNextToRingBoundary().

Referenced by isNextToBoundary().

◆ isNextToDBoundary()

bool EEDetId::isNextToDBoundary ( EEDetId  id)
static

Definition at line 279 of file EEDetId.cc.

279  {
280  // hardcoded values for D boundary
281  return id.ix() == 50 || id.ix() == 51;
282 }

Referenced by PhotonIsolationCalculator::classify(), GsfElectronAlgo::createElectron(), and isNextToBoundary().

◆ isNextToRingBoundary()

bool EEDetId::isNextToRingBoundary ( EEDetId  id)
static

Definition at line 284 of file EEDetId.cc.

284  {
285  for (int i = -1; i <= 1; ++i) {
286  for (int j = -1; j <= 1; ++j) {
287  if (!validDetId(id.ix() + i, id.iy() + j, id.zside())) {
288  return true;
289  }
290  }
291  }
292  return false;
293 }

References mps_fire::i, ix(), iy(), dqmiolumiharvest::j, validDetId(), and zside().

Referenced by PhotonIsolationCalculator::classify(), GsfElectronAlgo::createElectron(), EcalCleaningAlgo::isNearCrack(), isNextToBoundary(), InterestingDetIdFromSuperClusterProducer::produce(), and InterestingDetIdCollectionProducer::produce().

◆ isOuterRing()

bool EEDetId::isOuterRing ( ) const
private

Definition at line 429 of file EEDetId.cc.

429  {
430  const int kx(ix());
431  const int ky(iy());
432  const int ax(kx > IX_MAX / 2 ? kx - IX_MAX / 2 : IX_MAX / 2 + 1 - kx);
433  const int ay(ky > IY_MAX / 2 ? ky - IY_MAX / 2 : IY_MAX / 2 + 1 - ky);
434  return (isOuterRingXY(ax, ay) || isOuterRingXY(ay, ax));
435 }

References isOuterRingXY(), ix(), IX_MAX, iy(), and IY_MAX.

Referenced by iPhiOuterRing().

◆ isOuterRingXY()

bool EEDetId::isOuterRingXY ( int  ax,
int  ay 
)
staticprivate

Definition at line 437 of file EEDetId.cc.

437  {
438  return ((ax <= 10 && ay == 50) || (ax == 10 && ay >= 48) || (ax <= 15 && ax >= 11 && ay == 47) ||
439  (ax == 15 && ay == 46) || (ax <= 25 && ax >= 16 && ay == 45) || (ax == 25 && ay <= 44 && ay >= 43) ||
440  (ax <= 30 && ax >= 26 && ay == 42) || (ax == 30 && ay <= 41 && ay >= 38) ||
441  (ax <= 35 && ax >= 31 && ay == 37) || (ax == 35 && ay == 36));
442 }

Referenced by isOuterRing().

◆ ix() [1/2]

int EEDetId::ix ( ) const
inline

Gets the crystal x-index.

See also
EEDetId(int, int, int, int) for x-index definition
Returns
x-index

Definition at line 77 of file EEDetId.h.

77 { return (id_ >> 7) & 0x7F; }

References DetId::id_.

Referenced by FWTGeoRecoGeometryESProducer::addEcalCaloGeometry(), JetToDigiDump::analyze(), DQMSourceEleCalib::analyze(), DQMSourcePi0::analyze(), EcalSimple2007H4TBAnalyzer::analyze(), EcalEndcapSimHitsValidation::analyze(), EcalEndcapDigisValidation::analyze(), EcalEndcapRecHitsValidation::analyze(), EcalRecHitsValidation::analyze(), EcalDigisValidation::analyze(), EcalCosmicsHists::analyze(), EcalMixingModuleValidation::analyze(), EcnaAnalyzer::analyze(), EcalSelectiveReadoutValidation::analyzeEE(), EcalPedestalHistory::beginRun(), EnergyResolutionVsLumi::calcLightCollectionEfficiencyWeighted(), HLTEcalResonanceFilter::calcShowerShape(), HLTRegionalEcalResonanceFilter::calcShowerShape(), EcalTrigTowerConstituentsMap::changeEEDetIdQuadrantAndZ(), EcalBoundaryInfoCalculator< EBDetId >::checkRecHitHasDeadNeighbour(), EcalBoundaryInfoCalculator< EBDetId >::checkRecHitHasInvalidNeighbour(), PFClusterEMEnergyCorrector::correctEnergies(), popcon::EcalChannelStatusHandler::cosmicsAnalysis(), ecaldqm::crystalID(), ECALpedestalPCLHarvester::dqmPlots(), popcon::EcalLaserHandler::dumpEndcapPayload(), InvRingCalib::duringLoop(), ZeeCalibration::duringLoop(), EEDetId(), PhiSymmetryCalibration_step2::endJob(), PhiSymmetryCalibration_step2_SM::endJob(), ElectronCalibrationUniv::endJob(), EcalEleCalibLooper::endOfLoop(), ZeeCalibration::endOfLoop(), DQMSourceEleCalib::fillAroundEndcap(), AlCaElectronsTest::fillAroundEndcap(), MatrixFillMap::fillEEMap(), EcalBadCalibFilter::filter(), ecaldqm::binning::findBinCrystal_(), ecaldqm::binning::findBinSuperCrystal_(), TrackDetMatchInfo::findMaxDeposition(), EcalEndcapGeometry::getClosestCell(), EcalBarrelGeometry::getClosestEndcapCells(), EcalElectronicsMapping::getDCCandSC(), EcalElectronicsMapping::getEcalScDetId(), EcalElectronicsMapping::getLMNumber(), EcalClusterToolsT< noZS >::getNormedIX(), SCEnergyCorrectorSemiParm::getRegDataECALV1(), EGRegressionModifierV3::getSeedCrysCoord(), hashedIndex(), ecalpyutils::hashedIndexToXY(), DetIdInfo::info(), fireworks::info(), EcalRingCalibrationTools::initializeFromGeometry(), EcalEndcapGeometry::initializeParms(), iPhiOuterRing(), iquadrant(), isc(), ecaldqm::isForward(), isNextToRingBoundary(), isOuterRing(), ixQuadrantOne(), popcon::EcalChannelStatusHandler::laserAnalysis(), egammaTools::localEcalClusterCoordsEE(), EcalDisplaysByEvent::makeHistos(), popcon::EcalChannelStatusHandler::nBadLaserModules(), TrackDetMatchInfo::nXnEnergy(), offsetBy(), EEDetIdSorter::operator()(), popcon::EcalChannelStatusHandler::pedAnalysis(), ecaldqm::phi(), EcalEndcapGeometry::present(), EcalLaserCondTools::FileReader::readPs(), EcalRecHitWorkerRecover::run(), sc(), EcalDeadCellTriggerPrimitiveFilter::setEvtRecHitstatus(), EcalGeomPhiSymHelper::setup(), switchZSide(), unhashIndex(), EcalSimHitsValidProducer::update(), CaloGenericDetId::validDetId(), EcalTrigTowerConstituentsMap::wrapEEDetId(), xuti::writeCell(), ECALRecHitAnalyzer::WriteECALRecHits(), Pi0CalibXMLwriter::writeLine(), and calibXMLwriter::writeLine().

◆ ix() [2/2]

int EEDetId::ix ( int  iSC,
int  iCrys 
) const
private

Definition at line 78 of file EEDetId.cc.

78  {
79  /*
80  * ix() return individual crystal x-coordinate
81  *
82  * Author : B W Kennedy
83  * Version : 1.00
84  * Created : 21 December 2005
85  * Last Mod : 31 January 2006
86  *
87  * Input : iSC, iCrys - Supercrystal and crystal ids
88  */
89 
90  int nSCinQuadrant = QuadColLimits[nCols];
91 
92  if (iSC > 4 * nSCinQuadrant || iSC < 1) {
93  throw new std::exception();
94  }
95 
96  // Map SC number into (x>0,y>0) quadrant.
97  int iSCmap, iqx, iq;
98  if (iSC > 3 * nSCinQuadrant) {
99  iSCmap = iSC - 3 * nSCinQuadrant;
100  iqx = 1;
101  iq = 4;
102  } else if (iSC > 2 * nSCinQuadrant) {
103  iSCmap = iSC - 2 * nSCinQuadrant;
104  iqx = -1;
105  iq = 3;
106  } else if (iSC > nSCinQuadrant) {
107  iSCmap = iSC - nSCinQuadrant;
108  iqx = -1;
109  iq = 2;
110  } else {
111  iSCmap = iSC;
112  iqx = 1;
113  iq = 1;
114  }
115 
116  // Decide which column the SC is in
117  int iCol = 0;
118  while (iSCmap > QuadColLimits[iCol++])
119  ;
120  iCol--;
121 
122  int ixCrys = -1;
123  if (iq == 1 || iq == 3)
124  ixCrys = iqx * (5 * (iCol - 1) + (int)(iCrys + 4) / 5);
125  else if (iq == 2 || iq == 4)
126  ixCrys = iqx * (5 * (iCol - 1) + (iCrys - 1) % 5 + 1);
127 
128  // returning a value from 1 to 100
129 
130  return ixCrys;
131 }

References cppFunctionSkipper::exception, nCols, and QuadColLimits.

◆ ixQuadrantOne()

int EEDetId::ixQuadrantOne ( ) const
private

Definition at line 186 of file EEDetId.cc.

186  {
187  int iQuadrant = iquadrant();
188  if (iQuadrant == 1 || iQuadrant == 4)
189  return (ix() - 50);
190  else if (iQuadrant == 2 || iQuadrant == 3)
191  return (51 - ix());
192  //Should never be reached
193  return -1;
194 }

References iquadrant(), and ix().

Referenced by ic().

◆ iy() [1/2]

int EEDetId::iy ( ) const
inline

Get the crystal y-index

See also
EEDetId(int, int, int, int) for y-index definition.
Returns
y-index

Definition at line 83 of file EEDetId.h.

83 { return id_ & 0x7F; }

References DetId::id_.

Referenced by JetToDigiDump::analyze(), DQMSourceEleCalib::analyze(), DQMSourcePi0::analyze(), EcalSimple2007H4TBAnalyzer::analyze(), EcalEndcapSimHitsValidation::analyze(), EcalEndcapDigisValidation::analyze(), EcalEndcapRecHitsValidation::analyze(), EcalRecHitsValidation::analyze(), EcalDigisValidation::analyze(), EcalCosmicsHists::analyze(), EcalMixingModuleValidation::analyze(), EcalPedestalHistory::beginRun(), EnergyResolutionVsLumi::calcLightCollectionEfficiencyWeighted(), HLTEcalResonanceFilter::calcShowerShape(), HLTRegionalEcalResonanceFilter::calcShowerShape(), EcalTrigTowerConstituentsMap::changeEEDetIdQuadrantAndZ(), EcalBoundaryInfoCalculator< EBDetId >::checkRecHitHasDeadNeighbour(), EcalBoundaryInfoCalculator< EBDetId >::checkRecHitHasInvalidNeighbour(), popcon::EcalChannelStatusHandler::cosmicsAnalysis(), ecaldqm::crystalID(), ECALpedestalPCLHarvester::dqmPlots(), popcon::EcalLaserHandler::dumpEndcapPayload(), InvRingCalib::duringLoop(), ZeeCalibration::duringLoop(), EEDetId(), PhiSymmetryCalibration_step2::endJob(), PhiSymmetryCalibration_step2_SM::endJob(), ElectronCalibrationUniv::endJob(), EcalEleCalibLooper::endOfLoop(), ZeeCalibration::endOfLoop(), DQMSourceEleCalib::fillAroundEndcap(), AlCaElectronsTest::fillAroundEndcap(), MatrixFillMap::fillEEMap(), EcalBadCalibFilter::filter(), ecaldqm::binning::findBinCrystal_(), ecaldqm::binning::findBinSuperCrystal_(), TrackDetMatchInfo::findMaxDeposition(), EcalEndcapGeometry::getClosestCell(), EcalBarrelGeometry::getClosestEndcapCells(), EcalElectronicsMapping::getEcalScDetId(), EcalClusterToolsT< noZS >::getNormedIY(), hashedIndex(), ecalpyutils::hashedIndexToXY(), DetIdInfo::info(), fireworks::info(), EcalRingCalibrationTools::initializeFromGeometry(), EcalEndcapGeometry::initializeParms(), iPhiOuterRing(), iquadrant(), isc(), ecaldqm::isForward(), isNextToRingBoundary(), isOuterRing(), iyQuadrantOne(), popcon::EcalChannelStatusHandler::laserAnalysis(), egammaTools::localEcalClusterCoordsEE(), EcalDisplaysByEvent::makeHistos(), TrackDetMatchInfo::nXnEnergy(), offsetBy(), EEDetIdSorter::operator()(), popcon::EcalChannelStatusHandler::pedAnalysis(), ecaldqm::phi(), EcalEndcapGeometry::present(), EcalLaserCondTools::FileReader::readPs(), EcalRecHitWorkerRecover::run(), sc(), EcalDeadCellTriggerPrimitiveFilter::setEvtRecHitstatus(), EcalGeomPhiSymHelper::setup(), switchZSide(), unhashIndex(), EcalSimHitsValidProducer::update(), CaloGenericDetId::validDetId(), EcalTrigTowerConstituentsMap::wrapEEDetId(), xuti::writeCell(), ECALRecHitAnalyzer::WriteECALRecHits(), Pi0CalibXMLwriter::writeLine(), and calibXMLwriter::writeLine().

◆ iy() [2/2]

int EEDetId::iy ( int  iSC,
int  iCrys 
) const
private

Definition at line 133 of file EEDetId.cc.

133  {
134  /*
135  * iy() return individual crystal y-coordinate
136  *
137  * Author : B W Kennedy
138  * Version : 1.00
139  * Created : 21 December 2005
140  * Last Mod : 31 January 2006
141  *
142  * Input : iSC, iCrys - Supercrystal and crystal ids
143  */
144 
145  int nSCinQuadrant = QuadColLimits[nCols];
146  if (iSC > 4 * nSCinQuadrant || iSC < 1) {
147  throw new std::exception();
148  }
149 
150  // Map SC number into (x>0,y>0) quadrant
151  int iSCmap, iqy, iq;
152  if (iSC > 3 * nSCinQuadrant) {
153  iSCmap = iSC - 3 * nSCinQuadrant;
154  iqy = -1;
155  iq = 4;
156  } else if (iSC > 2 * nSCinQuadrant) {
157  iSCmap = iSC - 2 * nSCinQuadrant;
158  iqy = -1;
159  iq = 3;
160  } else if (iSC > nSCinQuadrant) {
161  iSCmap = iSC - nSCinQuadrant;
162  iqy = 1;
163  iq = 2;
164  } else {
165  iSCmap = iSC;
166  iqy = 1;
167  iq = 1;
168  }
169 
170  // Decide which column the SC is in
171  int iCol = 0;
172  while (iSCmap > QuadColLimits[iCol++])
173  ;
174  iCol--;
175 
176  int iSCy = iSCmap - QuadColLimits[iCol - 1] + iYoffset[iCol];
177 
178  int iyCrys = -1;
179  if (iq == 1 || iq == 3)
180  iyCrys = iqy * (5 * (iSCy - 1) + (iCrys - 1) % 5 + 1);
181  else if (iq == 2 || iq == 4)
182  iyCrys = iqy * (5 * (iSCy - 1) + (int)(iCrys + 4) / 5);
183  return iyCrys;
184 }

References cppFunctionSkipper::exception, iYoffset, nCols, and QuadColLimits.

◆ iyQuadrantOne()

int EEDetId::iyQuadrantOne ( ) const
private

Definition at line 196 of file EEDetId.cc.

196  {
197  int iQuadrant = iquadrant();
198  if (iQuadrant == 1 || iQuadrant == 2)
199  return (iy() - 50);
200  else if (iQuadrant == 3 || iQuadrant == 4)
201  return 51 - iy();
202  //Should never be reached
203  return -1;
204 }

References iquadrant(), and iy().

Referenced by ic().

◆ offsetBy() [1/2]

DetId EEDetId::offsetBy ( const DetId  startId,
int  nrStepsX,
int  nrStepsY 
)
static

following are static member functions of the above two functions which take and return a DetId, returns DetId(0) if invalid

Definition at line 411 of file EEDetId.cc.

411  {
412  if (startId.det() == DetId::Ecal && startId.subdetId() == EcalEndcap) {
413  EEDetId eeStartId(startId);
414  return eeStartId.offsetBy(nrStepsX, nrStepsY).rawId();
415  } else {
416  return DetId(0);
417  }
418 }

References DetId::det(), DetId::DetId(), DetId::Ecal, EcalEndcap, offsetBy(), DetId::rawId(), and DetId::subdetId().

◆ offsetBy() [2/2]

EEDetId EEDetId::offsetBy ( int  nrStepsX,
int  nrStepsY 
) const

returns a new EEDetId offset by nrStepsX and nrStepsY (can be negative), returns EEDetId(0) if invalid

Definition at line 391 of file EEDetId.cc.

391  {
392  int newX = ix() + nrStepsX;
393  int newY = iy() + nrStepsY;
394 
395  if (validDetId(newX, newY, zside())) {
396  return EEDetId(newX, newY, zside());
397  } else {
398  return EEDetId(0);
399  }
400 }

References EEDetId(), ix(), iy(), validDetId(), and zside().

Referenced by EcalTools::deadNeighbour(), EcalCleaningAlgo::neighbours(), offsetBy(), and EcalTools::recHitE().

◆ operator=()

EEDetId& EEDetId::operator= ( const DetId id)
inline

Assignment operator

Parameters
idsource det id

Definition at line 58 of file EEDetId.h.

58  {
59  id_ = id.rawId();
60  return *this;
61  }

References DetId::id_.

◆ positiveZ()

bool EEDetId::positiveZ ( ) const
inline

Checks if crystal is in EE+

Returns
true for EE+, false for EE-

Definition at line 174 of file EEDetId.h.

174 { return id_ & 0x4000; }

References DetId::id_.

Referenced by ecaldqm::crystalID(), and hashedIndex().

◆ sc()

EcalScDetId EEDetId::sc ( ) const
inline

Gets the DetId of the supercrystal the crystal belong to.

Returns
the supercrystal det id
Exceptions
cms::Exceptionif the crystal det id is invalid

Definition at line 89 of file EEDetId.h.

89  {
90  const int scEdge = 5;
91  return EcalScDetId(1 + (ix() - 1) / scEdge, 1 + (iy() - 1) / scEdge, zside());
92  }

References ix(), iy(), and zside().

Referenced by ecaldqm::MESet::maskMatches(), ecaldqm::SummaryClient::producePlots(), and ecaldqm::SelectiveReadoutTask::runOnDigis().

◆ slowValidDetId()

bool EEDetId::slowValidDetId ( int  crystal_ix,
int  crystal_iy 
)
static

Definition at line 444 of file EEDetId.cc.

444  {
445  return // negative logic!
446  !((crystal_ix >= 1 && crystal_ix <= 3 && (crystal_iy <= 40 || crystal_iy > 60)) ||
447  (crystal_ix >= 4 && crystal_ix <= 5 && (crystal_iy <= 35 || crystal_iy > 65)) ||
448  (crystal_ix >= 6 && crystal_ix <= 8 && (crystal_iy <= 25 || crystal_iy > 75)) ||
449  (crystal_ix >= 9 && crystal_ix <= 13 && (crystal_iy <= 20 || crystal_iy > 80)) ||
450  (crystal_ix >= 14 && crystal_ix <= 15 && (crystal_iy <= 15 || crystal_iy > 85)) ||
451  (crystal_ix >= 16 && crystal_ix <= 20 && (crystal_iy <= 13 || crystal_iy > 87)) ||
452  (crystal_ix >= 21 && crystal_ix <= 25 && (crystal_iy <= 8 || crystal_iy > 92)) ||
453  (crystal_ix >= 26 && crystal_ix <= 35 && (crystal_iy <= 5 || crystal_iy > 95)) ||
454  (crystal_ix >= 36 && crystal_ix <= 39 && (crystal_iy <= 3 || crystal_iy > 97)) ||
455  (crystal_ix >= 98 && crystal_ix <= 100 && (crystal_iy <= 40 || crystal_iy > 60)) ||
456  (crystal_ix >= 96 && crystal_ix <= 97 && (crystal_iy <= 35 || crystal_iy > 65)) ||
457  (crystal_ix >= 93 && crystal_ix <= 95 && (crystal_iy <= 25 || crystal_iy > 75)) ||
458  (crystal_ix >= 88 && crystal_ix <= 92 && (crystal_iy <= 20 || crystal_iy > 80)) ||
459  (crystal_ix >= 86 && crystal_ix <= 87 && (crystal_iy <= 15 || crystal_iy > 85)) ||
460  (crystal_ix >= 81 && crystal_ix <= 85 && (crystal_iy <= 13 || crystal_iy > 87)) ||
461  (crystal_ix >= 76 && crystal_ix <= 80 && (crystal_iy <= 8 || crystal_iy > 92)) ||
462  (crystal_ix >= 66 && crystal_ix <= 75 && (crystal_iy <= 5 || crystal_iy > 95)) ||
463  (crystal_ix >= 62 && crystal_ix <= 65 && (crystal_iy <= 3 || crystal_iy > 97)) ||
464  ((crystal_ix == 40 || crystal_ix == 61) &&
465  ((crystal_iy >= 46 && crystal_iy <= 55) || crystal_iy <= 3 || crystal_iy > 97)) ||
466  ((crystal_ix == 41 || crystal_ix == 60) && crystal_iy >= 44 && crystal_iy <= 57) ||
467  ((crystal_ix == 42 || crystal_ix == 59) && crystal_iy >= 43 && crystal_iy <= 58) ||
468  ((crystal_ix == 43 || crystal_ix == 58) && crystal_iy >= 42 && crystal_iy <= 59) ||
469  ((crystal_ix == 44 || crystal_ix == 45 || crystal_ix == 57 || crystal_ix == 56) && crystal_iy >= 41 &&
470  crystal_iy <= 60) ||
471  (crystal_ix >= 46 && crystal_ix <= 55 && crystal_iy >= 40 && crystal_iy <= 61));
472 }

Referenced by validDetId().

◆ subdet()

static EcalSubdetector EEDetId::subdet ( )
inlinestatic

Gets the subdetector

Returns
subdetectot ID, that is EcalEndcap

Definition at line 66 of file EEDetId.h.

66 { return EcalEndcap; }

References EcalEndcap.

◆ switchZSide() [1/2]

EEDetId EEDetId::switchZSide ( ) const

returns a new EEDetId swapped (same iX, iY) to the other endcap, returns EEDetId(0) if invalid (shouldnt happen)

Definition at line 402 of file EEDetId.cc.

402  {
403  int newZSide = -1 * zside();
404  if (validDetId(ix(), iy(), newZSide)) {
405  return EEDetId(ix(), iy(), newZSide);
406  } else {
407  return EEDetId(0);
408  }
409 }

References EEDetId(), ix(), iy(), validDetId(), and zside().

Referenced by ecaldqm::TimingClient::producePlots(), and switchZSide().

◆ switchZSide() [2/2]

DetId EEDetId::switchZSide ( const DetId  startId)
static

Definition at line 420 of file EEDetId.cc.

420  {
421  if (startId.det() == DetId::Ecal && startId.subdetId() == EcalEndcap) {
422  EEDetId eeStartId(startId);
423  return eeStartId.switchZSide().rawId();
424  } else {
425  return DetId(0);
426  }
427 }

References DetId::det(), DetId::DetId(), DetId::Ecal, EcalEndcap, DetId::rawId(), DetId::subdetId(), and switchZSide().

◆ unhashIndex()

EEDetId EEDetId::unhashIndex ( int  hi)
static

Gets a DetId from a compact index for arrays. Converse of hashedIndex() method.

Parameters
hidense/hashed index
Returns
det id

Definition at line 65 of file EEDetId.cc.

65  {
66  if (validHashIndex(hi)) {
67  const int iz(hi < kEEhalf ? -1 : 1);
68  const uint32_t di(hi % kEEhalf);
69  const int ii((std::upper_bound(kdi, kdi + (2 * IY_MAX), di) - kdi) - 1);
70  const int iy(1 + ii / 2);
71  const int ix(kxf[ii] + di - kdi[ii]);
72  return EEDetId(ix, iy, iz);
73  } else {
74  return EEDetId();
75  }
76 }

References EEDetId(), cuy::ii, ix(), iy(), IY_MAX, kdi, kEEhalf, kxf, pfDeepBoostedJetPreprocessParams_cfi::upper_bound, and validHashIndex().

Referenced by EcalTPGParamBuilder::analyze(), EcalPedestalHistory::beginRun(), detIdFromDenseIndex(), popcon::EcalLaserHandler::dumpEndcapPayload(), EcalTPGLinearizationConstXMLTranslator::dumpXML(), EcalPedestalsXMLTranslator::dumpXML(), EcalPulseShapesXMLTranslator::dumpXML(), EcalChannelStatusXMLTranslator::dumpXML(), EcalLinearCorrectionsXMLTranslator::dumpXML(), EcalGainRatiosXMLTranslator::dumpXML(), EcalLaserAPDPNRatiosXMLTranslator::dumpXML(), EcalPulseSymmCovariancesXMLTranslator::dumpXML(), EcalWeightGroupXMLTranslator::dumpXML(), EcalFloatCondObjectContainerXMLTranslator::dumpXML(), ecal::raw::ElectronicsMappingGPU::ElectronicsMappingGPU(), EcalElectronicsMappingBuilder::FillFromDatabase(), EcalTrivialConditionRetriever::getChannelStatusFromConfiguration(), popcon::EcalLaser_weekly_Handler::getNewObjects(), EcalTrivialConditionRetriever::getTrgChannelStatusFromConfiguration(), ecalpyutils::hashedIndexToXY(), CalorimetryManager::loadFromEcalEndcap(), main(), popcon::EcalLaserHandler::notifyProblems(), printStatusRecords(), StoreEcalCondition::readEcalChannelStatusFromFile(), ecaldqm::StatusManager::readFromObj(), ecaldqm::StatusManager::readFromStream(), popcon::EcalPedestalsHandler::readPedestalTimestamp(), popcon::EcalPedestalsHandler::readPedestalTree(), EcalFloatCondObjectContainerXMLTranslator::readXML(), popcon::EcalPFRecHitThresholdsHandler::readXML(), popcon::EcalIntercalibHandler::readXML(), and ecaldqm::StatusManager::writeToObj().

◆ validDenseIndex()

static bool EEDetId::validDenseIndex ( uint32_t  din)
inlinestatic

Checks validity of a dense/hashed index

Parameters
dindense/hashed index as returned by hashedIndex() or denseIndex() method
Returns
true if index is valid, false otherwise

Definition at line 213 of file EEDetId.h.

213 { return validHashIndex(din); }

References cropTnPTrees::din, and validHashIndex().

Referenced by EcalTPSkimmer::produce(), and ecaldqm::StatusManager::readFromStream().

◆ validDetId()

static bool EEDetId::validDetId ( int  crystal_ix,
int  crystal_iy,
int  iz 
)
inlinestatic

Checks validity of a crystal (x,y.z) index triplet.

Parameters
crystal_ixcrystal x-index
crystal_iycrystal y-index
izcrystal z-index
See also
EEDetId(int, int, int, int) for index definition
Returns
true if valid, false otherwise

Definition at line 248 of file EEDetId.h.

248  {
249  return crystal_ix >= IX_MIN && crystal_ix <= IX_MAX && crystal_iy >= IY_MIN && crystal_iy <= IY_MAX &&
250  std::abs(iz) == 1 && (fastValidDetId(crystal_ix, crystal_iy) || slowValidDetId(crystal_ix, crystal_iy));
251  }

References funct::abs(), fastValidDetId(), IX_MIN, IY_MAX, IY_MIN, and slowValidDetId().

Referenced by EcalPFRecHitThresholdsMaker::analyze(), EcalGetLaserData::analyze(), EcalCosmicsHists::analyze(), EcalPedestalHistory::beginRun(), EnergyResolutionVsLumi::calcmuTot(), EcalBoundaryInfoCalculator< EBDetId >::checkRecHitHasDeadNeighbour(), EcalBoundaryInfoCalculator< EBDetId >::checkRecHitHasInvalidNeighbour(), popcon::EcalChannelStatusHandler::cosmicsAnalysis(), EcalLaserCondTools::dbToAscii(), EcalEndcapHardcodedTopology::decrementIx(), EcalEndcapTopology::decrementIx(), EcalEndcapHardcodedTopology::decrementIy(), EcalEndcapTopology::decrementIy(), EcalTPGCrystalStatusXMLTranslator::dumpXML(), EcalEleCalibLooper::EcalEleCalibLooper(), EEDetId(), EcalEleCalibLooper::EERegionDefinition(), InvRingCalib::EERingDef(), ZeeCalibration::endOfJob(), EcalSimHitsValidProducer::energyInEEMatrix(), EcalEndcapSimHitsValidation::energyInMatrixEE(), spr::extraIds(), PhiSymmetryCalibration_step2::fillConstantsHistos(), PhiSymmetryCalibration_step2_SM::fillConstantsHistos(), MatrixFillMap::fillEEMap(), fillEEMap_DiffIOV(), fillEEMap_SingleIOV(), EcalSimHitsValidProducer::fillEEMatrix(), EcalEndcapSimHitsValidation::fillEEMatrix(), EcalRecHitsValidation::findEndcapMatrix(), EcalTestDevDB::generateEcalLaserAlphas(), EcalTestDevDB::generateEcalLaserAPDPNRatios(), EcalTestDevDB::generateEcalLaserAPDPNRatiosRef(), EcalTestDevDB::generateEcalLinearCorrections(), MiscalibReaderFromXMLEcalEndcap::getCellFromAttributes(), EcalEndcapGeometry::getCells(), EcalTrivialConditionRetriever::getChannelStatusFromConfiguration(), EcalDeadCellTriggerPrimitiveFilter::getChannelStatusMaps(), EcalDeadCellDeltaRFilter::getChannelStatusMaps(), EcalEndcapGeometry::getClosestCell(), EcalBarrelGeometry::getClosestEndcapCells(), EcalElectronicsMapping::getDCCandSC(), EcalRingCalibrationTools::getDetIdsInECAL(), EcalEndcapSimHitsValidation::getIdsAroundMax(), EcalTrivialConditionRetriever::getIntercalibConstantsFromConfiguration(), popcon::EcalPulseShapesHandler::getNewObjects(), popcon::EcalPulseSymmCovariancesHandler::getNewObjects(), popcon::EcalPedestalsHandler::getNewObjectsH2(), popcon::EcalPedestalsHandler::getNewObjectsP5(), EcalTrivialConditionRetriever::getPFRecHitThresholdsFromConfiguration(), EcalTrivialConditionRetriever::getTrgChannelStatusFromConfiguration(), EcalEndcapNumberingScheme::getUnitID(), EcalEndcapGeometry::gId(), ecalpyutils::hashedIndexEE(), EcalEndcapHardcodedTopology::incrementIx(), EcalEndcapTopology::incrementIx(), EcalEndcapHardcodedTopology::incrementIy(), EcalEndcapTopology::incrementIy(), isNextToRingBoundary(), ecaldqm::binning::isValidIdBin(), popcon::EcalChannelStatusHandler::laserAnalysis(), popcon::EcalChannelStatusHandler::laserMasking(), ecaldqm::MESet::maskMatches(), popcon::EcalChannelStatusHandler::nBadLaserModules(), offsetBy(), popcon::EcalChannelStatusHandler::pedAnalysis(), popcon::EcalChannelStatusHandler::pedMasking(), popcon::EcalChannelStatusHandler::pedOnlineMasking(), popcon::EcalChannelStatusHandler::physicsMasking(), EcalEndcapGeometry::present(), CaloMiscalibMapEcal::print(), EcalRecHitProducer::produce(), EcalDetIdToBeRecoveredProducer::produce(), EcalTrivialConditionRetriever::produceEcalChannelStatus(), EcalTrivialConditionRetriever::produceEcalDQMChannelStatus(), EcalTrivialConditionRetriever::produceEcalGainRatios(), EcalTrivialConditionRetriever::produceEcalIntercalibConstants(), EcalTrivialConditionRetriever::produceEcalIntercalibConstantsMC(), EcalTrivialConditionRetriever::produceEcalIntercalibErrors(), EcalTrivialConditionRetriever::produceEcalLaserAlphas(), EcalTrivialConditionRetriever::produceEcalLaserAPDPNRatios(), EcalTrivialConditionRetriever::produceEcalLaserAPDPNRatiosRef(), EcalTrivialConditionRetriever::produceEcalLinearCorrections(), EcalTrivialConditionRetriever::produceEcalPedestals(), EcalTrivialConditionRetriever::produceEcalPFRecHitThresholds(), EcalTrivialConditionRetriever::produceEcalTimeCalibConstants(), EcalTrivialConditionRetriever::produceEcalTimeCalibErrors(), popcon::EcalTPGBadXTHandler::produceEcalTrgChannelStatus(), EcalTrivialConditionRetriever::produceEcalTrgChannelStatus(), EcalTrivialConditionRetriever::produceEcalWeightXtalGroups(), StoreEcalCondition::readEcalChannelStatusFromFile(), StoreEcalCondition::readEcalGainRatiosFromFile(), StoreEcalCondition::readEcalIntercalibConstantsFromFile(), StoreEcalCondition::readEcalIntercalibConstantsMCFromFile(), StoreEcalCondition::readEcalPFRecHitThresholdsFromFile(), popcon::EcalPedestalsHandler::readPedestal2017(), popcon::EcalPedestalsHandler::readPedestalFile(), popcon::EcalPedestalsHandler::readPedestalMC(), EcalLaserCondTools::FileReader::readPs(), EcalRecHitWorkerRecover::run(), EcalSelectiveReadout::runSelectiveReadout0(), ecaldqm::scConstituents(), EcalNextToDeadChannelESProducer::setupNextToDeadChannels(), EcalCondObjectContainer< Values >::summary(), switchZSide(), and CaloGenericDetId::validDetId().

◆ validHashIndex()

static bool EEDetId::validHashIndex ( int  i)
inlinestatic

◆ zside()

int EEDetId::zside ( ) const
inline

Gets the z-side of the crystal (1/-1)

Returns
-1 for EE-, +1 for EE+

Definition at line 71 of file EEDetId.h.

71 { return (id_ & 0x4000) ? (1) : (-1); }

References DetId::id_.

Referenced by FWTGeoRecoGeometryESProducer::addEcalCaloGeometry(), EcalSimple2007H4TBAnalyzer::analyze(), EcalEndcapSimHitsValidation::analyze(), EcalPreshowerRecHitsValidation::analyze(), EcalEndcapDigisValidation::analyze(), EcalEndcapRecHitsValidation::analyze(), EcalRecHitsValidation::analyze(), EcalDigisValidation::analyze(), EcalCosmicsHists::analyze(), EcalMixingModuleValidation::analyze(), EcalPedestalHistory::beginRun(), EcalBoundaryInfoCalculator< EBDetId >::checkRecHitHasDeadNeighbour(), EcalBoundaryInfoCalculator< EBDetId >::checkRecHitHasInvalidNeighbour(), popcon::EcalChannelStatusHandler::cosmicsAnalysis(), ecaldqm::crystalID(), ECALpedestalPCLHarvester::dqmPlots(), popcon::EcalLaserHandler::dumpEndcapPayload(), InvRingCalib::duringLoop(), ZeeCalibration::duringLoop(), InvRingCalib::EERegId(), InvRingCalib::EERegionDef(), InvRingCalib::EERingDef(), PhiSymmetryCalibration_step2::endJob(), PhiSymmetryCalibration_step2_SM::endJob(), ElectronCalibrationUniv::endJob(), EcalEleCalibLooper::endOfLoop(), ZeeCalibration::endOfLoop(), MatrixFillMap::fillEEMap(), ECALRecHitAnalyzer::FillGeometry(), EcalBadCalibFilter::filter(), HLTEcalPhiSymFilter::filter(), ecaldqm::binning::findBinCrystal_(), ecaldqm::binning::findBinSuperCrystal_(), TrackDetMatchInfo::findMaxDeposition(), EcalEndcapGeometry::getClosestCell(), EcalElectronicsMapping::getEcalScDetId(), getEndCapErrorSummary(), ecalpyutils::hashedIndexToXY(), EcalRingCalibrationTools::initializeFromGeometry(), isNextToRingBoundary(), popcon::EcalChannelStatusHandler::laserAnalysis(), TrackDetMatchInfo::nXnEnergy(), offsetBy(), EEDetIdSorter::operator()(), popcon::EcalChannelStatusHandler::pedAnalysis(), EcalEndcapGeometry::present(), ecaldqm::TimingClient::producePlots(), EcalLaserCondTools::FileReader::readPs(), EcalRecHitWorkerRecover::run(), sc(), EcalDeadCellTriggerPrimitiveFilter::setEvtRecHitstatus(), EcalGeomPhiSymHelper::setup(), switchZSide(), EcalTrigTowerConstituentsMap::towerOf(), EcalSimHitsValidProducer::update(), CaloGenericDetId::validDetId(), xuti::writeCell(), ECALRecHitAnalyzer::WriteECALRecHits(), Pi0CalibXMLwriter::writeLine(), and calibXMLwriter::writeLine().

Member Data Documentation

◆ ICR_MAX

const int EEDetId::ICR_MAX = 25
static

Upper bound of crystal index within a supercrystal

Definition at line 320 of file EEDetId.h.

◆ ICR_MIN

const int EEDetId::ICR_MIN = 1
static

Lower bound of crystal index within a supercrystal

Definition at line 310 of file EEDetId.h.

◆ ISC_MAX

const int EEDetId::ISC_MAX = 316
static

Upper bound of supercystal index defined in isc()

Beware it differs from the number of supercrystals in one endcap, which is 312, because the numbering is not dense.

Definition at line 316 of file EEDetId.h.

Referenced by isc().

◆ ISC_MIN

const int EEDetId::ISC_MIN = 1
static

Lower bound of supercystal index as defined in isc()

Definition at line 306 of file EEDetId.h.

◆ IX_MAX

const int EEDetId::IX_MAX = 100
static

Upper bound of EE crystal y-index

Definition at line 298 of file EEDetId.h.

Referenced by EcalPFRecHitThresholdsMaker::analyze(), EcalGetLaserData::analyze(), EnergyResolutionVsLumi::calcLightCollectionEfficiencyWeighted(), EnergyResolutionVsLumi::calcmuTot(), EcalLaserCondTools::dbToAscii(), EcalTPGCrystalStatusXMLTranslator::dumpXML(), ZeeCalibration::endOfJob(), EcalTestDevDB::generateEcalLaserAlphas(), EcalTestDevDB::generateEcalLaserAPDPNRatios(), EcalTestDevDB::generateEcalLaserAPDPNRatiosRef(), EcalTestDevDB::generateEcalLinearCorrections(), EcalTrivialConditionRetriever::getChannelStatusFromConfiguration(), EcalRingCalibrationTools::getDetIdsInECAL(), EcalRingCalibrationTools::getDetIdsInRing(), EcalTrivialConditionRetriever::getIntercalibConstantsFromConfiguration(), popcon::EcalPulseShapesHandler::getNewObjects(), popcon::EcalPulseSymmCovariancesHandler::getNewObjects(), popcon::EcalPedestalsHandler::getNewObjectsP5(), EcalTrivialConditionRetriever::getTrgChannelStatusFromConfiguration(), idOuterRing(), EcalRingCalibrationTools::initializeFromGeometry(), iPhiOuterRing(), isOuterRing(), CaloMiscalibMapEcal::prefillMap(), CaloMiscalibMapEcal::print(), EcalTrivialConditionRetriever::produceEcalChannelStatus(), EcalTrivialConditionRetriever::produceEcalDQMChannelStatus(), EcalTrivialConditionRetriever::produceEcalGainRatios(), EcalTrivialConditionRetriever::produceEcalIntercalibConstants(), EcalTrivialConditionRetriever::produceEcalIntercalibConstantsMC(), EcalTrivialConditionRetriever::produceEcalIntercalibErrors(), EcalTrivialConditionRetriever::produceEcalLaserAlphas(), EcalTrivialConditionRetriever::produceEcalLaserAPDPNRatios(), EcalTrivialConditionRetriever::produceEcalLaserAPDPNRatiosRef(), EcalTrivialConditionRetriever::produceEcalLinearCorrections(), EcalTrivialConditionRetriever::produceEcalPedestals(), EcalTrivialConditionRetriever::produceEcalPFRecHitThresholds(), EcalTrivialConditionRetriever::produceEcalTimeCalibConstants(), EcalTrivialConditionRetriever::produceEcalTimeCalibErrors(), popcon::EcalTPGBadXTHandler::produceEcalTrgChannelStatus(), EcalTrivialConditionRetriever::produceEcalTrgChannelStatus(), EcalTrivialConditionRetriever::produceEcalWeightXtalGroups(), StoreEcalCondition::readEcalChannelStatusFromFile(), StoreEcalCondition::readEcalGainRatiosFromFile(), StoreEcalCondition::readEcalIntercalibConstantsFromFile(), StoreEcalCondition::readEcalIntercalibConstantsMCFromFile(), popcon::EcalPedestalsHandler::readPedestal2017(), popcon::EcalPedestalsHandler::readPedestalFile(), popcon::EcalPedestalsHandler::readPedestalMC(), EcalNextToDeadChannelESProducer::setupNextToDeadChannels(), and EcalCondObjectContainer< Values >::summary().

◆ IX_MIN

const int EEDetId::IX_MIN = 1
static

Lower bound of EE crystal x-index

Definition at line 290 of file EEDetId.h.

Referenced by EcalPFRecHitThresholdsMaker::analyze(), EcalGetLaserData::analyze(), EnergyResolutionVsLumi::calcmuTot(), EcalLaserCondTools::dbToAscii(), ZeeCalibration::endOfJob(), EcalTestDevDB::generateEcalLaserAlphas(), EcalTestDevDB::generateEcalLaserAPDPNRatios(), EcalTestDevDB::generateEcalLaserAPDPNRatiosRef(), EcalTestDevDB::generateEcalLinearCorrections(), EcalTrivialConditionRetriever::getChannelStatusFromConfiguration(), EcalTrivialConditionRetriever::getIntercalibConstantsFromConfiguration(), popcon::EcalPulseShapesHandler::getNewObjects(), popcon::EcalPulseSymmCovariancesHandler::getNewObjects(), popcon::EcalPedestalsHandler::getNewObjectsP5(), EcalTrivialConditionRetriever::getTrgChannelStatusFromConfiguration(), CaloMiscalibMapEcal::prefillMap(), CaloMiscalibMapEcal::print(), EcalTrivialConditionRetriever::produceEcalChannelStatus(), EcalTrivialConditionRetriever::produceEcalDQMChannelStatus(), EcalTrivialConditionRetriever::produceEcalGainRatios(), EcalTrivialConditionRetriever::produceEcalIntercalibConstants(), EcalTrivialConditionRetriever::produceEcalIntercalibConstantsMC(), EcalTrivialConditionRetriever::produceEcalIntercalibErrors(), EcalTrivialConditionRetriever::produceEcalLaserAlphas(), EcalTrivialConditionRetriever::produceEcalLaserAPDPNRatios(), EcalTrivialConditionRetriever::produceEcalLaserAPDPNRatiosRef(), EcalTrivialConditionRetriever::produceEcalLinearCorrections(), EcalTrivialConditionRetriever::produceEcalPedestals(), EcalTrivialConditionRetriever::produceEcalPFRecHitThresholds(), EcalTrivialConditionRetriever::produceEcalTimeCalibConstants(), EcalTrivialConditionRetriever::produceEcalTimeCalibErrors(), popcon::EcalTPGBadXTHandler::produceEcalTrgChannelStatus(), EcalTrivialConditionRetriever::produceEcalTrgChannelStatus(), EcalTrivialConditionRetriever::produceEcalWeightXtalGroups(), StoreEcalCondition::readEcalChannelStatusFromFile(), StoreEcalCondition::readEcalGainRatiosFromFile(), StoreEcalCondition::readEcalIntercalibConstantsFromFile(), StoreEcalCondition::readEcalIntercalibConstantsMCFromFile(), popcon::EcalPedestalsHandler::readPedestal2017(), popcon::EcalPedestalsHandler::readPedestalFile(), popcon::EcalPedestalsHandler::readPedestalMC(), EcalNextToDeadChannelESProducer::setupNextToDeadChannels(), and validDetId().

◆ IY_MAX

const int EEDetId::IY_MAX = 100
static

Upper bound of EE crystal y-index

Definition at line 302 of file EEDetId.h.

Referenced by EcalPFRecHitThresholdsMaker::analyze(), EcalGetLaserData::analyze(), EnergyResolutionVsLumi::calcmuTot(), EcalLaserCondTools::dbToAscii(), EcalTPGCrystalStatusXMLTranslator::dumpXML(), ZeeCalibration::endOfJob(), EcalTestDevDB::generateEcalLaserAlphas(), EcalTestDevDB::generateEcalLaserAPDPNRatios(), EcalTestDevDB::generateEcalLaserAPDPNRatiosRef(), EcalTestDevDB::generateEcalLinearCorrections(), EcalTrivialConditionRetriever::getChannelStatusFromConfiguration(), EcalRingCalibrationTools::getDetIdsInECAL(), EcalRingCalibrationTools::getDetIdsInRing(), EcalTrivialConditionRetriever::getIntercalibConstantsFromConfiguration(), popcon::EcalPulseShapesHandler::getNewObjects(), popcon::EcalPulseSymmCovariancesHandler::getNewObjects(), popcon::EcalPedestalsHandler::getNewObjectsP5(), EcalTrivialConditionRetriever::getTrgChannelStatusFromConfiguration(), idOuterRing(), EcalRingCalibrationTools::initializeFromGeometry(), iPhiOuterRing(), isOuterRing(), CaloMiscalibMapEcal::prefillMap(), CaloMiscalibMapEcal::print(), EcalTrivialConditionRetriever::produceEcalChannelStatus(), EcalTrivialConditionRetriever::produceEcalDQMChannelStatus(), EcalTrivialConditionRetriever::produceEcalGainRatios(), EcalTrivialConditionRetriever::produceEcalIntercalibConstants(), EcalTrivialConditionRetriever::produceEcalIntercalibConstantsMC(), EcalTrivialConditionRetriever::produceEcalIntercalibErrors(), EcalTrivialConditionRetriever::produceEcalLaserAlphas(), EcalTrivialConditionRetriever::produceEcalLaserAPDPNRatios(), EcalTrivialConditionRetriever::produceEcalLaserAPDPNRatiosRef(), EcalTrivialConditionRetriever::produceEcalLinearCorrections(), EcalTrivialConditionRetriever::produceEcalPedestals(), EcalTrivialConditionRetriever::produceEcalPFRecHitThresholds(), EcalTrivialConditionRetriever::produceEcalTimeCalibConstants(), EcalTrivialConditionRetriever::produceEcalTimeCalibErrors(), popcon::EcalTPGBadXTHandler::produceEcalTrgChannelStatus(), EcalTrivialConditionRetriever::produceEcalTrgChannelStatus(), EcalTrivialConditionRetriever::produceEcalWeightXtalGroups(), StoreEcalCondition::readEcalChannelStatusFromFile(), StoreEcalCondition::readEcalGainRatiosFromFile(), StoreEcalCondition::readEcalIntercalibConstantsFromFile(), StoreEcalCondition::readEcalIntercalibConstantsMCFromFile(), popcon::EcalPedestalsHandler::readPedestal2017(), popcon::EcalPedestalsHandler::readPedestalFile(), popcon::EcalPedestalsHandler::readPedestalMC(), EcalNextToDeadChannelESProducer::setupNextToDeadChannels(), EcalCondObjectContainer< Values >::summary(), unhashIndex(), and validDetId().

◆ IY_MIN

const int EEDetId::IY_MIN = 1
static

Lower bound of EE crystal y-index

Definition at line 294 of file EEDetId.h.

Referenced by EcalPFRecHitThresholdsMaker::analyze(), EcalGetLaserData::analyze(), EnergyResolutionVsLumi::calcmuTot(), EcalLaserCondTools::dbToAscii(), ZeeCalibration::endOfJob(), EcalTestDevDB::generateEcalLaserAlphas(), EcalTestDevDB::generateEcalLaserAPDPNRatios(), EcalTestDevDB::generateEcalLaserAPDPNRatiosRef(), EcalTestDevDB::generateEcalLinearCorrections(), EcalTrivialConditionRetriever::getChannelStatusFromConfiguration(), EcalTrivialConditionRetriever::getIntercalibConstantsFromConfiguration(), popcon::EcalPulseShapesHandler::getNewObjects(), popcon::EcalPulseSymmCovariancesHandler::getNewObjects(), popcon::EcalPedestalsHandler::getNewObjectsP5(), EcalTrivialConditionRetriever::getTrgChannelStatusFromConfiguration(), CaloMiscalibMapEcal::prefillMap(), CaloMiscalibMapEcal::print(), EcalTrivialConditionRetriever::produceEcalChannelStatus(), EcalTrivialConditionRetriever::produceEcalDQMChannelStatus(), EcalTrivialConditionRetriever::produceEcalGainRatios(), EcalTrivialConditionRetriever::produceEcalIntercalibConstants(), EcalTrivialConditionRetriever::produceEcalIntercalibConstantsMC(), EcalTrivialConditionRetriever::produceEcalIntercalibErrors(), EcalTrivialConditionRetriever::produceEcalLaserAlphas(), EcalTrivialConditionRetriever::produceEcalLaserAPDPNRatios(), EcalTrivialConditionRetriever::produceEcalLaserAPDPNRatiosRef(), EcalTrivialConditionRetriever::produceEcalLinearCorrections(), EcalTrivialConditionRetriever::produceEcalPedestals(), EcalTrivialConditionRetriever::produceEcalPFRecHitThresholds(), EcalTrivialConditionRetriever::produceEcalTimeCalibConstants(), EcalTrivialConditionRetriever::produceEcalTimeCalibErrors(), popcon::EcalTPGBadXTHandler::produceEcalTrgChannelStatus(), EcalTrivialConditionRetriever::produceEcalTrgChannelStatus(), EcalTrivialConditionRetriever::produceEcalWeightXtalGroups(), StoreEcalCondition::readEcalChannelStatusFromFile(), StoreEcalCondition::readEcalGainRatiosFromFile(), StoreEcalCondition::readEcalIntercalibConstantsFromFile(), StoreEcalCondition::readEcalIntercalibConstantsMCFromFile(), popcon::EcalPedestalsHandler::readPedestal2017(), popcon::EcalPedestalsHandler::readPedestalFile(), popcon::EcalPedestalsHandler::readPedestalMC(), EcalNextToDeadChannelESProducer::setupNextToDeadChannels(), and validDetId().

◆ iYoffset

const int EEDetId::iYoffset = {0, 2, 1, 0, 0, 0, 0, 0, 0, 0, 0}
staticprivate

Definition at line 349 of file EEDetId.h.

Referenced by isc(), and iy().

◆ kdi

const unsigned short EEDetId::kdi
staticprivate
Initial value:
= {
0, 10, 20, 30, 40, 50, 60, 75, 90, 105, 120, 145, 170, 195, 220, 245, 270, 300, 330,
360, 390, 420, 450, 480, 510, 540, 570, 605, 640, 675, 710, 747, 784, 821, 858, 895, 932, 969,
1006, 1043, 1080, 1122, 1164, 1206, 1248, 1290, 1332, 1374, 1416, 1458, 1500, 1545, 1590, 1635, 1680, 1725, 1770,
1815, 1860, 1905, 1950, 1995, 2040, 2085, 2130, 2175, 2220, 2265, 2310, 2355, 2400, 2447, 2494, 2541, 2588, 2635,
2682, 2729, 2776, 2818, 2860, 2903, 2946, 2988, 3030, 3071, 3112, 3152, 3192, 3232, 3272, 3311, 3350, 3389, 3428,
3467, 3506, 3545, 3584, 3623, 3662, 3701, 3740, 3779, 3818, 3857, 3896, 3935, 3974, 4013, 4052, 4092, 4132, 4172,
4212, 4253, 4294, 4336, 4378, 4421, 4464, 4506, 4548, 4595, 4642, 4689, 4736, 4783, 4830, 4877, 4924, 4969, 5014,
5059, 5104, 5149, 5194, 5239, 5284, 5329, 5374, 5419, 5464, 5509, 5554, 5599, 5644, 5689, 5734, 5779, 5824, 5866,
5908, 5950, 5992, 6034, 6076, 6118, 6160, 6202, 6244, 6281, 6318, 6355, 6392, 6429, 6466, 6503, 6540, 6577, 6614,
6649, 6684, 6719, 6754, 6784, 6814, 6844, 6874, 6904, 6934, 6964, 6994, 7024, 7054, 7079, 7104, 7129, 7154, 7179,
7204, 7219, 7234, 7249, 7264, 7274, 7284, 7294, 7304, 7314}

Definition at line 352 of file EEDetId.h.

Referenced by hashedIndex(), and unhashIndex().

◆ kxf

const unsigned short EEDetId::kxf
staticprivate
Initial value:
= {
41, 51, 41, 51, 41, 51, 36, 51, 36, 51, 26, 51, 26, 51, 26, 51, 21, 51, 21, 51, 21, 51, 21, 51, 21, 51, 16, 51, 16,
51, 14, 51, 14, 51, 14, 51, 14, 51, 14, 51, 9, 51, 9, 51, 9, 51, 9, 51, 9, 51, 6, 51, 6, 51, 6, 51, 6, 51,
6, 51, 6, 51, 6, 51, 6, 51, 6, 51, 6, 51, 4, 51, 4, 51, 4, 51, 4, 51, 4, 56, 1, 58, 1, 59, 1, 60, 1,
61, 1, 61, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 1, 62, 1, 61, 1, 61, 1, 60,
1, 59, 1, 58, 4, 56, 4, 51, 4, 51, 4, 51, 4, 51, 6, 51, 6, 51, 6, 51, 6, 51, 6, 51, 6, 51, 6, 51, 6,
51, 6, 51, 6, 51, 9, 51, 9, 51, 9, 51, 9, 51, 9, 51, 14, 51, 14, 51, 14, 51, 14, 51, 14, 51, 16, 51, 16, 51,
21, 51, 21, 51, 21, 51, 21, 51, 21, 51, 26, 51, 26, 51, 26, 51, 36, 51, 36, 51, 41, 51, 41, 51, 41, 51}

Definition at line 351 of file EEDetId.h.

Referenced by hashedIndex(), and unhashIndex().

◆ nCols

const int EEDetId::nCols = 10
staticprivate

Definition at line 346 of file EEDetId.h.

Referenced by ix(), and iy().

◆ nCrys

const int EEDetId::nCrys = 5
staticprivate

Definition at line 347 of file EEDetId.h.

Referenced by ic(), and isc().

◆ QuadColLimits

const int EEDetId::QuadColLimits = {0, 8, 17, 27, 36, 45, 54, 62, 70, 76, 79}
staticprivate

Definition at line 348 of file EEDetId.h.

Referenced by isc(), ix(), and iy().

◆ SCCRYSTALMODE

const int EEDetId::SCCRYSTALMODE = 1
static

Definition at line 336 of file EEDetId.h.

Referenced by EEDetId(), and EcalEndcapNumberingScheme::getUnitID().

◆ XYMODE

const int EEDetId::XYMODE = 0
static
pfDeepBoostedJetPreprocessParams_cfi.upper_bound
upper_bound
Definition: pfDeepBoostedJetPreprocessParams_cfi.py:16
DDAxes::y
mps_fire.i
i
Definition: mps_fire.py:428
EEDetId::SCCRYSTALMODE
static const int SCCRYSTALMODE
Definition: EEDetId.h:336
EEDetId::kEEhalf
Definition: EEDetId.h:325
f
double f[11][100]
Definition: MuScleFitUtils.cc:78
EEDetId::isc
int isc() const
Definition: EEDetId.cc:222
EEDetId::isOuterRing
bool isOuterRing() const
Definition: EEDetId.cc:429
EEDetId::unhashIndex
static EEDetId unhashIndex(int hi)
Definition: EEDetId.cc:65
DetId::det
constexpr Detector det() const
get the detector field from this detid
Definition: DetId.h:46
ALCARECOPromptCalibProdSiPixelAli0T_cff.mode
mode
Definition: ALCARECOPromptCalibProdSiPixelAli0T_cff.py:96
EEDetId::fastValidDetId
static bool fastValidDetId(int crystal_ix, int crystal_iy)
Definition: EEDetId.h:258
EEDetId::IX_MIN
static const int IX_MIN
Definition: EEDetId.h:290
DDAxes::x
EEDetId::IY_MIN
static const int IY_MIN
Definition: EEDetId.h:294
EEDetId::ix
int ix() const
Definition: EEDetId.h:77
EEDetId::kxf
static const unsigned short kxf[2 *IY_MAX]
Definition: EEDetId.h:351
EEDetId::nCrys
static const int nCrys
Definition: EEDetId.h:347
EEDetId::QuadColLimits
static const int QuadColLimits[nCols+1]
Definition: EEDetId.h:348
EEDetId::isOuterRingXY
static bool isOuterRingXY(int ax, int ay)
Definition: EEDetId.cc:437
EEDetId::kSizeForDenseIndexing
Definition: EEDetId.h:329
EcalScDetId
Definition: EcalScDetId.h:24
EEDetId::nCols
static const int nCols
Definition: EEDetId.h:346
EEDetId::IY_MAX
static const int IY_MAX
Definition: EEDetId.h:302
EEDetId::zside
int zside() const
Definition: EEDetId.h:71
EEDetId::ISC_MAX
static const int ISC_MAX
Definition: EEDetId.h:316
EEDetId::iquadrant
int iquadrant() const
Definition: EEDetId.cc:206
b
double b
Definition: hdecay.h:118
DetId::subdetId
constexpr int subdetId() const
get the contents of the subdetector field (not cast into any detector's numbering enum)
Definition: DetId.h:48
EEDetId
Definition: EEDetId.h:14
EcalEndcap
Definition: EcalSubdetector.h:10
cppFunctionSkipper.exception
exception
Definition: cppFunctionSkipper.py:10
EEDetId::kdi
static const unsigned short kdi[2 *IY_MAX]
Definition: EEDetId.h:352
a
double a
Definition: hdecay.h:119
cropTnPTrees.din
din
Definition: cropTnPTrees.py:30
DetId::id_
uint32_t id_
Definition: DetId.h:69
EEDetId::isNextToRingBoundary
static bool isNextToRingBoundary(EEDetId id)
Definition: EEDetId.cc:284
EEDetId::hashedIndex
int hashedIndex() const
Definition: EEDetId.h:183
EEDetId::IX_MAX
static const int IX_MAX
Definition: EEDetId.h:298
EEDetId::validHashIndex
static bool validHashIndex(int i)
Definition: EEDetId.h:239
EEDetId::iyQuadrantOne
int iyQuadrantOne() const
Definition: EEDetId.cc:196
DetId::Ecal
Definition: DetId.h:27
EEDetId::iy
int iy() const
Definition: EEDetId.h:83
alignCSCRings.r
r
Definition: alignCSCRings.py:93
EEDetId::EEDetId
EEDetId()
Definition: EEDetId.h:24
hi
Definition: EPCuts.h:4
EEDetId::positiveZ
bool positiveZ() const
Definition: EEDetId.h:174
EEDetId::slowValidDetId
static bool slowValidDetId(int crystal_ix, int crystal_iy)
Definition: EEDetId.cc:444
EEDetId::XYMODE
static const int XYMODE
Definition: EEDetId.h:335
EEDetId::isNextToDBoundary
static bool isNextToDBoundary(EEDetId id)
Definition: EEDetId.cc:279
Exception
Definition: hltDiff.cc:245
DetId::DetId
constexpr DetId()
Create an empty or null id (also for persistence)
Definition: DetId.h:38
EEDetId::iYoffset
static const int iYoffset[nCols+1]
Definition: EEDetId.h:349
EEDetId::validDetId
static bool validDetId(int crystal_ix, int crystal_iy, int iz)
Definition: EEDetId.h:248
funct::abs
Abs< T >::type abs(const T &t)
Definition: Abs.h:22
dqmiolumiharvest.j
j
Definition: dqmiolumiharvest.py:66
cuy.ii
ii
Definition: cuy.py:590
EEDetId::ixQuadrantOne
int ixQuadrantOne() const
Definition: EEDetId.cc:186
EEDetId::Subdet
Definition: EEDetId.h:19