ATLAS Offline Software
Loading...
Searching...
No Matches
egammaShowerShape Class Reference

@ More...

#include <egammaShowerShape.h>

Inheritance diagram for egammaShowerShape:
Collaboration diagram for egammaShowerShape:

Public Member Functions

 egammaShowerShape (const std::string &type, const std::string &name, const IInterface *parent)
 Default constructor.
 ~egammaShowerShape ()=default
 Destructor.
StatusCode initialize () override
 AlgTool initialize method.
StatusCode finalize () override
 AlgTool finalize method.
virtual StatusCode execute (const xAOD::CaloCluster &cluster, const CaloDetDescrManager &cmgr, const CaloCellContainer &cell_container, Info &info) const override final
 AlgTool main method.
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.
virtual StatusCode sysInitialize () override
 Perform system initialization for an algorithm.
virtual StatusCode sysStart () override
 Handle START transition.
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles.
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles.
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T, V, H > &t)
void updateVHKA (Gaudi::Details::PropertyBase &)
MsgStream & msg () const
bool msgLvl (const MSG::Level lvl) const

Static Public Member Functions

static const InterfaceID & interfaceID ()
 AlgTool interface methods.

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed.

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t

Private Member Functions

Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey>

Private Attributes

Gaudi::Property< bool > m_ExecAllVariables
 boolean to calculate all variables
Gaudi::Property< bool > m_ExecPreSampler
 boolean to calculate variables for presempler
Gaudi::Property< bool > m_ExecEMFirst
 boolean to calculate variables for 1st sampling
Gaudi::Property< bool > m_ExecEMSecond
 boolean to calculate variables for 2nd sampling
Gaudi::Property< bool > m_ExecEMThird
 boolean to calculate variables for 3rd sampling
Gaudi::Property< bool > m_ExecEMCombined
 boolean to calculate combined variables
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default)
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
bool m_varHandleArraysDeclared

Detailed Description

@

EM cluster shower shape calculations. Calculate the width in the strip layer around the eta,phi of the hottest cell in the middle layer.

Author
Frederic Derue derue.nosp@m.@lpn.nosp@m.he.in.nosp@m.2p3..nosp@m.fr
Christos Anastopoulos

$Revision:$

Date
2014-02-11 17:40:48 +0100 (Tue, 11 Feb 2014)

Definition at line 35 of file egammaShowerShape.h.

Member Typedef Documentation

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< AlgTool > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ egammaShowerShape()

egammaShowerShape::egammaShowerShape ( const std::string & type,
const std::string & name,
const IInterface * parent )

Default constructor.

Definition at line 9 of file egammaShowerShape.cxx.

12 : AthAlgTool(type, name, parent){
13 // declare Interface
14 declareInterface<IegammaShowerShape>(this);
15 }
AthAlgTool()
Default constructor:

◆ ~egammaShowerShape()

egammaShowerShape::~egammaShowerShape ( )
default

Destructor.

Member Function Documentation

◆ declareGaudiProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > & hndl,
const SG::VarHandleKeyType &  )
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158 {
160 hndl.value(),
161 hndl.documentation());
162
163 }
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)

◆ declareProperty()

