ATLAS Offline Software
ICaloRecoMaterialTool.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
13 #ifndef CALODETDESCR_ICALOMATERIALTOOL_H
14 #define CALODETDESCR_ICALOMATERIALTOOL_H
15 
16 #include "GaudiKernel/IAlgTool.h"
17 #include "Identifier/Identifier.h"
19 
35 class ICaloRecoMaterialTool : virtual public IAlgTool
36 {
37 public:
39 
43  double& mass, double& volume,
44  double& x0, double& dEdx,
45  double& aveA, double& aveZ
46  ) const = 0;
47 
50  virtual void get_default_material (double& density,
51  double& x0, double& dEdx,
52  double& aveA, double& aveZ
53  ) const = 0;
54 
57  virtual void print() const = 0;
58 
59 };
60 
61 
62 #endif // CALODETDESCR_ICALOMATERIALTOOL
63 
64 
65 
66 
67 
68 
ICaloRecoMaterialTool::DeclareInterfaceID
DeclareInterfaceID(ICaloRecoMaterialTool, 1, 0)
Base_Fragment.mass
mass
Definition: Sherpa_i/share/common/Base_Fragment.py:59
ICaloRecoMaterialTool::print
virtual void print() const =0
printout method
ICaloRecoMaterialTool
This (clean) interface is driven by 2 constraints :
Definition: ICaloRecoMaterialTool.h:36
ICaloRecoMaterialTool::get_default_material
virtual void get_default_material(double &density, double &x0, double &dEdx, double &aveA, double &aveZ) const =0
default material used to fill the envelope
ICaloRecoMaterialTool::get_material
virtual bool get_material(CaloSubdetNames::ALIGNVOL alvol, double &mass, double &volume, double &x0, double &dEdx, double &aveA, double &aveZ) const =0
the enum ALIGNVOL covers all LAr pieces, including cryostats
CaloSubdetNames.h
CaloSubdetNames declaration.
CaloSubdetNames::ALIGNVOL
ALIGNVOL
LAr Alignable volumes.
Definition: CaloSubdetNames.h:36