ATLAS Offline Software
ICaloGeometry.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ICaloGeometry_h
6 #define ICaloGeometry_h
7 
8 #include "Identifier/Identifier.h"
10 #include "CaloDetDescr/CaloDetDescrElement.h"
12 
15 public:
16  virtual bool PostProcessGeometry() = 0;
17 
18  virtual void Validate ATLAS_NOT_THREAD_SAFE(int nrnd = 100) = 0;
19 
20  virtual const CaloDetDescrElement *getDDE(Identifier identify) = 0;
21  virtual const CaloDetDescrElement *getDDE(int sampling, float eta, float phi,
22  float *distance = 0,
23  int *steps = 0) = 0;
24  virtual const CaloDetDescrElement *getFCalDDE(int sampling, float x, float y,
25  float z, float *distance = 0,
26  int *steps = 0) = 0;
27 
28  virtual double deta(int sample, double eta) const = 0;
29  virtual void minmaxeta(int sample, double eta, double &mineta,
30  double &maxeta) const = 0;
31  virtual double rzmid(int sample, double eta) const = 0;
32  virtual double rzent(int sample, double eta) const = 0;
33  virtual double rzext(int sample, double eta) const = 0;
34  virtual double rmid(int sample, double eta) const = 0;
35  virtual double rent(int sample, double eta) const = 0;
36  virtual double rext(int sample, double eta) const = 0;
37  virtual double zmid(int sample, double eta) const = 0;
38  virtual double zent(int sample, double eta) const = 0;
39  virtual double zext(int sample, double eta) const = 0;
40  virtual double rpos(int sample, double eta,
41  int subpos = CaloSubPos::SUBPOS_MID) const = 0;
42  virtual double zpos(int sample, double eta,
43  int subpos = CaloSubPos::SUBPOS_MID) const = 0;
44  virtual double rzpos(int sample, double eta,
45  int subpos = CaloSubPos::SUBPOS_MID) const = 0;
46  virtual bool isCaloBarrel(int sample) const = 0;
47 };
48 
49 #endif
ICaloGeometry::deta
virtual double deta(int sample, double eta) const =0
phi
Scalar phi() const
phi method
Definition: AmgMatrixBasePlugin.h:64
ICaloGeometry::rpos
virtual double rpos(int sample, double eta, int subpos=CaloSubPos::SUBPOS_MID) const =0
eta
Scalar eta() const
pseudorapidity method
Definition: AmgMatrixBasePlugin.h:79
CaloDetDescrElement
This class groups all DetDescr information related to a CaloCell. Provides a generic interface for al...
Definition: Calorimeter/CaloDetDescr/CaloDetDescr/CaloDetDescrElement.h:66
ICaloGeometry::PostProcessGeometry
virtual bool PostProcessGeometry()=0
ICaloGeometry::rmid
virtual double rmid(int sample, double eta) const =0
x
#define x
ICaloGeometry::zext
virtual double zext(int sample, double eta) const =0
SUBPOS_MID
@ SUBPOS_MID
Definition: FastCaloSim_CaloCell_ID.h:11
beamspotman.steps
int steps
Definition: beamspotman.py:505
ICaloGeometry::zmid
virtual double zmid(int sample, double eta) const =0
ICaloGeometry::isCaloBarrel
virtual bool isCaloBarrel(int sample) const =0
FullCPAlgorithmsTest_eljob.sample
sample
Definition: FullCPAlgorithmsTest_eljob.py:100
z
#define z
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
ICaloGeometry::minmaxeta
virtual void minmaxeta(int sample, double eta, double &mineta, double &maxeta) const =0
ICaloGeometry
Definition: ICaloGeometry.h:14
ICaloGeometry::rext
virtual double rext(int sample, double eta) const =0
ICaloGeometry::ATLAS_NOT_THREAD_SAFE
virtual void Validate ATLAS_NOT_THREAD_SAFE(int nrnd=100)=0
ICaloGeometry::getFCalDDE
virtual const CaloDetDescrElement * getFCalDDE(int sampling, float x, float y, float z, float *distance=0, int *steps=0)=0
ICaloGeometry::rent
virtual double rent(int sample, double eta) const =0
y
#define y
ICaloGeometry::rzent
virtual double rzent(int sample, double eta) const =0
ICaloGeometry::zpos
virtual double zpos(int sample, double eta, int subpos=CaloSubPos::SUBPOS_MID) const =0
ICaloGeometry::zent
virtual double zent(int sample, double eta) const =0
FastCaloSim_CaloCell_ID.h
checker_macros.h
Define macros for attributes used to control the static checker.
ICaloGeometry::rzpos
virtual double rzpos(int sample, double eta, int subpos=CaloSubPos::SUBPOS_MID) const =0
Amg::distance
float distance(const Amg::Vector3D &p1, const Amg::Vector3D &p2)
calculates the distance between two point in 3D space
Definition: GeoPrimitivesHelpers.h:54
ICaloGeometry::getDDE
virtual const CaloDetDescrElement * getDDE(Identifier identify)=0
ICaloGeometry::getDDE
virtual const CaloDetDescrElement * getDDE(int sampling, float eta, float phi, float *distance=0, int *steps=0)=0
ICaloGeometry::rzext
virtual double rzext(int sample, double eta) const =0
ICaloGeometry::rzmid
virtual double rzmid(int sample, double eta) const =0