Gaudi::Details::PropertyBase & AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( Gaudi::Property< T, V, H > & t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145 {
146 typedef typename SG::HandleClassifier<T>::type htype;
148 }
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>

◆ detStore()

const ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

◆ evtStore()

ServiceHandle< StoreGateSvc > & AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

◆ execute()

StatusCode egammaShowerShape::execute ( const xAOD::CaloCluster & cluster,
const CaloDetDescrManager & cmgr,
const CaloCellContainer & cell_container,
Info & info ) const
finaloverridevirtual

AlgTool main method.

Implements IegammaShowerShape.

Definition at line 26 of file egammaShowerShape.cxx.

29 {
30
31 // check if cluster is in barrel or in the end-cap
32 if (!cluster.inBarrel() && !cluster.inEndcap()) {
33 ATH_MSG_WARNING(" egammaShowerShape: Cluster is neither in Barrel nor in "
34 "Endcap, cannot calculate ShowerShape ");
35 }
36
37 egammaPreSamplerShape::Info egammaPreSamplerShapeInfo;
38 egammaStripsShape::Info egammaStripsShapeInfo;
39 egammaMiddleShape::Info egammaMiddleShapeInfo;
40 egammaBackShape::Info egammaBackShapeInfo;
41
42 // shower shapes in presampler
44 // call execute method
46 cluster, cmgr, cell_container, egammaPreSamplerShapeInfo);
47 if (sc.isFailure()) {
48 ATH_MSG_WARNING("Presampler shape returned failure ");
49 }
50 }
51
52 // shower shapes in 1st compartment
54 // call the execute method
56 egammaStripsShape::execute(cluster, cmgr, egammaStripsShapeInfo);
57 if (sc.isFailure()) {
58 ATH_MSG_WARNING("Strip shape returned failure ");
59 }
60 }
61
62 // shower shapes in 2nd compartment
64 // call the execute method
66 cluster, cmgr, cell_container, egammaMiddleShapeInfo);
67 if (sc.isFailure()) {
68 ATH_MSG_WARNING("Middle shape returned failure ");
69 }
70 }
71
72 // shower shapes in 3rd compartment
74 // call execute method
76 cluster, cmgr, cell_container, egammaBackShapeInfo);
77 if (sc.isFailure()) {
78 ATH_MSG_DEBUG("Back shape returned failure ");
79 }
80 }
81 /*
82 * Fill egammaShowerShape object
83 * with values from other tools
84 */
85
86 // presampler
87 info.e011 = egammaPreSamplerShapeInfo.e011;
88 info.e033 = egammaPreSamplerShapeInfo.e033;
89
90 // strips
91 info.etot = egammaStripsShapeInfo.etot;
92 info.e1152 = egammaStripsShapeInfo.e1152;
93 info.e132 = egammaStripsShapeInfo.e132;
94 info.emaxs1 = egammaStripsShapeInfo.emaxs1;
95 info.emins1 = egammaStripsShapeInfo.emins1;
96 info.esec = egammaStripsShapeInfo.esec;
97 info.esec1 = egammaStripsShapeInfo.esec1;
98 info.f1 = egammaStripsShapeInfo.f1;
99 info.f1core = egammaStripsShapeInfo.f1core;
100 info.f2 = egammaStripsShapeInfo.f2;
101 info.ncetamax = egammaStripsShapeInfo.ncetamax;
102 info.ncetaseed = egammaStripsShapeInfo.ncetaseed;
103 info.etas3 = egammaStripsShapeInfo.etas3;
104 info.poscs1 = egammaStripsShapeInfo.poscs1;
105 info.deltaEtaTrackShower = egammaStripsShapeInfo.deltaEtaTrackShower;
106 info.deltaEtaTrackShower7 = egammaStripsShapeInfo.deltaEtaTrackShower7;
107 info.wstot = egammaStripsShapeInfo.wstot;
108 info.ws3 = egammaStripsShapeInfo.ws3;
109 info.ws3c = egammaStripsShapeInfo.ws3c;
110 info.widths5 = egammaStripsShapeInfo.widths5;
111 info.asymmetrys3 = egammaStripsShapeInfo.asymmetrys3;
112 info.val = egammaStripsShapeInfo.val;
113 info.fside = egammaStripsShapeInfo.fside;
114 info.success = egammaStripsShapeInfo.success;
115
116 // middle
117 info.e233 = egammaMiddleShapeInfo.e233;
118 info.e235 = egammaMiddleShapeInfo.e235;
119 info.e255 = egammaMiddleShapeInfo.e255;
120 info.e237 = egammaMiddleShapeInfo.e237;
121 info.e277 = egammaMiddleShapeInfo.e277;
122 info.etaw = egammaMiddleShapeInfo.etaw;
123 info.width = egammaMiddleShapeInfo.width;
124 info.phiw = egammaMiddleShapeInfo.phiw;
125 info.poscs2 = egammaMiddleShapeInfo.poscs2;
126
127 // back
128 info.e333 = egammaBackShapeInfo.e333;
129 info.e335 = egammaBackShapeInfo.e335;
130 info.e355 = egammaBackShapeInfo.e355;
131 info.e337 = egammaBackShapeInfo.e337;
132 info.e377 = egammaBackShapeInfo.e377;
133 info.f3 = egammaBackShapeInfo.f3;
134 info.f3core = egammaBackShapeInfo.f3core;
135
136 // shower shapes combined in different samplings
138 /* Shower shapes combining different samplings
139 * all energy values have to be initialised to zero
140 * which is equivalent to have nothing (if it does not exists)
141 * or 0 if there is no deposit
142 */
143
144 // energy in 3 strips in the 1st sampling
145 double e132 = (info.e132 > -999.) ? info.e132 : 0.;
146
147 // energy in 1X1 in the presampler
148 double e011 = (info.e011 > -999.) ? info.e011 : 0.;
149 // energy in 3X3 in the presampler
150 double e033 = (info.e033 > -999.) ? info.e033 : 0.;
151 // energy in 15 strips in the 1st sampling
152 double e1152 = (info.e1152 > -999.) ? info.e1152 : 0.;
153 // energy in 3X3 in the 2nd sampling
154 double e233 = (info.e233 > -999.) ? info.e233 : 0.;
155 // energy in 5X5 in the 2nd sampling
156 double e255 = (info.e255 > -999.) ? info.e255 : 0.;
157 // energy in 3X7 in the 2nd sampling
158 double e237 = (info.e237 > -999.) ? info.e237 : 0.;
159 // energy in 3X3 in the 3rd sampling
160 double e333 = (info.e333 > -999.) ? info.e333 : 0.;
161 // energy in 3X5 in the 3rd sampling
162 double e335 = (info.e335 > -999.) ? info.e335 : 0.;
163 // energy in 3X7 in the 3rd sampling
164 double e337 = (info.e337 > -999.) ? info.e337 : 0.;
165
166 /*energy in core of the shower
167 * 3X3 in the presampler (info.e033)
168 * 15X2 in the strips (info.e1152)
169 * 5X5 in the middle (info.e255)
170 * 3X5 in the back (info.e335)
171 */
172 info.ecore = e033 + e1152 + e255 + e335;
173
174 /* e 3X3 / e 3X7, the ratio of energies deposited
175 * in a 3X3 and 3X7 clusters. More precisely,
176 * for the 3X3 cluster, sampling by sampling, the cell energies
177 * are summed on the following eta by phi windows
178 * 1X1 in the presampler (info.e011)
179 * 3X2 in the strips (info.e132)
180 * 3X3 in the middle (info.e233)
181 * 3X3 in the back (info.e333)
182 * for the 7X3 cluster, sampling by sampling, the cell energies
183 * are summed on the following eta by phi windows
184 * 3X3 in the presampler (info.e033)
185 * 15X2 in the strips (info.e1152)
186 * 3X7 in the middle (info.e237)
187 * 3X7 in the back (info.e337)
188 */
189 double e33 = e011 + e132 + e233 + e333;
190 double e37 = e033 + e1152 + e237 + e337;
191 info.reta3337_allcalo = fabs(e37) > 0. ? 1. - e33 / e37 : 1.;
192 }
193 return StatusCode::SUCCESS;
194}
#define ATH_MSG_WARNING(x)
#define ATH_MSG_DEBUG(x)
static Double_t sc
Gaudi::Property< bool > m_ExecPreSampler
boolean to calculate variables for presempler
Gaudi::Property< bool > m_ExecEMSecond
boolean to calculate variables for 2nd sampling
Gaudi::Property< bool > m_ExecEMCombined
boolean to calculate combined variables
Gaudi::Property< bool > m_ExecEMFirst
boolean to calculate variables for 1st sampling
Gaudi::Property< bool > m_ExecEMThird
boolean to calculate variables for 3rd sampling
Gaudi::Property< bool > m_ExecAllVariables
boolean to calculate all variables
bool inBarrel() const
Returns true if at least one clustered cell in the barrel.
bool inEndcap() const
Returns true if at least one clustered cell in the endcap.
::StatusCode StatusCode
StatusCode definition for legacy code.
@ e337
uncalibrated energy (sum of cells) of the third sampling in a rectangle of size 3x7
Definition EgammaEnums.h:90
@ e237
uncalibrated energy (sum of cells) of the middle sampling in a rectangle of size 3x7
Definition EgammaEnums.h:78
@ e1152
uncalibrated energy (sum of cells) in strips in a 15x2 window in cells in eta X phi
Definition EgammaEnums.h:40
@ e335
uncalibrated energy (sum of cells) of the third sampling in a rectangle of size 3x5
Definition EgammaEnums.h:87
@ e333
uncalibrated energy (sum of cells) of the third sampling in a rectangle of size 3x3
Definition EgammaEnums.h:84
@ e255
uncalibrated energy (sum of cells) of the middle sampling in a rectangle of size 5x5
Definition EgammaEnums.h:75
@ e233
uncalibrated energy (sum of cells) of the middle sampling in a rectangle of size 3x3 (in cell units e...
Definition EgammaEnums.h:69
@ e033
uncalibrated energy (sum of cells) in presampler in a 3x3 window in cells in eta X phi
Definition EgammaEnums.h:34
@ e132
uncalibrated energy (sum of cells) in strips in a 3x2 window in cells in eta X phi
Definition EgammaEnums.h:37
@ e011
uncalibrated energy (sum of cells) in presampler in a 1x1 window in cells in eta X phi
Definition EgammaEnums.h:31
static StatusCode execute(const xAOD::CaloCluster &cluster, const CaloDetDescrManager &cmgr, const CaloCellContainer &cell_container, Info &info, bool ExecOtherVariables=true)
static StatusCode execute(const xAOD::CaloCluster &cluster, const CaloDetDescrManager &cmgr, const CaloCellContainer &cell_container, Info &info, bool doRetaOnly=false)
static StatusCode execute(const xAOD::CaloCluster &cluster, const CaloDetDescrManager &cmgr, const CaloCellContainer &cell_container, Info &info)
static StatusCode execute(const xAOD::CaloCluster &cluster, const CaloDetDescrManager &cmgr, Info &info, bool ExecAllVariables=true)
AlgTool main method.

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase & ExtraDeps)
protectedinherited

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 egammaShowerShape::finalize ( )
override

