![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
This class implements the CaloDetDescr/ICaloRecoMaterialTool and provides the average materials needed for the LAr part of the Calorimeter/CaloTrackingGeometry volumes.
More...
#include <LArRecoMaterialTool.h>
|
| LArRecoMaterialTool (const std::string &type, const std::string &name, const IInterface *parent) |
|
| ~LArRecoMaterialTool () |
|
virtual StatusCode | initialize () override |
|
virtual StatusCode | finalize () override |
|
virtual bool | get_material (CaloSubdetNames::ALIGNVOL alvol, double &mass, double &volume, double &x0, double &dEdx, double &aveA, double &aveZ) const override |
| the enum ALIGNVOL covers all LAr pieces, including cryostats More...
|
|
virtual void | get_default_material (double &density, double &x0, double &dEdx, double &aveA, double &aveZ) const override |
| default material used to fill the envelope More...
|
|
void | print () const override |
| printout method More...
|
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysInitialize () override |
| Perform system initialization for an algorithm. More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
|
void | ScanTree () |
| Private method called at initialisation : fills all arrays by calling the "optimised" methods. More...
|
|
bool | ScanCRYO (CaloSubdetNames::ALIGNVOL alvol, double &mass, double &x0, double &dEdx, double &aveA, double &aveZ) |
| Private optimised methods for each subsystem. More...
|
|
bool | ScanPS (CaloSubdetNames::ALIGNVOL alvol, double &mass, double &x0, double &dEdx, double &aveA, double &aveZ) |
|
bool | ScanEMB (CaloSubdetNames::ALIGNVOL alvol, double &mass, double &x0, double &dEdx, double &aveA, double &aveZ) |
|
bool | ScanEMEC (CaloSubdetNames::ALIGNVOL alvol, double &mass, double &x0, double &dEdx, double &aveA, double &aveZ) |
|
bool | ScanHEC (CaloSubdetNames::ALIGNVOL alvol, double &mass, double &x0, double &dEdx, double &aveA, double &aveZ) |
|
bool | ScanFCAL (CaloSubdetNames::ALIGNVOL alvol, double &mass, double &x0, double &dEdx, double &aveA, double &aveZ) |
|
void | blendGeoVolume (GeoPVConstLink &geoVolLink, std::vector< double > &volume, std::vector< double > &mass, std::vector< double > &x0, std::vector< double > &dEdX, std::vector< double > &aveA, std::vector< double > &aveZ) const |
| Private method to blend GeoLogVolume. More...
|
|
void | addMaterialFraction (const GeoLogVol &geoVol, std::vector< double > &volume, std::vector< double > &mass, std::vector< double > &x0, std::vector< double > &dEdX, std::vector< double > &aveA, std::vector< double > &aveZ) const |
| Private method to add material. More...
|
|
void | averageFraction (std::vector< double > &volumeFractions, std::vector< double > &massFractions, std::vector< double > &x0Fractions, std::vector< double > &dEdXFractions, std::vector< double > &aveAFractions, std::vector< double > &aveZFractions, double &mass, double &volume, double &x0, double &dEdx, double &aveA, double &aveZ, double &rho) |
| Private method to average results stored in private arrays. More...
|
|
std::string | map_av (CaloSubdetNames::ALIGNVOL alvol) |
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &) |
| specialization for handling Gaudi::Property<SG::VarHandleBase> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &) |
| specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
|
|
This class implements the CaloDetDescr/ICaloRecoMaterialTool and provides the average materials needed for the LAr part of the Calorimeter/CaloTrackingGeometry volumes.
For this, it uses the PVLinks provided by the LArSubdetPosHelper.
Note that it means that eta/phi dependencies of the material within a given GeoModel volume is not supported : although an interface using the CaloDM identifiers is foreseen, numbers will be averaged.
Interface and implementation are preliminary !!!!
Definition at line 43 of file LArRecoMaterialTool.h.
◆ StoreGateSvc_t
◆ LArRecoMaterialTool()
LArRecoMaterialTool::LArRecoMaterialTool |
( |
const std::string & |
type, |
|
|
const std::string & |
name, |
|
|
const IInterface * |
parent |
|
) |
| |
◆ ~LArRecoMaterialTool()
LArRecoMaterialTool::~LArRecoMaterialTool |
( |
| ) |
|
◆ addMaterialFraction()
void LArRecoMaterialTool::addMaterialFraction |
( |
const GeoLogVol & |
geoVol, |
|
|
std::vector< double > & |
volume, |
|
|
std::vector< double > & |
mass, |
|
|
std::vector< double > & |
x0, |
|
|
std::vector< double > & |
dEdX, |
|
|
std::vector< double > & |
aveA, |
|
|
std::vector< double > & |
aveZ |
|
) |
| const |
|
private |
Private method to add material.
Definition at line 1069 of file LArRecoMaterialTool.cxx.
1077 const GeoShape* childShape = geoVol.getShape();
1078 const GeoMaterial* childMaterial = geoVol.getMaterial();
1080 double childVolume = childShape->volume();
1082 double childNumberOfElements = childMaterial->getNumElements();
1083 double childX0 = childMaterial->getRadLength ();
1084 double childDeDx = childMaterial->getDeDxMin();
1085 double childRho = childMaterial->getDensity();
1088 <<
" has volume=" << childVolume <<
" mm**3 and "
1089 << childNumberOfElements <<
" elements ");
1091 for (
unsigned int iEl=0; iEl<childNumberOfElements; iEl++){
1092 const GeoElement* geoEl = childMaterial->getElement(iEl);
1093 double fraction = childMaterial->getFraction(iEl);
1095 ATH_MSG_DEBUG (
" direct child : " << geoEl->getName() <<
" fraction = " << fraction
1098 volume.push_back(fraction*childVolume);
1099 mass.push_back(fraction*childVolume*childRho);
1100 x0.push_back(fraction*childX0);
1101 dEdX.push_back(fraction*childDeDx);
1103 aveZ.push_back(fraction*(geoEl->getZ()));
◆ averageFraction()
void LArRecoMaterialTool::averageFraction |
( |
std::vector< double > & |
volumeFractions, |
|
|
std::vector< double > & |
massFractions, |
|
|
std::vector< double > & |
x0Fractions, |
|
|
std::vector< double > & |
dEdXFractions, |
|
|
std::vector< double > & |
aveAFractions, |
|
|
std::vector< double > & |
aveZFractions, |
|
|
double & |
mass, |
|
|
double & |
volume, |
|
|
double & |
x0, |
|
|
double & |
dEdx, |
|
|
double & |
aveA, |
|
|
double & |
aveZ, |
|
|
double & |
rho |
|
) |
| |
|
private |
Private method to average results stored in private arrays.
Definition at line 1109 of file LArRecoMaterialTool.cxx.
1119 unsigned int parsedVolumes = massFractions.size();
1121 << parsedVolumes <<
" elements ");
1131 for (
unsigned int ivols = 0; ivols < parsedVolumes; ++ivols) {
1132 childMass += massFractions[ivols];
1133 childVolume += volumeFractions[ivols];
1136 for (
unsigned int ivolfrac = 0; ivolfrac < parsedVolumes; ++ivolfrac){
1137 double volfrac = volumeFractions[ivolfrac]/childVolume;
1138 childX0 += volfrac * x0Fractions[ivolfrac];
1139 childDeDx += volfrac * dEdXFractions[ivolfrac];
1140 double massfrac = massFractions[ivolfrac]/childMass;
1141 childAverageA += massfrac * averageAFractions[ivolfrac];
1142 childAverageZ += massfrac * averageZFractions[ivolfrac];
1148 ATH_MSG_DEBUG (
" + averaged over " << parsedVolumes <<
" volumes ");
◆ blendGeoVolume()
void LArRecoMaterialTool::blendGeoVolume |
( |
GeoPVConstLink & |
geoVolLink, |
|
|
std::vector< double > & |
volume, |
|
|
std::vector< double > & |
mass, |
|
|
std::vector< double > & |
x0, |
|
|
std::vector< double > & |
dEdX, |
|
|
std::vector< double > & |
aveA, |
|
|
std::vector< double > & |
aveZ |
|
) |
| const |
|
private |
Private method to blend GeoLogVolume.
Definition at line 1048 of file LArRecoMaterialTool.cxx.
1057 const GeoLogVol* currentVol = geoVolLink->getLogVol();
1060 unsigned int currentVolChilds = geoVolLink->getNChildVols();
1061 for (
unsigned int ichild = 0; ichild < currentVolChilds; ichild++){
1062 GeoPVConstLink childVolumeLink = geoVolLink->getChildVol(ichild);
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ finalize()
StatusCode LArRecoMaterialTool::finalize |
( |
| ) |
|
|
overridevirtual |
◆ get_default_material()
void LArRecoMaterialTool::get_default_material |
( |
double & |
density, |
|
|
double & |
x0, |
|
|
double & |
dEdx, |
|
|
double & |
aveA, |
|
|
double & |
aveZ |
|
) |
| const |
|
overridevirtual |
◆ get_material()
bool LArRecoMaterialTool::get_material |
( |
CaloSubdetNames::ALIGNVOL |
alvol, |
|
|
double & |
mass, |
|
|
double & |
volume, |
|
|
double & |
x0, |
|
|
double & |
dEdx, |
|
|
double & |
aveA, |
|
|
double & |
aveZ |
|
) |
| const |
|
overridevirtual |
◆ initialize()
StatusCode LArRecoMaterialTool::initialize |
( |
| ) |
|
|
overridevirtual |
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ interfaceID()
const InterfaceID & LArRecoMaterialTool::interfaceID |
( |
| ) |
|
|
static |
◆ map_av()
Definition at line 1161 of file LArRecoMaterialTool.cxx.
1166 return std::string(
"LARCRYO_B");
1168 return std::string(
"LARCRYO_EC_POS");
1170 return std::string(
"LARCRYO_EC_NEG");
1172 return std::string(
"SOLENOID");
1174 return std::string(
"PRESAMPLER_B_POS");
1176 return std::string(
"PRESAMPLER_B_NEG");
1178 return std::string(
"EMB_POS");
1180 return std::string(
"EMB_NEG");
1182 return std::string(
"PRESAMPLER_EC_POS");
1184 return std::string(
"PRESAMPLER_EC_NEG");
1186 return std::string(
"EMEC_POS");
1188 return std::string(
"EMEC_NEG");
1190 return std::string(
"HEC1_POS");
1192 return std::string(
"HEC1_NEG");
1194 return std::string(
"HEC2_POS");
1196 return std::string(
"HEC2_NEG");
1198 return std::string(
"FCAL1_POS");
1200 return std::string(
"FCAL1_NEG");
1202 return std::string(
"FCAL2_POS");
1204 return std::string(
"FCAL2_NEG");
1206 return std::string(
"FCAL3_POS");
1208 return std::string(
"FCAL3_NEG");
1210 return std::string(
"");
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ print()
void LArRecoMaterialTool::print |
( |
| ) |
const |
|
overridevirtual |
◆ renounce()
◆ renounceArray()
◆ ScanCRYO()
bool LArRecoMaterialTool::ScanCRYO |
( |
CaloSubdetNames::ALIGNVOL |
alvol, |
|
|
double & |
mass, |
|
|
double & |
x0, |
|
|
double & |
dEdx, |
|
|
double & |
aveA, |
|
|
double & |
aveZ |
|
) |
| |
|
private |
Private optimised methods for each subsystem.
Definition at line 191 of file LArRecoMaterialTool.cxx.
205 ATH_MSG_INFO (
"method ScanCryo does not support CaloSubdetNames::ALIGNVOL " << (
int) alvol);
246 double childVolume = 0.;
247 double childMass = 0.;
249 double childDeDx = 0.;
250 double childAverageA = 0.;
251 double childAverageZ = 0.;
252 double childRho = 0.;
269 const GeoFullPhysVol* larTopVolLink = storedPV->
getPhysVol();
272 unsigned int larChilds = larTopVolLink->getNChildVols();
274 for (
unsigned int ichild = 0; ichild<larChilds; ++ichild){
280 larTopVolLink->getNameOfChildVol(ichild) ==
"Total LAR Volume")
stop =
true;
282 larTopVolLink->getNameOfChildVol(ichild) ==
"Total LAR Volume")
stop =
true;
287 <<
" Direct Child " << ichild <<
" - with name : "
288 << larTopVolLink->getNameOfChildVol(ichild));
290 PVConstLink childVolLink = larTopVolLink->getChildVol(ichild);
313 childMass, childVolume,
315 childAverageA, childAverageZ, childRho );
330 ATH_MSG_DEBUG (
"Final average for CaloSubdetNames::ALIGNVOL " << (
int) alvol
338 childMass, childVolume,
340 childAverageA, childAverageZ, childRho );
345 aveA = childAverageA;
346 aveZ = childAverageZ;
◆ ScanEMB()
bool LArRecoMaterialTool::ScanEMB |
( |
CaloSubdetNames::ALIGNVOL |
alvol, |
|
|
double & |
mass, |
|
|
double & |
x0, |
|
|
double & |
dEdx, |
|
|
double & |
aveA, |
|
|
double & |
aveZ |
|
) |
| |
|
private |
Definition at line 519 of file LArRecoMaterialTool.cxx.
531 ATH_MSG_INFO (
"method ScanEMB does not support CaloSubdetNames::ALIGNVOL " << (
int) alvol);
557 double childVolume = 0.;
558 double childMass = 0.;
560 double childDeDx = 0.;
561 double childAverageA = 0.;
562 double childAverageZ = 0.;
563 double childRho = 0.;
585 const GeoFullPhysVol* larTopVolLink = storedPV->
getPhysVol();
588 unsigned int larChilds = larTopVolLink->getNChildVols();
590 for (
unsigned int ichild = 0; ichild<larChilds; ++ichild){
601 <<
" Direct Child " << ichild <<
" - with name : "
602 << larTopVolLink->getNameOfChildVol(ichild));
604 PVConstLink childVolLink = larTopVolLink->getChildVol(ichild);
627 childMass, childVolume,
629 childAverageA, childAverageZ, childRho );
644 ATH_MSG_DEBUG (
"Final average for CaloSubdetNames::ALIGNVOL " << (
int) alvol
652 childMass, childVolume,
654 childAverageA, childAverageZ, childRho );
659 aveA = childAverageA;
660 aveZ = childAverageZ;
◆ ScanEMEC()
bool LArRecoMaterialTool::ScanEMEC |
( |
CaloSubdetNames::ALIGNVOL |
alvol, |
|
|
double & |
mass, |
|
|
double & |
x0, |
|
|
double & |
dEdx, |
|
|
double & |
aveA, |
|
|
double & |
aveZ |
|
) |
| |
|
private |
◆ ScanFCAL()
bool LArRecoMaterialTool::ScanFCAL |
( |
CaloSubdetNames::ALIGNVOL |
alvol, |
|
|
double & |
mass, |
|
|
double & |
x0, |
|
|
double & |
dEdx, |
|
|
double & |
aveA, |
|
|
double & |
aveZ |
|
) |
| |
|
private |
Definition at line 870 of file LArRecoMaterialTool.cxx.
886 ATH_MSG_INFO (
"method ScanEMB does not support CaloSubdetNames::ALIGNVOL "
931 double childVolume = 0.;
932 double childMass = 0.;
934 double childDeDx = 0.;
935 double childAverageA = 0.;
936 double childAverageZ = 0.;
937 double childRho = 0.;
959 const GeoFullPhysVol* larTopVolLink = storedPV->
getPhysVol();
962 unsigned int larChilds = larTopVolLink->getNChildVols();
964 for (
unsigned int ichild = 0; ichild<larChilds; ++ichild){
975 <<
" Direct Child " << ichild <<
" - with name : "
976 << larTopVolLink->getNameOfChildVol(ichild));
978 PVConstLink childVolLink = larTopVolLink->getChildVol(ichild);
1001 childMass, childVolume,
1003 childAverageA, childAverageZ, childRho );
1018 ATH_MSG_DEBUG (
"Final average for CaloSubdetNames::ALIGNVOL " << (
int) alvol
1026 childMass, childVolume,
1028 childAverageA, childAverageZ, childRho );
1033 aveA = childAverageA;
1034 aveZ = childAverageZ;
◆ ScanHEC()
bool LArRecoMaterialTool::ScanHEC |
( |
CaloSubdetNames::ALIGNVOL |
alvol, |
|
|
double & |
mass, |
|
|
double & |
x0, |
|
|
double & |
dEdx, |
|
|
double & |
aveA, |
|
|
double & |
aveZ |
|
) |
| |
|
private |
Definition at line 712 of file LArRecoMaterialTool.cxx.
726 ATH_MSG_INFO (
"method ScanEMB does not support CaloSubdetNames::ALIGNVOL "
753 double childVolume = 0.;
754 double childMass = 0.;
756 double childDeDx = 0.;
757 double childAverageA = 0.;
758 double childAverageZ = 0.;
759 double childRho = 0.;
781 const GeoFullPhysVol* larTopVolLink = storedPV->
getPhysVol();
784 unsigned int larChilds = larTopVolLink->getNChildVols();
786 for (
unsigned int ichild = 0; ichild<larChilds; ++ichild){
797 <<
" Direct Child " << ichild <<
" - with name : "
798 << larTopVolLink->getNameOfChildVol(ichild));
800 PVConstLink childVolLink = larTopVolLink->getChildVol(ichild);
823 childMass, childVolume,
825 childAverageA, childAverageZ, childRho );
840 ATH_MSG_DEBUG (
"Final average for CaloSubdetNames::ALIGNVOL " << (
int) alvol
848 childMass, childVolume,
850 childAverageA, childAverageZ, childRho );
855 aveA = childAverageA;
856 aveZ = childAverageZ;
◆ ScanPS()
bool LArRecoMaterialTool::ScanPS |
( |
CaloSubdetNames::ALIGNVOL |
alvol, |
|
|
double & |
mass, |
|
|
double & |
x0, |
|
|
double & |
dEdx, |
|
|
double & |
aveA, |
|
|
double & |
aveZ |
|
) |
| |
|
private |
Definition at line 361 of file LArRecoMaterialTool.cxx.
376 ATH_MSG_INFO (
"method ScanCryo does not support CaloSubdetNames::ALIGNVOL " << (
int) alvol);
407 double childVolume = 0.;
408 double childMass = 0.;
410 double childDeDx = 0.;
411 double childAverageA = 0.;
412 double childAverageZ = 0.;
413 double childRho = 0.;
430 const GeoFullPhysVol* larTopVolLink = storedPV->
getPhysVol();
433 unsigned int larChilds = larTopVolLink->getNChildVols();
435 for (
unsigned int ichild = 0; ichild<larChilds; ++ichild){
446 <<
" Direct Child " << ichild <<
" - with name : "
447 << larTopVolLink->getNameOfChildVol(ichild));
449 PVConstLink childVolLink = larTopVolLink->getChildVol(ichild);
472 childMass, childVolume,
474 childAverageA, childAverageZ, childRho );
489 ATH_MSG_DEBUG (
"Final average for CaloSubdetNames::ALIGNVOL " << (
int) alvol
497 childMass, childVolume,
499 childAverageA, childAverageZ, childRho );
504 aveA = childAverageA;
505 aveZ = childAverageZ;
◆ ScanTree()
void LArRecoMaterialTool::ScanTree |
( |
| ) |
|
|
private |
Private method called at initialisation : fills all arrays by calling the "optimised" methods.
Definition at line 143 of file LArRecoMaterialTool.cxx.
◆ sysInitialize()
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ m_alignvol_aveA
std::vector<double> LArRecoMaterialTool::m_alignvol_aveA |
|
private |
◆ m_alignvol_aveZ
std::vector<double> LArRecoMaterialTool::m_alignvol_aveZ |
|
private |
◆ m_alignvol_dEdX
std::vector<double> LArRecoMaterialTool::m_alignvol_dEdX |
|
private |
◆ m_alignvol_mass
std::vector<double> LArRecoMaterialTool::m_alignvol_mass |
|
private |
◆ m_alignvol_number
◆ m_alignvol_x0
std::vector<double> LArRecoMaterialTool::m_alignvol_x0 |
|
private |
◆ m_averageAFractions
std::vector<double> LArRecoMaterialTool::m_averageAFractions |
|
private |
◆ m_averageZFractions
std::vector<double> LArRecoMaterialTool::m_averageZFractions |
|
private |
◆ m_calo_id
◆ m_child_averageAFractions
std::vector<double> LArRecoMaterialTool::m_child_averageAFractions |
|
private |
◆ m_child_averageZFractions
std::vector<double> LArRecoMaterialTool::m_child_averageZFractions |
|
private |
◆ m_child_dEdXFractions
std::vector<double> LArRecoMaterialTool::m_child_dEdXFractions |
|
private |
◆ m_child_Mass
std::vector<double> LArRecoMaterialTool::m_child_Mass |
|
private |
◆ m_child_massFractions
std::vector<double> LArRecoMaterialTool::m_child_massFractions |
|
private |
◆ m_child_Rho
std::vector<double> LArRecoMaterialTool::m_child_Rho |
|
private |
◆ m_child_Volume
std::vector<double> LArRecoMaterialTool::m_child_Volume |
|
private |
◆ m_child_volumeFractions
std::vector<double> LArRecoMaterialTool::m_child_volumeFractions |
|
private |
◆ m_child_x0Fractions
std::vector<double> LArRecoMaterialTool::m_child_x0Fractions |
|
private |
◆ m_dEdXFractions
std::vector<double> LArRecoMaterialTool::m_dEdXFractions |
|
private |
◆ m_detStore
◆ m_dm_id
◆ m_evtStore
◆ m_massFractions
std::vector<double> LArRecoMaterialTool::m_massFractions |
|
private |
◆ m_parseGeoModelForMaterial
bool LArRecoMaterialTool::m_parseGeoModelForMaterial = false |
|
private |
◆ m_varHandleArraysDeclared
◆ m_vhka
◆ m_volumeFractions
std::vector<double> LArRecoMaterialTool::m_volumeFractions |
|
private |
◆ m_x0Fractions
std::vector<double> LArRecoMaterialTool::m_x0Fractions |
|
private |
The documentation for this class was generated from the following files:
def retrieve(aClass, aKey=None)
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
const ServiceHandle< StoreGateSvc > & detStore() const
The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual void setOwner(IDataHandleHolder *o)=0
GeoFullPhysVol * getPhysVol()
Destructor.
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>