CMS 3D CMS Logo

HcalHardcodeGeometryLoader.h
Go to the documentation of this file.
1 #ifndef GEOMETRY_HCALTOWERALGO_HCALHARDCODEGEOMETRYLOADER_H
2 #define GEOMETRY_HCALTOWERALGO_HCALHARDCODEGEOMETRYLOADER_H 1
3 
12 #include <vector>
13 
14 class HcalTopology;
15 class HcalGeometry;
16 
18 public:
20 
21  CaloSubdetectorGeometry* load(const HcalTopology& fTopology);
22 
23 private:
25  HBHOCellParameters(int f_eta,
26  int f_depth,
27  int f_phiFirst,
28  int f_phiStep,
29  int f_dPhi,
30  float f_rMin,
31  float f_rMax,
32  float f_etaMin,
33  float f_etaMax)
34  : eta(f_eta),
35  depth(f_depth),
36  phiFirst(f_phiFirst),
37  phiStep(f_phiStep),
38  dphi(f_dPhi),
39  rMin(f_rMin),
40  rMax(f_rMax),
41  etaMin(f_etaMin),
42  etaMax(f_etaMax) {}
43 
44  int eta;
45  int depth;
46  int phiFirst;
47  int phiStep;
48  int dphi;
49  float rMin;
50  float rMax;
51  float etaMin;
52  float etaMax;
53  };
54 
56  HECellParameters(int f_eta,
57  int f_depth,
58  int f_phiFirst,
59  int f_phiStep,
60  int f_dPhi,
61  float f_zMin,
62  float f_zMax,
63  float f_etaMin,
64  float f_etaMax)
65  : eta(f_eta),
66  depth(f_depth),
67  phiFirst(f_phiFirst),
68  phiStep(f_phiStep),
69  dphi(f_dPhi),
70  zMin(f_zMin),
71  zMax(f_zMax),
72  etaMin(f_etaMin),
73  etaMax(f_etaMax) {}
74 
75  int eta;
76  int depth;
77  int phiFirst;
78  int phiStep;
79  int dphi;
80  float zMin;
81  float zMax;
82  float etaMin;
83  float etaMax;
84  };
85 
87  HFCellParameters(int f_eta,
88  int f_depth,
89  int f_phiFirst,
90  int f_phiStep,
91  int f_dPhi,
92  float f_zMin,
93  float f_zMax,
94  float f_rMin,
95  float f_rMax)
96  : eta(f_eta),
97  depth(f_depth),
98  phiFirst(f_phiFirst),
99  phiStep(f_phiStep),
100  dphi(f_dPhi),
101  zMin(f_zMin),
102  zMax(f_zMax),
103  rMin(f_rMin),
104  rMax(f_rMax) {}
105 
106  int eta;
107  int depth;
108  int phiFirst;
109  int phiStep;
110  int dphi;
111  float zMin;
112  float zMax;
113  float rMin;
114  float rMax;
115  };
116 
117  std::vector<HBHOCellParameters> makeHBCells(const HcalTopology& topology);
118  std::vector<HBHOCellParameters> makeHOCells();
119  std::vector<HECellParameters> makeHECells(const HcalTopology& topology);
120  std::vector<HECellParameters> makeHECells_H2();
121  std::vector<HFCellParameters> makeHFCells();
122 
123  void fillHBHO(HcalGeometry* fGeometry, const std::vector<HBHOCellParameters>& fCells, bool fHB);
124  void fillHE(HcalGeometry* fGeometry, const std::vector<HECellParameters>& fCells);
125  void fillHF(HcalGeometry* fGeometry, const std::vector<HFCellParameters>& fCells);
126 
128  double DEGREE2RAD;
129 
130  std::vector<std::vector<int> > m_segmentation;
131 };
132 
133 #endif
HcalHardcodeGeometryLoader::HFCellParameters::rMin
float rMin
Definition: HcalHardcodeGeometryLoader.h:113
HcalHardcodeGeometryLoader::fillHE
void fillHE(HcalGeometry *fGeometry, const std::vector< HECellParameters > &fCells)
Definition: HcalHardcodeGeometryLoader.cc:463
HcalHardcodeGeometryLoader::HECellParameters::etaMin
float etaMin
Definition: HcalHardcodeGeometryLoader.h:82
HcalHardcodeGeometryLoader::HBHOCellParameters
Definition: HcalHardcodeGeometryLoader.h:24
HcalHardcodeGeometryLoader::HECellParameters::eta
int eta
Definition: HcalHardcodeGeometryLoader.h:75
HcalHardcodeGeometryLoader::HBHOCellParameters::phiFirst
int phiFirst
Definition: HcalHardcodeGeometryLoader.h:46
HcalHardcodeGeometryLoader::HBHOCellParameters::eta
int eta
Definition: HcalHardcodeGeometryLoader.h:44
HcalHardcodeGeometryLoader::HBHOCellParameters::rMin
float rMin
Definition: HcalHardcodeGeometryLoader.h:49
HcalHardcodeGeometryLoader::HFCellParameters::dphi
int dphi
Definition: HcalHardcodeGeometryLoader.h:110
HcalHardcodeGeometryLoader::makeHECells
std::vector< HECellParameters > makeHECells(const HcalTopology &topology)
Definition: HcalHardcodeGeometryLoader.cc:223
HcalHardcodeGeometryLoader::HECellParameters
Definition: HcalHardcodeGeometryLoader.h:55
HcalHardcodeGeometryLoader::HFCellParameters
Definition: HcalHardcodeGeometryLoader.h:86
HcalTopology
Definition: HcalTopology.h:26
HcalHardcodeGeometryLoader::HECellParameters::dphi
int dphi
Definition: HcalHardcodeGeometryLoader.h:79
HcalHardcodeGeometryLoader::HECellParameters::phiFirst
int phiFirst
Definition: HcalHardcodeGeometryLoader.h:77
HcalHardcodeGeometryLoader::HBHOCellParameters::rMax
float rMax
Definition: HcalHardcodeGeometryLoader.h:50
HcalHardcodeGeometryLoader::HECellParameters::phiStep
int phiStep
Definition: HcalHardcodeGeometryLoader.h:78
HcalHardcodeGeometryLoader::HFCellParameters::phiStep
int phiStep
Definition: HcalHardcodeGeometryLoader.h:109
HcalHardcodeGeometryLoader::makeHECells_H2
std::vector< HECellParameters > makeHECells_H2()
Definition: HcalHardcodeGeometryLoader.cc:385
HcalHardcodeGeometryLoader::HECellParameters::depth
int depth
Definition: HcalHardcodeGeometryLoader.h:76
HcalHardcodeGeometryLoader::fillHBHO
void fillHBHO(HcalGeometry *fGeometry, const std::vector< HBHOCellParameters > &fCells, bool fHB)
Definition: HcalHardcodeGeometryLoader.cc:185
HcalHardcodeGeometryLoader::HcalHardcodeGeometryLoader
HcalHardcodeGeometryLoader()
Definition: HcalHardcodeGeometryLoader.cc:15
HcalHardcodeGeometryLoader::DEGREE2RAD
double DEGREE2RAD
Definition: HcalHardcodeGeometryLoader.h:128
HcalHardcodeGeometryLoader::HFCellParameters::zMin
float zMin
Definition: HcalHardcodeGeometryLoader.h:111
HcalHardcodeGeometryLoader::m_segmentation
std::vector< std::vector< int > > m_segmentation
Definition: HcalHardcodeGeometryLoader.h:130
HcalHardcodeGeometryLoader::HFCellParameters::HFCellParameters
HFCellParameters(int f_eta, int f_depth, int f_phiFirst, int f_phiStep, int f_dPhi, float f_zMin, float f_zMax, float f_rMin, float f_rMax)
Definition: HcalHardcodeGeometryLoader.h:87
HcalHardcodeGeometryLoader::HECellParameters::etaMax
float etaMax
Definition: HcalHardcodeGeometryLoader.h:83
HcalHardcodeGeometryLoader::HBHOCellParameters::HBHOCellParameters
HBHOCellParameters(int f_eta, int f_depth, int f_phiFirst, int f_phiStep, int f_dPhi, float f_rMin, float f_rMax, float f_etaMin, float f_etaMax)
Definition: HcalHardcodeGeometryLoader.h:25
HcalHardcodeGeometryLoader::HBHOCellParameters::dphi
int dphi
Definition: HcalHardcodeGeometryLoader.h:48
HcalHardcodeGeometryLoader::HECellParameters::HECellParameters
HECellParameters(int f_eta, int f_depth, int f_phiFirst, int f_phiStep, int f_dPhi, float f_zMin, float f_zMax, float f_etaMin, float f_etaMax)
Definition: HcalHardcodeGeometryLoader.h:56
HcalHardcodeGeometryLoader::HBHOCellParameters::depth
int depth
Definition: HcalHardcodeGeometryLoader.h:45
HcalHardcodeGeometryLoader::HECellParameters::zMin
float zMin
Definition: HcalHardcodeGeometryLoader.h:80
HcalHardcodeGeometryLoader::HFCellParameters::depth
int depth
Definition: HcalHardcodeGeometryLoader.h:107
HcalHardcodeGeometryLoader::HFCellParameters::phiFirst
int phiFirst
Definition: HcalHardcodeGeometryLoader.h:108
HcalHardcodeGeometryLoader::MAX_HCAL_PHI
int MAX_HCAL_PHI
Definition: HcalHardcodeGeometryLoader.h:127
HcalHardcodeGeometryLoader::HECellParameters::zMax
float zMax
Definition: HcalHardcodeGeometryLoader.h:81
HcalHardcodeGeometryLoader::HFCellParameters::zMax
float zMax
Definition: HcalHardcodeGeometryLoader.h:112
HcalHardcodeGeometryLoader::HBHOCellParameters::etaMax
float etaMax
Definition: HcalHardcodeGeometryLoader.h:52
HcalHardcodeGeometryLoader::fillHF
void fillHF(HcalGeometry *fGeometry, const std::vector< HFCellParameters > &fCells)
Definition: HcalHardcodeGeometryLoader.cc:500
CaloVGeometryLoader.h
HcalHardcodeGeometryLoader::load
CaloSubdetectorGeometry * load(const HcalTopology &fTopology)
Definition: HcalHardcodeGeometryLoader.cc:23
CaloCellGeometry.h
HcalHardcodeGeometryLoader::HFCellParameters::rMax
float rMax
Definition: HcalHardcodeGeometryLoader.h:114
HcalHardcodeGeometryLoader::makeHOCells
std::vector< HBHOCellParameters > makeHOCells()
Definition: HcalHardcodeGeometryLoader.cc:152
HcalHardcodeGeometryLoader
Definition: HcalHardcodeGeometryLoader.h:17
HcalHardcodeGeometryLoader::HBHOCellParameters::phiStep
int phiStep
Definition: HcalHardcodeGeometryLoader.h:47
CaloSubdetectorGeometry
Definition: CaloSubdetectorGeometry.h:22
HcalHardcodeGeometryLoader::makeHFCells
std::vector< HFCellParameters > makeHFCells()
Definition: HcalHardcodeGeometryLoader.cc:422
HcalHardcodeGeometryLoader::makeHBCells
std::vector< HBHOCellParameters > makeHBCells(const HcalTopology &topology)
Definition: HcalHardcodeGeometryLoader.cc:57
HcalHardcodeGeometryLoader::HBHOCellParameters::etaMin
float etaMin
Definition: HcalHardcodeGeometryLoader.h:51
ParameterSet.h
HcalGeometry
Definition: HcalGeometry.h:17
HcalHardcodeGeometryLoader::HFCellParameters::eta
int eta
Definition: HcalHardcodeGeometryLoader.h:106