ATLAS Offline Software
Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimParametrization/tools/CaloDetDescr/CaloDetDescrElement.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2019 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ISF_FASTCALOSIMPARAMETRIZATION_CALODETDESCRELEMENT_H
6 #define ISF_FASTCALOSIMPARAMETRIZATION_CALODETDESCRELEMENT_H
7 
8 class CaloGeometry;
9 
10 #include "../Identifier/Identifier.h"
11 #include <iostream>
12 #include <iomanip>
13 #include <cmath>
14 
16 {
17  friend class CaloGeometry;
18  public:
20  m_identify = 0;
21  m_hash_id = 0;
22  m_calosample = 0;
23  m_eta = 0;
24  m_phi = 0;
25  m_deta = 0;
26  m_dphi = 0;
27  m_r = 0;
28  m_eta_raw = 0;
29  m_phi_raw = 0;
30  m_r_raw = 0;
31  m_dr = 0;
32  m_x = 0;
33  m_y = 0;
34  m_z = 0;
35  m_x_raw = 0;
36  m_y_raw = 0;
37  m_z_raw = 0;
38  m_dx = 0;
39  m_dy = 0;
40  m_dz = 0;
41  m_sinTh = 0;
42  m_cosTh = 0;
43  m_volume = 0;
44  m_sinPhi = 0;
45  m_cosPhi = 0;
46  };
47 
50  virtual ~CaloDetDescrElement() {};
51 
54  float eta() const;
57  float phi() const;
60  float r() const;
63  float eta_raw() const;
66  float phi_raw() const;
69  float r_raw() const;
72  float dphi() const;
75  float deta() const;
78  float dr() const;
79 
82  float x() const;
85  float y() const;
88  float z() const;
91  float x_raw() const;
94  float y_raw() const;
97  float z_raw() const;
100  float dx() const;
103  float dy() const;
106  float dz() const;
107 
111 
112  unsigned long long calo_hash() const;
113 
114  int getSampling() const ;
115 
116  //ACH protected:
117  //
118  long long m_identify;
119  long long m_hash_id;
120 
122 
125  float m_eta;
128  float m_phi;
129 
132  float m_sinTh;
135  float m_cosTh;
136 
139  float m_deta;
142  float m_dphi;
143 
147  float m_volume;
148 
151  float m_sinPhi;
152 
155  float m_cosPhi;
156 
159  float m_r;
162  float m_eta_raw;
165  float m_phi_raw;
168  float m_r_raw;
171  float m_dr;
172 
175  float m_x;
178  float m_y;
181  float m_z;
184  float m_x_raw;
187  float m_y_raw;
190  float m_z_raw;
193  float m_dx;
196  float m_dy;
199  float m_dz;
200 
201 };
202 
204 {
205  Identifier id((unsigned long long) m_identify);
206  return id;
207 }
208 
209 inline unsigned long long CaloDetDescrElement::calo_hash() const
210 {
211  return m_hash_id;
212 }
213 
214 inline int CaloDetDescrElement::getSampling() const
215 { return m_calosample;}
216 inline float CaloDetDescrElement::eta() const
217 { return m_eta;}
218 inline float CaloDetDescrElement::phi() const
219 { return m_phi;}
220 inline float CaloDetDescrElement::r() const
221 { return m_r;}
222 inline float CaloDetDescrElement::eta_raw() const
223 { return m_eta_raw;}
224 inline float CaloDetDescrElement::phi_raw() const
225 { return m_phi_raw;}
226 inline float CaloDetDescrElement::r_raw() const
227 { return m_r_raw;}
228 inline float CaloDetDescrElement::deta() const
229 { return m_deta;}
230 inline float CaloDetDescrElement::dphi() const
231 { return m_dphi;}
232 inline float CaloDetDescrElement::dr() const
233 { return m_dr;}
234 
235 inline float CaloDetDescrElement::x() const
236 { return m_x;}
237 inline float CaloDetDescrElement::y() const
238 { return m_y;}
239 inline float CaloDetDescrElement::z() const
240 { return m_z;}
241 inline float CaloDetDescrElement::x_raw() const
242 { return m_x_raw;}
243 inline float CaloDetDescrElement::y_raw() const
244 { return m_y_raw;}
245 inline float CaloDetDescrElement::z_raw() const
246 { return m_z_raw;}
247 inline float CaloDetDescrElement::dx() const
248 { return m_dx;}
249 inline float CaloDetDescrElement::dy() const
250 { return m_dy;}
251 inline float CaloDetDescrElement::dz() const
252 { return m_dz;}
253 
254 #endif
CaloDetDescrElement::deta
float deta() const
cell deta
CaloDetDescrElement::CaloDetDescrElement
CaloDetDescrElement()
Definition: Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimParametrization/tools/CaloDetDescr/CaloDetDescrElement.h:19
CaloDetDescrElement::identify
Identifier identify() const
cell identifier
CaloDetDescrElement::m_cosTh
float m_cosTh
this one is cached for algorithm working in transverse Energy
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:260
CaloDetDescrElement::m_dphi
float m_dphi
cylindric coordinates : delta phi
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:267
CaloDetDescrElement::m_z_raw
float m_z_raw
cartesian coordinates : Z raw
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:314
CaloDetDescrElement::y
float y() const
cell y
CaloDetDescrElement
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:66
CaloDetDescrElement::m_eta_raw
float m_eta_raw
cylindric coordinates : eta_raw
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:286
CaloDetDescrElement::m_volume
float m_volume
cell volume
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:271
CaloDetDescrElement::dr
float dr() const
cell dr
CaloDetDescrElement::m_sinPhi
float m_sinPhi
cache to allow fast px py pz computation
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:275
CaloDetDescrElement::m_phi_raw
float m_phi_raw
cylindric coordinates : phi_raw
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:289
CaloDetDescrElement::~CaloDetDescrElement
virtual ~CaloDetDescrElement()
virtual destructor
Definition: Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimParametrization/tools/CaloDetDescr/CaloDetDescrElement.h:50
CaloDetDescrElement::m_phi
float m_phi
cylindric coordinates : phi
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:252
CaloDetDescrElement::m_dr
float m_dr
cylindric coordinates : delta r
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:295
CaloDetDescrElement::m_dz
float m_dz
cartesian coordinates : delta Z
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:323
CaloDetDescrElement::eta_raw
float eta_raw() const
cell eta_raw
CaloGeometry
Definition: CaloGeometry.h:27
CaloDetDescrElement::m_z
float m_z
cartesian coordinates : Z
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:305
CaloDetDescrElement::dz
float dz() const
cell dz
CaloDetDescrElement::m_dy
float m_dy
cartesian coordinates : delta Y
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:320
CaloDetDescrElement::identify
Identifier identify() const override final
cell identifier
Definition: CaloDetDescrElement.cxx:64
CaloDetDescrElement::calo_hash
unsigned long long calo_hash() const
CaloDetDescrElement::m_y_raw
float m_y_raw
cartesian coordinates : Y raw
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:311
CaloDetDescrElement::m_x_raw
float m_x_raw
cartesian coordinates : X raw
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:308
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
CaloDetDescrElement::m_r_raw
float m_r_raw
cylindric coordinates : r_raw
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:292
CaloDetDescrElement::m_dx
float m_dx
cartesian coordinates : delta X
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:317
CaloDetDescrElement::m_r
float m_r
cylindric coordinates : r
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:283
CaloDetDescrElement::m_calosample
int m_calosample
Definition: Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimParametrization/tools/CaloDetDescr/CaloDetDescrElement.h:121
CaloDetDescrElement::m_cosPhi
float m_cosPhi
cache to allow fast px py pz computation
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:279
id
SG::auxid_t id
Definition: Control/AthContainers/Root/debug.cxx:194
CaloDetDescrElement::x_raw
float x_raw() const
cell x_raw
CaloDetDescrElement::z_raw
float z_raw() const
cell z_raw
CaloDetDescrElement::m_identify
long long m_identify
Definition: Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimParametrization/tools/CaloDetDescr/CaloDetDescrElement.h:118
CaloDetDescrElement::x
float x() const
cell x
CaloDetDescrElement::m_hash_id
long long m_hash_id
Definition: Simulation/ISF/ISF_FastCaloSim/ISF_FastCaloSimParametrization/tools/CaloDetDescr/CaloDetDescrElement.h:119
CaloDetDescrElement::r_raw
float r_raw() const
cell r_raw
CaloDetDescrElement::m_x
float m_x
cartesian coordinates : X
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:299
CaloDetDescrElement::dphi
float dphi() const
cell dphi
CaloDetDescrElement::dx
float dx() const
cell dx
CaloDetDescrElement::getSampling
int getSampling() const
CaloDetDescrElement::z
float z() const
cell z
CaloDetDescrElement::m_y
float m_y
cartesian coordinates : Y
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:302
CaloDetDescrElement::eta
float eta() const
cell eta
CaloDetDescrElement::phi
float phi() const
cell phi
CaloDetDescrElement::r
float r() const
cell r
CaloDetDescrElement::y_raw
float y_raw() const
cell y_raw
CaloDetDescrElement::m_deta
float m_deta
cylindric coordinates : delta eta
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:264
CaloDetDescrElement::dy
float dy() const
cell dy
CaloDetDescrElement::m_eta
float m_eta
cylindric coordinates : eta
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:249
CaloDetDescrElement::m_sinTh
float m_sinTh
this one is cached for algorithm working in transverse Energy
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:256
CaloDetDescrElement::phi_raw
float phi_raw() const
cell phi_raw