AlgTool finalize method.

Definition at line 22 of file egammaShowerShape.cxx.

22 {
23 return StatusCode::SUCCESS;
24}

◆ initialize()

StatusCode egammaShowerShape::initialize ( )
override

AlgTool initialize method.

Definition at line 17 of file egammaShowerShape.cxx.

17 {
18 ATH_MSG_DEBUG(" Initializing egammaShowerShape");
19 return StatusCode::SUCCESS;
20}

◆ inputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::inputHandles ( ) const
overridevirtualinherited

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 & IegammaShowerShape::interfaceID ( )
inlinestaticinherited

AlgTool interface methods.

Definition at line 113 of file IegammaShowerShape.h.

114{
116}
static const InterfaceID IID_IegammaShowerShape("IegammaShowerShape", 1, 0)

◆ msg()

MsgStream & AthCommonMsg< AlgTool >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24 {
25 return this->msgStream();
26 }

◆ msgLvl()

bool AthCommonMsg< AlgTool >::msgLvl ( const MSG::Level lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30 {
31 return this->msgLevel(lvl);
32 }

◆ outputHandles()

virtual std::vector< Gaudi::DataHandle * > AthCommonDataStore< AthCommonMsg< AlgTool > >::outputHandles ( ) const
overridevirtualinherited

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.

◆ renounce()

std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > AthCommonDataStore< AthCommonMsg< AlgTool > >::renounce ( T & h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381 {
382 h.renounce();
384 }
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce(T &h)

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::renounceArray ( SG::VarHandleKeyArray & handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364 {
366 }

◆ sysInitialize()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysInitialize ( )
overridevirtualinherited

Perform system initialization for an algorithm.

We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.

Reimplemented in asg::AsgMetadataTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and DerivationFramework::CfAthAlgTool.

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::updateVHKA ( Gaudi::Details::PropertyBase & )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308 {
309 // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310 // << " size: " << m_vhka.size() << endmsg;
311 for (auto &a : m_vhka) {
313 for (auto k : keys) {
314 k->setOwner(this);
315 }
316 }
317 }
std::vector< SG::VarHandleKeyArray * > m_vhka

Member Data Documentation

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_ExecAllVariables

Gaudi::Property<bool> egammaShowerShape::m_ExecAllVariables
private
Initial value:
{this,
"ExecAllVariables", true, "flag used by trigger"}

boolean to calculate all variables

Definition at line 60 of file egammaShowerShape.h.

60 {this,
61 "ExecAllVariables", true, "flag used by trigger"};

◆ m_ExecEMCombined

Gaudi::Property<bool> egammaShowerShape::m_ExecEMCombined
private
Initial value:
{this,
"ExecEMCombined", true,
"Calculate EM variables combining all samplings"}

boolean to calculate combined variables

Definition at line 80 of file egammaShowerShape.h.

80 {this,
81 "ExecEMCombined", true,
82 "Calculate EM variables combining all samplings"};

◆ m_ExecEMFirst

Gaudi::Property<bool> egammaShowerShape::m_ExecEMFirst
private
Initial value:
{this,
"ExecEMFirst", true, "Calculate EM 1st sampling variables"}

boolean to calculate variables for 1st sampling

Definition at line 68 of file egammaShowerShape.h.

68 {this,
69 "ExecEMFirst", true, "Calculate EM 1st sampling variables"};

◆ m_ExecEMSecond

Gaudi::Property<bool> egammaShowerShape::m_ExecEMSecond
private
Initial value:
{this,
"ExecEMSecond", true, "Calculate EM 2nd sampling variables"}

boolean to calculate variables for 2nd sampling

Definition at line 72 of file egammaShowerShape.h.

72 {this,
73 "ExecEMSecond", true, "Calculate EM 2nd sampling variables"};

◆ m_ExecEMThird

Gaudi::Property<bool> egammaShowerShape::m_ExecEMThird
private
Initial value:
{this,
"ExecEMThird", true, "Calculate EM 3rd sampling variables"}

boolean to calculate variables for 3rd sampling

Definition at line 76 of file egammaShowerShape.h.

76 {this,
77 "ExecEMThird", true, "Calculate EM 3rd sampling variables"};

◆ m_ExecPreSampler

Gaudi::Property<bool> egammaShowerShape::m_ExecPreSampler
private
Initial value:
{this,
"ExecPreSampler", true, "Calculate EM presampler variables"}

boolean to calculate variables for presempler

Definition at line 64 of file egammaShowerShape.h.

64 {this,
65 "ExecPreSampler", true, "Calculate EM presampler variables"};

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< AlgTool > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.


The documentation for this class was generated from the following files: