ATLAS Offline Software
Loading...
Searching...
No Matches
Trk::PositionMomentumWriter Class Reference

Position momentum writer. More...

#include <PositionMomentumWriter.h>

Inheritance diagram for Trk::PositionMomentumWriter:
Collaboration diagram for Trk::PositionMomentumWriter:

Public Member Functions

 PositionMomentumWriter (const std::string &, const std::string &, const IInterface *)
 standard AlgTool constructor / destructor
 ~PositionMomentumWriter ()
virtual StatusCode initialize () override
 standard Athena methods
virtual StatusCode finalize () override
virtual void initializeTrack (const Amg::Vector3D &pos, const Amg::Vector3D &mom, double m, int pdg) override
 Initialize State.
virtual void recordTrackState (const Amg::Vector3D &pos, const Amg::Vector3D &mom) override
 Record a single TrackState.
virtual void finalizeTrack () override
 Finalization State.
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 ()
 Interface ID, declared here, and defined below.

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

std::string m_treeName
std::string m_treeFolder
std::string m_treeDescription
TTree * m_tree
float m_pM
float m_pEta
float m_pPhi
float m_pE
float m_eEta
float m_ePhi
float m_eE
int m_pPdg
std::vector< float > * m_pPositionX
std::vector< float > * m_pPositionY
std::vector< float > * m_pPositionZ
std::vector< float > * m_pPositionR
std::vector< float > * m_pMomentumX
std::vector< float > * m_pMomentumY
std::vector< float > * m_pMomentumZ
std::vector< float > * m_pMomentumMag
std::vector< float > * m_pMomentumEta
std::vector< float > * m_pMomentumPhi
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

Position momentum writer.

Author
Andreas.Salzburger -at- cern.ch

Definition at line 27 of file PositionMomentumWriter.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

◆ PositionMomentumWriter()

Trk::PositionMomentumWriter::PositionMomentumWriter ( const std::string & t,
const std::string & n,
const IInterface * p )

standard AlgTool constructor / destructor

Definition at line 17 of file PositionMomentumWriter.cxx.

17 :
18 AthAlgTool(t,n,p),
19 m_treeName("PositionMomentumWriter"),
20 m_treeFolder("/val/"),
21 m_treeDescription("Position Momentum Writer"),
22 m_tree{},
23 m_pM{},
24 m_pEta{},
25 m_pPhi{},
26 m_pE{},
27 m_eEta{},
28 m_ePhi{},
29 m_eE{},
30 m_pPdg{},
32 m_pPositionY{},
36 m_pMomentumY{},
41
42
43{
44 declareInterface<Trk::IPositionMomentumWriter>(this);
45 // from outside
46 declareProperty("TreeName", m_treeName);
47 declareProperty("TreeFolder", m_treeFolder);
48 declareProperty("TreeDescription", m_treeDescription);
49}
AthAlgTool()
Default constructor:
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
std::vector< float > * m_pMomentumMag
std::vector< float > * m_pMomentumEta
std::vector< float > * m_pPositionY
std::vector< float > * m_pPositionZ
std::vector< float > * m_pMomentumZ
std::vector< float > * m_pPositionR
std::vector< float > * m_pMomentumPhi
std::vector< float > * m_pMomentumX
std::vector< float > * m_pPositionX
std::vector< float > * m_pMomentumY

◆ ~PositionMomentumWriter()

Trk::PositionMomentumWriter::~PositionMomentumWriter ( )
inline

Definition at line 31 of file PositionMomentumWriter.h.

31{}

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 }

◆ 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.

◆ 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 Trk::PositionMomentumWriter::finalize ( )
overridevirtual

Definition at line 127 of file PositionMomentumWriter.cxx.

128{
129 // delete the memory
130 delete m_pPositionX; m_pPositionX = nullptr;
131 delete m_pPositionY; m_pPositionY = nullptr;
132 delete m_pPositionZ; m_pPositionZ = nullptr;
133 delete m_pPositionR; m_pPositionR = nullptr;
134 delete m_pMomentumX; m_pMomentumX = nullptr;
135 delete m_pMomentumY; m_pMomentumY = nullptr;
136 delete m_pMomentumZ; m_pMomentumZ = nullptr;
137 delete m_pMomentumMag; m_pMomentumMag = nullptr;
138 delete m_pMomentumEta; m_pMomentumEta = nullptr;
139 delete m_pMomentumPhi; m_pMomentumPhi = nullptr;
140 // return success
141 return StatusCode::SUCCESS;
142}

◆ finalizeTrack()

void Trk::PositionMomentumWriter::finalizeTrack ( )
overridevirtual

Finalization State.

Implements Trk::IPositionMomentumWriter.

Definition at line 188 of file PositionMomentumWriter.cxx.

189{
190 if (m_tree){
191
192 if (!m_pMomentumX->empty()){
193 // the index of the last momentum record
194 size_t lIndex = size_t(m_pMomentumX->size()-1);
195 Amg::Vector3D lastMom(m_pMomentumX->at(lIndex),
196 m_pMomentumY->at(lIndex),
197 m_pMomentumZ->at(lIndex));
198 // end parameters
199 m_eE = sqrt(lastMom.mag()*lastMom.mag()+m_pM*m_pM);
200 m_eEta = lastMom.eta();
201 m_ePhi = lastMom.phi();
202 }
203
204 // fill the tree
205 m_tree->Fill();
206 // re-initialize
207 m_pEta = 0.;
208 m_pPhi = 0.;
209 m_pE = 0.;
210 m_eEta = 0.;
211 m_ePhi = 0.;
212 m_eE = 0.;
213 m_pM = 0.;
214 m_pPdg = 0;
215 // clear the
216 m_pPositionX->clear();
217 m_pPositionY->clear();
218 m_pPositionZ->clear();
219 m_pPositionR->clear();
220 m_pMomentumX->clear();
221 m_pMomentumY->clear();
222 m_pMomentumZ->clear();
223 m_pMomentumMag->clear();
224 m_pMomentumEta->clear();
225 m_pMomentumPhi->clear();
226 }
227}
Eigen::Matrix< double, 3, 1 > Vector3D

◆ initialize()

StatusCode Trk::PositionMomentumWriter::initialize ( )
overridevirtual

standard Athena methods

Definition at line 53 of file PositionMomentumWriter.cxx.

54{
55 ATH_MSG_VERBOSE("Booking the Extrapolation test Tree.");
56
57 // ------------------------------> OUTPUT NTUPLE (geometry validation)
58 m_tree = new TTree(m_treeName.c_str(), m_treeDescription.c_str());
59
60 // add the Branches
61 m_tree->Branch("StartEta", &m_pEta);
62 m_tree->Branch("StartPhi", &m_pPhi);
63 m_tree->Branch("StartEnergy", &m_pE);
64 m_tree->Branch("EndEta", &m_eEta);
65 m_tree->Branch("EndPhi", &m_ePhi);
66 m_tree->Branch("EndEnergy", &m_eE);
67 m_tree->Branch("Pdg", &m_pPdg);
68 m_tree->Branch("Mass", &m_pM);
69 // the branches
70 m_pPositionX = new std::vector<float>;
71 m_pPositionY = new std::vector<float>;
72 m_pPositionZ = new std::vector<float>;
73 m_pPositionR = new std::vector<float>;
74 m_pMomentumX = new std::vector<float>;
75 m_pMomentumY = new std::vector<float>;
76 m_pMomentumZ = new std::vector<float>;
77 m_pMomentumMag = new std::vector<float>;
78 m_pMomentumEta = new std::vector<float>;
79 m_pMomentumPhi = new std::vector<float>;
80 // add the Position Branches
81 m_tree->Branch("PositionX", m_pPositionX);
82 m_tree->Branch("PositionY", m_pPositionY);
83 m_tree->Branch("PositionZ", m_pPositionZ);
84 m_tree->Branch("PositionR", m_pPositionR);
85 m_tree->Branch("MomentumX", m_pMomentumX);
86 m_tree->Branch("MomentumY", m_pMomentumY);
87 m_tree->Branch("MomentumZ", m_pMomentumZ);
88 m_tree->Branch("MomentumMag", m_pMomentumMag);
89 m_tree->Branch("MomentumEta", m_pMomentumEta);
90 m_tree->Branch("MomentumPhi", m_pMomentumPhi);
91
92 // now register the Tree
93 SmartIF<ITHistSvc> tHistSvc{service("THistSvc")};
94 if (!tHistSvc) {
95 ATH_MSG_ERROR( "initialize() Could not find Hist Service -> Switching Tree output off !" );
96 delete m_pPositionX; m_pPositionX = nullptr;
97 delete m_pPositionY; m_pPositionY = nullptr;
98 delete m_pPositionZ; m_pPositionZ = nullptr;
99 delete m_pPositionR; m_pPositionR = nullptr;
100 delete m_pMomentumX; m_pMomentumX = nullptr;
101 delete m_pMomentumY; m_pMomentumY = nullptr;
102 delete m_pMomentumZ; m_pMomentumZ = nullptr;
103 delete m_pMomentumMag; m_pMomentumMag = nullptr;
104 delete m_pMomentumEta; m_pMomentumEta = nullptr;
105 delete m_pMomentumPhi; m_pMomentumPhi = nullptr;
106 delete m_tree; m_tree = nullptr;
107 }
108 if (tHistSvc && ((tHistSvc->regTree(m_treeFolder+m_treeName, m_tree)).isFailure()) ) {
109 ATH_MSG_ERROR( "initialize() Could not register the validation Tree -> Switching Tree output off !" );
110 delete m_tree; m_tree = nullptr;
111 delete m_pPositionX; m_pPositionX = nullptr;
112 delete m_pPositionY; m_pPositionY = nullptr;
113 delete m_pPositionZ; m_pPositionZ = nullptr;
114 delete m_pPositionR; m_pPositionR = nullptr;
115 delete m_pMomentumX; m_pMomentumX = nullptr;
116 delete m_pMomentumY; m_pMomentumY = nullptr;
117 delete m_pMomentumZ; m_pMomentumZ = nullptr;
118 delete m_pMomentumMag; m_pMomentumMag = nullptr;
119 delete m_pMomentumEta; m_pMomentumEta = nullptr;
120 delete m_pMomentumPhi; m_pMomentumPhi = nullptr;
121 }
122
123 return StatusCode::SUCCESS;
124}
#define ATH_MSG_ERROR(x)
#define ATH_MSG_VERBOSE(x)

◆ initializeTrack()

void Trk::PositionMomentumWriter::initializeTrack ( const Amg::Vector3D & pos,
const Amg::Vector3D & mom,
double m,
int pdg )
overridevirtual

Initialize State.

Implements Trk::IPositionMomentumWriter.

Definition at line 145 of file PositionMomentumWriter.cxx.

148{
149 if (m_tree){
150 // initialize the parmeters
151 m_pM = m;
152 m_pEta = mom.eta();
153 m_pPhi = mom.phi();
154 m_pE = sqrt(mom.mag()*mom.mag()+m*m);
155 m_pPdg = pdg;
156 // record the momentum / position
157 m_pPositionX->push_back(pos.x());
158 m_pPositionY->push_back(pos.y());
159 m_pPositionZ->push_back(pos.z());
160 m_pPositionR->push_back(pos.perp());
161 m_pMomentumX->push_back(mom.x());
162 m_pMomentumY->push_back(mom.y());
163 m_pMomentumZ->push_back(mom.z());
164 m_pMomentumMag->push_back(mom.mag());
165 m_pMomentumEta->push_back(mom.eta());
166 m_pMomentumPhi->push_back(mom.phi());
167 }
168}

◆ 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 & Trk::IPositionMomentumWriter::interfaceID ( )
inlinestaticinherited

Interface ID, declared here, and defined below.

Definition at line 45 of file IPositionMomentumWriter.h.

45 {
47 }
static const InterfaceID IID_IPositionMomentumWriter("IPositionMomentumWriter", 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.

◆ recordTrackState()

void Trk::PositionMomentumWriter::recordTrackState ( const Amg::Vector3D & pos,
const Amg::Vector3D & mom )
overridevirtual

Record a single TrackState.

Implements Trk::IPositionMomentumWriter.

Definition at line 170 of file PositionMomentumWriter.cxx.

172{
173 if (m_tree){
174 // record the momentum / position
175 m_pPositionX->push_back(pos.x());
176 m_pPositionY->push_back(pos.y());
177 m_pPositionZ->push_back(pos.z());
178 m_pPositionR->push_back(pos.perp());
179 m_pMomentumX->push_back(mom.x());
180 m_pMomentumY->push_back(mom.y());
181 m_pMomentumZ->push_back(mom.z());
182 m_pMomentumMag->push_back(mom.mag());
183 m_pMomentumEta->push_back(mom.eta());
184 m_pMomentumPhi->push_back(mom.phi());
185 }
186}

◆ 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_eE

float Trk::PositionMomentumWriter::m_eE
private

Definition at line 62 of file PositionMomentumWriter.h.

◆ m_eEta

float Trk::PositionMomentumWriter::m_eEta
private

Definition at line 60 of file PositionMomentumWriter.h.

◆ m_ePhi

float Trk::PositionMomentumWriter::m_ePhi
private

Definition at line 61 of file PositionMomentumWriter.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_pE

float Trk::PositionMomentumWriter::m_pE
private

Definition at line 59 of file PositionMomentumWriter.h.

◆ m_pEta

float Trk::PositionMomentumWriter::m_pEta
private

Definition at line 57 of file PositionMomentumWriter.h.

◆ m_pM

float Trk::PositionMomentumWriter::m_pM
private

Definition at line 56 of file PositionMomentumWriter.h.

◆ m_pMomentumEta

std::vector< float >* Trk::PositionMomentumWriter::m_pMomentumEta
private

Definition at line 72 of file PositionMomentumWriter.h.

◆ m_pMomentumMag

std::vector< float >* Trk::PositionMomentumWriter::m_pMomentumMag
private

Definition at line 71 of file PositionMomentumWriter.h.

◆ m_pMomentumPhi

std::vector< float >* Trk::PositionMomentumWriter::m_pMomentumPhi
private

Definition at line 73 of file PositionMomentumWriter.h.

◆ m_pMomentumX

std::vector< float >* Trk::PositionMomentumWriter::m_pMomentumX
private

Definition at line 68 of file PositionMomentumWriter.h.

◆ m_pMomentumY

std::vector< float >* Trk::PositionMomentumWriter::m_pMomentumY
private

Definition at line 69 of file PositionMomentumWriter.h.

◆ m_pMomentumZ

std::vector< float >* Trk::PositionMomentumWriter::m_pMomentumZ
private

Definition at line 70 of file PositionMomentumWriter.h.

◆ m_pPdg

int Trk::PositionMomentumWriter::m_pPdg
private

Definition at line 63 of file PositionMomentumWriter.h.

◆ m_pPhi

float Trk::PositionMomentumWriter::m_pPhi
private

Definition at line 58 of file PositionMomentumWriter.h.

◆ m_pPositionR

std::vector< float >* Trk::PositionMomentumWriter::m_pPositionR
private

Definition at line 67 of file PositionMomentumWriter.h.

◆ m_pPositionX

std::vector< float >* Trk::PositionMomentumWriter::m_pPositionX
private

Definition at line 64 of file PositionMomentumWriter.h.

◆ m_pPositionY

std::vector< float >* Trk::PositionMomentumWriter::m_pPositionY
private

Definition at line 65 of file PositionMomentumWriter.h.

◆ m_pPositionZ

std::vector< float >* Trk::PositionMomentumWriter::m_pPositionZ
private

Definition at line 66 of file PositionMomentumWriter.h.

◆ m_tree

TTree* Trk::PositionMomentumWriter::m_tree
private

Definition at line 54 of file PositionMomentumWriter.h.

◆ m_treeDescription

std::string Trk::PositionMomentumWriter::m_treeDescription
private

Definition at line 53 of file PositionMomentumWriter.h.

◆ m_treeFolder

std::string Trk::PositionMomentumWriter::m_treeFolder
private

Definition at line 52 of file PositionMomentumWriter.h.

◆ m_treeName

std::string Trk::PositionMomentumWriter::m_treeName
private

Definition at line 51 of file PositionMomentumWriter.h.

◆ 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: