ATLAS Offline Software
Loading...
Searching...
No Matches
TrigL2MuonSA::CscRegDict Class Reference

#include <CscRegUtils.h>

Inheritance diagram for TrigL2MuonSA::CscRegDict:
Collaboration diagram for TrigL2MuonSA::CscRegDict:

Classes

struct  CscRegion

Public Member Functions

 CscRegDict (const std::string &type, const std::string &name, const IInterface *parent)
virtual StatusCode initialize () override
double phiCen (int module)
double phiMod (int module) const
int get_hash (int stationname, int stationeta, int stationphi) const
Amg::Vector3D nomalVector (int module) const
double displacement (int module) const
double posCorrectionR (int module, int charge)
double posCorrectionZ (int module, int charge)
double idealAtanNormal (int module) const
double actualAtanNormal (int module) const
int stationName (int hash) const
int stationEta (int hash) const
int stationPhi (int hash) const
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

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

ReturnCode initializeHashDictionary ()
ReturnCode initializeDictionaryForData ()
ReturnCode initializePosCorrectionParameters ()
double PhiConv (double phi)
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_isMC { this, "MCFlag", true, "" }
CscRegion m_reg_dict [32] {}
int m_module_hashes [2][2][8] {}
TrigL2MuonSA::UtilTools m_util
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

Definition at line 44 of file CscRegUtils.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

◆ CscRegDict()

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

Definition at line 16 of file CscRegUtils.cxx.

17 : AthAlgTool(type,name,parent),
18 m_util()
19{
20}
AthAlgTool()
Default constructor:
TrigL2MuonSA::UtilTools m_util
Definition CscRegUtils.h:94

Member Function Documentation

◆ actualAtanNormal()

double TrigL2MuonSA::CscRegDict::actualAtanNormal ( int module) const
inline

Definition at line 77 of file CscRegUtils.h.

77{ return m_reg_dict[module].actualAtanNormal; }
CscRegion m_reg_dict[32]
Definition CscRegUtils.h:84

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

◆ displacement()

double TrigL2MuonSA::CscRegDict::displacement ( int module) const
inline

Definition at line 99 of file CscRegUtils.h.

100{
101 return (0<=module && module <32) ? m_reg_dict[module].Displacement : 0.;
102}

◆ 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

◆ get_hash()

int TrigL2MuonSA::CscRegDict::get_hash ( int stationname,
int stationeta,
int stationphi ) const

Definition at line 125 of file CscRegUtils.cxx.

125 {
126
127 int sname, seta, sphi;
128 if (stationname == 50 || stationname == 51) sname = stationname-50;
129 else { ATH_MSG_DEBUG( "stationname is out of [50,51]");
130 return 999;
131 }
132 if (stationeta == 1 || stationeta ==-1) seta = ((stationeta == 1)? 1:0);
133 else { ATH_MSG_DEBUG( "stationeta is not 1 nor -1" );
134 return 999;
135 }
136 if (stationphi >=1 || stationeta <=8) sphi = stationphi-1;
137 else { ATH_MSG_DEBUG( "stationeta is out of [1,8]" );
138 return 999;
139 }
140
141 return m_module_hashes[sname][seta][sphi];
142}
#define ATH_MSG_DEBUG(x)
int m_module_hashes[2][2][8]
Definition CscRegUtils.h:85

◆ idealAtanNormal()

double TrigL2MuonSA::CscRegDict::idealAtanNormal ( int module) const
inline

Definition at line 76 of file CscRegUtils.h.

76{ return m_reg_dict[module].idealAtanNormal; }

◆ initialize()

StatusCode TrigL2MuonSA::CscRegDict::initialize ( )
overridevirtual

Definition at line 23 of file CscRegUtils.cxx.

23 {
24
25 int i=0;
26
27 //small sector
28 const double SPwid = 0.32369;
29 const double Setamin = 1.97667;
30 const double Setamax = 2.76781;
31 const double SDisplace = (7441.+7518.)/2.;//7428.3;
32 const double SAtanNormal = 0.20223129856437;
33
34 //Cside Small
35 for (int phi=0; phi<8; ++phi) {
36 m_reg_dict[i].etaMin=(-1)*Setamax;
37 m_reg_dict[i].etaMax=(-1)*Setamin;
38 m_reg_dict[i].phiMin=PhiConv( 0.125*M_PI+ phi*0.25*M_PI - 0.5*SPwid );
39 m_reg_dict[i].phiMax=PhiConv( 0.125*M_PI+ phi*0.25*M_PI + 0.5*SPwid );
40 m_reg_dict[i].phiCen= m_reg_dict[i].phiMod =PhiConv( 0.125*M_PI+ phi*0.25*M_PI );
41 m_reg_dict[i].Displacement=SDisplace;
42 m_reg_dict[i].idealAtanNormal= m_reg_dict[i].actualAtanNormal =M_PI-SAtanNormal;
43 m_reg_dict[i].posCorrectionMinusR=0.;
44 m_reg_dict[i].posCorrectionPlusR=0.;
45 ATH_MSG_DEBUG( "CscRegDict: hash= " << i << " StationName=" << stationName(i) << " StationEta=" << stationEta(i) << " StationPhi=" << stationPhi(i)
46 << " eta:[" << m_reg_dict[i].etaMin << "," << m_reg_dict[i].etaMax << "]"
47 << " phi:[" << m_reg_dict[i].phiMin << "," << m_reg_dict[i].phiMax << "]"
48 << " theta:[" << m_util.calc_theta(m_reg_dict[i].etaMin) << "," << m_util.calc_theta(m_reg_dict[i].etaMax) << "]");
49 ++i;
50 }
51 //Aside Small
52 for (int phi=0; phi<8; ++phi) {
53 m_reg_dict[i].etaMin=Setamin;
54 m_reg_dict[i].etaMax=Setamax;
55 m_reg_dict[i].phiMin=PhiConv( 0.125*M_PI+ phi*0.25*M_PI - 0.5*SPwid );
56 m_reg_dict[i].phiMax=PhiConv( 0.125*M_PI+ phi*0.25*M_PI + 0.5*SPwid );
57 m_reg_dict[i].phiCen= m_reg_dict[i].phiMod =PhiConv( 0.125*M_PI+ phi*0.25*M_PI );
58 m_reg_dict[i].Displacement=SDisplace;
59 m_reg_dict[i].idealAtanNormal= m_reg_dict[i].actualAtanNormal =SAtanNormal;
60 m_reg_dict[i].posCorrectionMinusR=0.;
61 m_reg_dict[i].posCorrectionPlusR=0.;
62 ATH_MSG_DEBUG( "CscRegDict: hash= " << i << " StationName=" << stationName(i) << " StationEta=" << stationEta(i) << " StationPhi=" << stationPhi(i)
63 << " eta:[" << m_reg_dict[i].etaMin << "," << m_reg_dict[i].etaMax << "]"
64 << " phi:[" << m_reg_dict[i].phiMin << "," << m_reg_dict[i].phiMax << "]"
65 << " theta:[" << m_util.calc_theta(m_reg_dict[i].etaMin) << "," << m_util.calc_theta(m_reg_dict[i].etaMax) << "]");
66 ++i;
67 }
68
69
70 //large sector
71 const double LPwid = 0.514507;
72 const double Letamin = 2.01471;
73 const double Letamax = 2.75914;
74 const double LDisplace = (7800.+7880.)/2.;//7789.6;
75 const double LAtanNormal = 0.20223129856437;
76
77 //Cside Large
78 for (int phi=0; phi<8; ++phi) {
79 m_reg_dict[i].etaMin=(-1)*Letamax;
80 m_reg_dict[i].etaMax=(-1)*Letamin;
81 m_reg_dict[i].phiMin=PhiConv( phi*0.25*M_PI - 0.5*LPwid );
82 m_reg_dict[i].phiMax=PhiConv( phi*0.25*M_PI + 0.5*LPwid );
83 m_reg_dict[i].phiCen= m_reg_dict[i].phiMod =PhiConv( phi*0.25*M_PI );
84 m_reg_dict[i].Displacement=LDisplace;
85 m_reg_dict[i].idealAtanNormal= m_reg_dict[i].actualAtanNormal =M_PI-LAtanNormal;
86 m_reg_dict[i].posCorrectionMinusR=0.;
87 m_reg_dict[i].posCorrectionPlusR=0.;
88 ATH_MSG_DEBUG( "CscRegDict: hash= " << i << " StationName=" << stationName(i) << " StationEta=" << stationEta(i) << " StationPhi=" << stationPhi(i)
89 << " eta:[" << m_reg_dict[i].etaMin << "," << m_reg_dict[i].etaMax << "]"
90 << " phi:[" << m_reg_dict[i].phiMin << "," << m_reg_dict[i].phiMax << "]"
91 << " theta:[" << m_util.calc_theta(m_reg_dict[i].etaMin) << "," << m_util.calc_theta(m_reg_dict[i].etaMax) << "]");
92 ++i;
93 }
94 //Aside Large
95 for (int phi=0; phi<8; ++phi) {
96 m_reg_dict[i].etaMin=Letamin;
97 m_reg_dict[i].etaMax=Letamax;
98 m_reg_dict[i].phiMin=PhiConv( phi*0.25*M_PI - 0.5*LPwid );
99 m_reg_dict[i].phiMax=PhiConv( phi*0.25*M_PI + 0.5*LPwid );
100 m_reg_dict[i].phiCen= m_reg_dict[i].phiMod =PhiConv( phi*0.25*M_PI );
101 m_reg_dict[i].Displacement=LDisplace;
102 m_reg_dict[i].idealAtanNormal= m_reg_dict[i].actualAtanNormal =LAtanNormal;
103 m_reg_dict[i].posCorrectionMinusR=0.;
104 m_reg_dict[i].posCorrectionPlusR=0.;
105 ATH_MSG_DEBUG( "CscRegDict: hash= " << i << " StationName=" << stationName(i) << " StationEta=" << stationEta(i) << " StationPhi=" << stationPhi(i)
106 << " eta:[" << m_reg_dict[i].etaMin << "," << m_reg_dict[i].etaMax << "]"
107 << " phi:[" << m_reg_dict[i].phiMin << "," << m_reg_dict[i].phiMax << "]"
108 << " theta:[" << m_util.calc_theta(m_reg_dict[i].etaMin) << "," << m_util.calc_theta(m_reg_dict[i].etaMax) << "]");
109 ++i;
110 }
111 /*
112 ATH_MSG_DEBUG( "m_isMC=" << m_isMC );
113 if (!m_isMC){
114 initializePosCorrectionParameters();
115 initializeDictionaryForData();
116 }
117 */
119
120
121 return StatusCode::SUCCESS;
122}
#define M_PI
Scalar phi() const
phi method
int stationEta(int hash) const
ReturnCode initializeHashDictionary()
double PhiConv(double phi)
int stationPhi(int hash) const
int stationName(int hash) const

◆ initializeDictionaryForData()

ReturnCode TrigL2MuonSA::CscRegDict::initializeDictionaryForData ( )
private

Definition at line 267 of file CscRegUtils.cxx.

267 {
268
269 return ReturnCode::SUCCESS;
270}

◆ initializeHashDictionary()

ReturnCode TrigL2MuonSA::CscRegDict::initializeHashDictionary ( )
private

Definition at line 157 of file CscRegUtils.cxx.

157 {
158
159 int hash = 0;
160 for (int sname=0; sname<2; ++sname) {
161 for (int seta=0; seta<2; ++seta) {
162 for (int sphi=0; sphi<8; ++sphi) {
163 m_module_hashes[sname][seta][sphi] = hash;
164 ATH_MSG_DEBUG( "module_hash:" << hash << " StationName:" << sname+50 << " StationEta:" << (seta ? 1 : -1) << " StationPhi:" << sphi+1 );
165 ++hash;
166 }
167 }
168 }
169 return 0;
170}

◆ initializePosCorrectionParameters()

ReturnCode TrigL2MuonSA::CscRegDict::initializePosCorrectionParameters ( )
private

Definition at line 274 of file CscRegUtils.cxx.

274 {
275
276
277 return ReturnCode::SUCCESS;
278}

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

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

◆ nomalVector()

