CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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  * $Date: 2010/05/25 09:45:03 $
9  * $Revision: 1.1 $
10  *
11  */
12 
14 
15 #include <vector>
16 
18 
19  public:
20 
21  typedef std::vector<CaloCellId*> CaloCellCollection;
22 
23  CaloCellManager(unsigned int theVerbosity);
24  virtual ~CaloCellManager();
25 
26  unsigned int getCellIndexFromAngle(double eta, double phi);
27  CaloCellId* getCellFromIndex(unsigned int id);
28  std::vector<double> getEtaRanges();
29 
30  // approximated CMS eta-phi calorimetri tower grid
31 
32  static const unsigned int nBarrelEta = 16;
33  static const unsigned int nEndcapEta = 12;
34  static const unsigned int nForwardEta = 12;
35 
36  static const unsigned int nBarrelPhi = 72;
37  static const unsigned int nEndcapPhi = 36;
38  static const unsigned int nForwardPhi = 36;
39 
40  static const unsigned int nBarrelCell = 2*nBarrelEta*nBarrelPhi;
41  static const unsigned int nEndcapCell = 2*nEndcapEta*nEndcapPhi;
42  static const unsigned int nForwardCell = 2*nForwardEta*nForwardPhi;
43 
44  static const unsigned int nCaloCell = nBarrelCell+nEndcapCell+nForwardCell;
45 
46  private:
47 
48  void init();
49  void builder();
50 
51  unsigned int verbosity;
52 
53  std::vector<double> etaLim;
54  std::vector<double> phiLimBar;
55  std::vector<double> phiLimEnd;
56  std::vector<double> phiLimFor;
57 
59 
60 };
61 
62 #endif
static const unsigned int nForwardPhi
CaloCellManager(unsigned int theVerbosity)
static const unsigned int nForwardEta
static const unsigned int nBarrelCell
std::vector< double > etaLim
T eta() const
static const unsigned int nEndcapEta
std::vector< CaloCellId * > CaloCellCollection
unsigned int verbosity
std::vector< double > phiLimBar
std::vector< double > getEtaRanges()
CaloCellId * getCellFromIndex(unsigned int id)
static const unsigned int nCaloCell
std::vector< double > phiLimFor
static const unsigned int nEndcapCell
static const unsigned int nBarrelEta
CaloCellCollection theCellCollection
static const unsigned int nForwardCell
virtual ~CaloCellManager()
std::vector< double > phiLimEnd
unsigned int getCellIndexFromAngle(double eta, double phi)
static const unsigned int nBarrelPhi
Definition: DDAxes.h:10
static const unsigned int nEndcapPhi