CMS 3D CMS Logo

CaloCellManager.h
Go to the documentation of this file.
1 #ifndef Validation_EventGenerator_CaloCellManager
2 #define Validation_EventGenerator_CaloCellManager
3 
4 /* class CaloCellManager
5  *
6  * Simple eta-phi cell structure manager, mimic calorimetric tower structure
7  *
8  *
9  */
10 
12 
13 #include <vector>
14 
16 public:
17  typedef std::vector<CaloCellId*> CaloCellCollection;
18 
19  CaloCellManager(unsigned int theVerbosity);
20  virtual ~CaloCellManager();
21 
22  unsigned int getCellIndexFromAngle(double eta, double phi);
23  CaloCellId* getCellFromIndex(unsigned int id);
24  std::vector<double> getEtaRanges();
25 
26  // approximated CMS eta-phi calorimetri tower grid
27 
28  static const unsigned int nBarrelEta = 16;
29  static const unsigned int nEndcapEta = 12;
30  static const unsigned int nForwardEta = 12;
31 
32  static const unsigned int nBarrelPhi = 72;
33  static const unsigned int nEndcapPhi = 36;
34  static const unsigned int nForwardPhi = 36;
35 
36  static const unsigned int nBarrelCell = 2 * nBarrelEta * nBarrelPhi;
37  static const unsigned int nEndcapCell = 2 * nEndcapEta * nEndcapPhi;
38  static const unsigned int nForwardCell = 2 * nForwardEta * nForwardPhi;
39 
40  static const unsigned int nCaloCell = nBarrelCell + nEndcapCell + nForwardCell;
41 
42 private:
43  void init();
44  void builder();
45 
46  unsigned int verbosity;
47 
48  std::vector<double> etaLim;
49  std::vector<double> phiLimBar;
50  std::vector<double> phiLimEnd;
51  std::vector<double> phiLimFor;
52 
54 };
55 
56 #endif
CaloCellManager::nForwardPhi
static const unsigned int nForwardPhi
Definition: CaloCellManager.h:34
CaloCellManager::nForwardCell
static const unsigned int nForwardCell
Definition: CaloCellManager.h:38
CaloCellManager::nCaloCell
static const unsigned int nCaloCell
Definition: CaloCellManager.h:40
CaloCellManager::builder
void builder()
Definition: CaloCellManager.cc:100
CaloCellId
Definition: CaloCellId.h:14
CaloCellManager::getEtaRanges
std::vector< double > getEtaRanges()
Definition: CaloCellManager.cc:180
CaloCellManager
Definition: CaloCellManager.h:15
CaloCellManager::CaloCellManager
CaloCellManager(unsigned int theVerbosity)
Definition: CaloCellManager.cc:15
CaloCellManager::etaLim
std::vector< double > etaLim
Definition: CaloCellManager.h:48
CaloCellManager::phiLimFor
std::vector< double > phiLimFor
Definition: CaloCellManager.h:51
CaloCellManager::nForwardEta
static const unsigned int nForwardEta
Definition: CaloCellManager.h:30
CaloCellManager::~CaloCellManager
virtual ~CaloCellManager()
Definition: CaloCellManager.cc:25
CaloCellManager::phiLimBar
std::vector< double > phiLimBar
Definition: CaloCellManager.h:49
PVValHelper::eta
Definition: PVValidationHelpers.h:69
CaloCellManager::nEndcapEta
static const unsigned int nEndcapEta
Definition: CaloCellManager.h:29
CaloCellManager::getCellIndexFromAngle
unsigned int getCellIndexFromAngle(double eta, double phi)
Definition: CaloCellManager.cc:162
CaloCellId.h
CaloCellManager::theCellCollection
CaloCellCollection theCellCollection
Definition: CaloCellManager.h:53
CaloCellManager::verbosity
unsigned int verbosity
Definition: CaloCellManager.h:46
CaloCellManager::nEndcapCell
static const unsigned int nEndcapCell
Definition: CaloCellManager.h:37
CaloCellManager::nBarrelPhi
static const unsigned int nBarrelPhi
Definition: CaloCellManager.h:32
DDAxes::phi
CaloCellManager::getCellFromIndex
CaloCellId * getCellFromIndex(unsigned int id)
Definition: CaloCellManager.cc:173
CaloCellManager::nBarrelEta
static const unsigned int nBarrelEta
Definition: CaloCellManager.h:28
CaloCellManager::nBarrelCell
static const unsigned int nBarrelCell
Definition: CaloCellManager.h:36
CaloCellManager::phiLimEnd
std::vector< double > phiLimEnd
Definition: CaloCellManager.h:50
CaloCellManager::nEndcapPhi
static const unsigned int nEndcapPhi
Definition: CaloCellManager.h:33
CaloCellManager::init
void init()
Definition: CaloCellManager.cc:31
CaloCellManager::CaloCellCollection
std::vector< CaloCellId * > CaloCellCollection
Definition: CaloCellManager.h:17