Amg::Vector3D TrigL2MuonSA::CscRegDict::nomalVector ( int module) const

Definition at line 174 of file CscRegUtils.cxx.

174 {
175
176 double phi=m_reg_dict[module].phiCen;
177 double theta=m_reg_dict[module].idealAtanNormal;
178 Amg::Vector3D nomvec( std::sin(theta)*std::cos(phi), std::sin(theta)*std::sin(phi), std::cos(theta));
179
180 return nomvec;
181
182}
Scalar theta() const
theta method
Eigen::Matrix< double, 3, 1 > Vector3D

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

◆ phiCen()

double TrigL2MuonSA::CscRegDict::phiCen ( int module)
inline

Definition at line 68 of file CscRegUtils.h.

68{ return m_reg_dict[module].phiCen; }

◆ PhiConv()

double TrigL2MuonSA::CscRegDict::PhiConv ( double phi)
private

Definition at line 147 of file CscRegUtils.cxx.

147 {
148
149 if (phi>M_PI) {
150 phi -= 2*M_PI;
151 }
152
153 return phi;
154}

◆ phiMod()

double TrigL2MuonSA::CscRegDict::phiMod ( int module) const
inline

Definition at line 69 of file CscRegUtils.h.

69{ return m_reg_dict[module].phiMod; }

◆ posCorrectionR()

double TrigL2MuonSA::CscRegDict::posCorrectionR ( int module,
int charge )

Definition at line 185 of file CscRegUtils.cxx.

185 {
186
187 if (0==charge) return m_reg_dict[module].posCorrectionMinusR;
188 if (1==charge) return m_reg_dict[module].posCorrectionPlusR;
189
190 return 0.0;
191}
double charge(const T &p)
Definition AtlasPID.h:997

◆ posCorrectionZ()

double TrigL2MuonSA::CscRegDict::posCorrectionZ ( int module,
int charge )

Definition at line 194 of file CscRegUtils.cxx.

194 {
195
196 double tan = this->idealAtanNormal(module);
197
198 if (0==charge) return (-1)*tan*( m_reg_dict[module].posCorrectionMinusR );
199 if (1==charge) return (-1)*tan*( m_reg_dict[module].posCorrectionPlusR );
200
201 return 0.0;
202}
double idealAtanNormal(int module) const
Definition CscRegUtils.h:76

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

◆ stationEta()

int TrigL2MuonSA::CscRegDict::stationEta ( int hash) const
inline

Definition at line 110 of file CscRegUtils.h.

111{
112 if(hash<0 || hash>31) return 999;
113 else{
114 int secteta=(hash - hash%8)/8;// secteta: 0(Small Cside),1(Small Aside), 2(Large Cside), 3(Large Aside)
115 return (secteta%2) ? 1 : -1;
116 }
117}

◆ stationName()

int TrigL2MuonSA::CscRegDict::stationName ( int hash) const
inline

Definition at line 104 of file CscRegUtils.h.

105{
106 if(hash<0 || hash>31) return 999;
107 else return (hash<16) ? 50 : 51;
108}

◆ stationPhi()

int TrigL2MuonSA::CscRegDict::stationPhi ( int hash) const
inline

Definition at line 119 of file CscRegUtils.h.

120{
121 if(hash<0 || hash>31) return 999;
122 else return hash%8+1;
123}

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

Gaudi::Property< bool > TrigL2MuonSA::CscRegDict::m_isMC { this, "MCFlag", true, "" }
private

Definition at line 83 of file CscRegUtils.h.

83{ this, "MCFlag", true, "" };

◆ m_module_hashes

int TrigL2MuonSA::CscRegDict::m_module_hashes[2][2][8] {}
private

Definition at line 85 of file CscRegUtils.h.

85{};//dictionary of hashIds

◆ m_reg_dict

CscRegion TrigL2MuonSA::CscRegDict::m_reg_dict[32] {}
private

Definition at line 84 of file CscRegUtils.h.

84{};//dictionary of CSC regions

◆ m_util

TrigL2MuonSA::UtilTools TrigL2MuonSA::CscRegDict::m_util
private

Definition at line 94 of file CscRegUtils.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: