ATLAS Offline Software
Loading...
Searching...
No Matches
IDTPM::JsonPlotsDefReadTool Class Reference

#include <JsonPlotsDefReadTool.h>

Inheritance diagram for IDTPM::JsonPlotsDefReadTool:
Collaboration diagram for IDTPM::JsonPlotsDefReadTool:

Public Member Functions

 ASG_TOOL_CLASS (JsonPlotsDefReadTool, IPlotsDefReadTool)
 JsonPlotsDefReadTool (const std::string &name)
 Constructor.
virtual ~JsonPlotsDefReadTool ()=default
 Destructor.
virtual StatusCode initialize () override
 Initialize.
virtual std::vector< SinglePlotDefinitiongetPlotsDefinitions () const override
 Parse input pltos defnitions and returns vector of SinglePlotDefinition.
virtual void print () const
 Print the state of the tool.
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
Additional helper functions, not directly mimicking Athena
template<class T>
const T * getProperty (const std::string &name) const
 Get one of the tool's properties.
const std::string & msg_level_name () const __attribute__((deprecated))
 A deprecated function for getting the message level's name.
const std::string & getName (const void *ptr) const
 Get the name of an object that is / should be in the event store.
SG::sgkey_t getKey (const void *ptr) const
 Get the (hashed) key of an object that is in the event store.

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

float getFloat (const std::string &s, float defaultNum=std::numeric_limits< float >::quiet_NaN()) const
 Utility functions to perform string->number conversion.
unsigned int getInt (const std::string &s, unsigned int defaultNum=0) const
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey>

Private Attributes

StringArrayProperty m_plotsDefs { this, "PlotsDefs", {}, "Vector of plots definition strings" }
 Tool properties.
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 24 of file JsonPlotsDefReadTool.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

◆ JsonPlotsDefReadTool()

IDTPM::JsonPlotsDefReadTool::JsonPlotsDefReadTool ( const std::string & name)
inline

Constructor.

Definition at line 33 of file JsonPlotsDefReadTool.h.

33 :
34 asg::AsgTool( name ) { }

◆ ~JsonPlotsDefReadTool()

virtual IDTPM::JsonPlotsDefReadTool::~JsonPlotsDefReadTool ( )
virtualdefault

Destructor.

Member Function Documentation

◆ ASG_TOOL_CLASS()

IDTPM::JsonPlotsDefReadTool::ASG_TOOL_CLASS ( JsonPlotsDefReadTool ,
IPlotsDefReadTool  )

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

◆ 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

◆ getFloat()

float IDTPM::JsonPlotsDefReadTool::getFloat ( const std::string & s,
float defaultNum = std::numeric_limits<float>::quiet_NaN() ) const
private

Utility functions to perform string->number conversion.


— Utility functions —

Definition at line 213 of file JsonPlotsDefReadTool.cxx.

215{
216 try {
217 float f = std::stof(s);
218 return f;
219 } catch(...) {
220 return defaultNum;
221 }
222}

◆ getInt()

unsigned int IDTPM::JsonPlotsDefReadTool::getInt ( const std::string & s,
unsigned int defaultNum = 0 ) const
private

Definition at line 224 of file JsonPlotsDefReadTool.cxx.

226{
227 return ( static_cast< unsigned int >( getFloat( s, defaultNum ) ) );
228}
float getFloat(const std::string &s, float defaultNum=std::numeric_limits< float >::quiet_NaN()) const
Utility functions to perform string->number conversion.

◆ getKey()

SG::sgkey_t asg::AsgTool::getKey ( const void * ptr) const
inherited

Get the (hashed) key of an object that is in the event store.

This is a bit of a special one. StoreGateSvc and xAOD::TEvent both provide ways for getting the SG::sgkey_t key for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.

In order to allow tools to efficiently perform this operation, they can use this helper function.

See also
asg::AsgTool::getName
Parameters
ptrThe bare pointer to the object that the event store should know about
Returns
The hashed key of the object in the store. If not found, an invalid (zero) key.

Definition at line 119 of file AsgTool.cxx.

119 {
120
121#ifdef XAOD_STANDALONE
122 // In case we use @c xAOD::TEvent, we have a direct function call
123 // for this.
124 return evtStore()->event()->getKey( ptr );
125#else
126 const SG::DataProxy* proxy = evtStore()->proxy( ptr );
127 return ( proxy == nullptr ? 0 : proxy->sgkey() );
128#endif // XAOD_STANDALONE
129 }
ServiceHandle< StoreGateSvc > & evtStore()

◆ getName()

const std::string & asg::AsgTool::getName ( const void * ptr) const
inherited

Get the name of an object that is / should be in the event store.

This is a bit of a special one. StoreGateSvc and xAOD::TEvent both provide ways for getting the std::string name for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.

In order to allow tools to efficiently perform this operation, they can use this helper function.

See also
asg::AsgTool::getKey
Parameters
ptrThe bare pointer to the object that the event store should know about
Returns
The string name of the object in the store. If not found, an empty string.

Definition at line 106 of file AsgTool.cxx.

106 {
107
108#ifdef XAOD_STANDALONE
109 // In case we use @c xAOD::TEvent, we have a direct function call
110 // for this.
111 return evtStore()->event()->getName( ptr );
112#else
113 const SG::DataProxy* proxy = evtStore()->proxy( ptr );
114 static const std::string dummy = "";
115 return ( proxy == nullptr ? dummy : proxy->name() );
116#endif // XAOD_STANDALONE
117 }

◆ getPlotsDefinitions()

std::vector< IDTPM::SinglePlotDefinition > IDTPM::JsonPlotsDefReadTool::getPlotsDefinitions ( ) const
overridevirtual

Parse input pltos defnitions and returns vector of SinglePlotDefinition.


— getPlotsDefinitions —

Looping m_plotDefs for each histogram defnition string

parsing json format

plot name

plot type

plot folder

plot title

nBinsX

nBinsY

nBinsZ

xAxis limits

yAxis limits

zAxis limits

xAxis doLogLin

yAxis doLogLin

zAxis doLogLin

xAxis bins (variable size)

overwriting binning

yAxis bins (variable size)

overwriting binning

zAxis bins (variable size)

overwriting binning

xTitle

yTitle

zTitle

xAxis bin labels

overwiting binning

yAxis bin labels

overwiting binning

zAxis bin labels

overwiting binning

Adding new SinglePlotDefinition to vector

Check if plot definition is valid. Removing

Implements IDTPM::IPlotsDefReadTool.

Definition at line 33 of file JsonPlotsDefReadTool.cxx.

34{
35 using json = nlohmann::json;
36 using cstr_t = const std::string&;
37 using strVec_t = std::vector< std::string >;
38
39 std::vector< SinglePlotDefinition > plotDefVec;
40
42 for( cstr_t plotDefStr : m_plotsDefs ) {
43
44 ATH_MSG_DEBUG( "Reading plot definition : " << plotDefStr );
45
47 const json& plotDef = json::parse( plotDefStr );
48
50 cstr_t name = plotDef.contains( "name" ) ?
51 plotDef.at( "name" ).get_ref< cstr_t >() : "";
52
54 cstr_t type = plotDef.contains( "type" ) ?
55 plotDef.at( "type" ).get_ref< cstr_t >() : "";
56
58 cstr_t folder = plotDef.contains( "folder" ) ?
59 plotDef.at( "folder" ).get_ref< cstr_t >() : "";
60
62 cstr_t title = plotDef.contains( "title" ) ?
63 plotDef.at( "title" ).get_ref< cstr_t >() : "";
64
66 unsigned int nBinsX = plotDef.contains( "xAxis_nBins" ) ?
67 getInt( plotDef.at( "xAxis_nBins" ).get_ref< cstr_t >() ) : 0;
68
70 unsigned int nBinsY = plotDef.contains( "yAxis_nBins" ) ?
71 getInt( plotDef.at( "yAxis_nBins" ).get_ref< cstr_t >() ) : 0;
72
74 unsigned int nBinsZ = plotDef.contains( "zAxis_nBins" ) ?
75 getInt( plotDef.at( "zAxis_nBins" ).get_ref< cstr_t >() ) : 0;
76
78 float xLow = plotDef.contains( "xAxis_low" ) ?
79 getFloat( plotDef.at( "xAxis_low" ).get_ref< cstr_t >() ) : 0.;
80 float xHigh = plotDef.contains( "xAxis_high" ) ?
81 getFloat( plotDef.at( "xAxis_high" ).get_ref< cstr_t >() ) : 0.;
82
84 float yLow = plotDef.contains( "yAxis_low" ) ?
85 getFloat( plotDef.at( "yAxis_low" ).get_ref< cstr_t >() ) : 0.;
86 float yHigh = plotDef.contains( "yAxis_high" ) ?
87 getFloat( plotDef.at( "yAxis_high" ).get_ref< cstr_t >() ) : 0.;
88
90 float zLow = plotDef.contains( "zAxis_low" ) ?
91 getFloat( plotDef.at( "zAxis_low" ).get_ref< cstr_t >() ) : 0.;
92 float zHigh = plotDef.contains( "zAxis_high" ) ?
93 getFloat( plotDef.at( "zAxis_high" ).get_ref< cstr_t >() ) : 0.;
94
96 bool xDoLogLinBins(false);
97 if( plotDef.contains( "xAxis_doLogLinBins" ) ) {
98 std::string xDoLogLinBinsStr = plotDef.at( "xAxis_doLogLinBins" ).get_ref< cstr_t >();
99 if( xDoLogLinBinsStr == "true" ) xDoLogLinBins = true;
100 else if( xDoLogLinBinsStr == "false" ) xDoLogLinBins = false;
101 else ATH_MSG_WARNING( "xAxis_doLogLinBins not valid" );
102 }
103
105 bool yDoLogLinBins(false);
106 if( plotDef.contains( "yAxis_doLogLinBins" ) ) {
107 std::string yDoLogLinBinsStr = plotDef.at( "yAxis_doLogLinBins" ).get_ref< cstr_t >();
108 if( yDoLogLinBinsStr == "true" ) yDoLogLinBins = true;
109 else if( yDoLogLinBinsStr == "false" ) yDoLogLinBins = false;
110 else ATH_MSG_WARNING( "yAxis_doLogLinBins not valid" );
111 }
112
114 bool zDoLogLinBins(false);
115 if( plotDef.contains( "zAxis_doLogLinBins" ) ) {
116 std::string zDoLogLinBinsStr = plotDef.at( "zAxis_doLogLinBins" ).get_ref< cstr_t >();
117 if( zDoLogLinBinsStr == "true" ) zDoLogLinBins = true;
118 else if( zDoLogLinBinsStr == "false" ) zDoLogLinBins = false;
119 else ATH_MSG_WARNING( "zAxis_doLogLinBins not valid" );
120 }
121
123 strVec_t xBinsStrVec;
124 if( plotDef.contains( "xAxis_bins" ) ) xBinsStrVec = plotDef.at( "xAxis_bins" ).get< strVec_t >();
125 std::vector< float > xBinsVec;
126 for( cstr_t thisBin : xBinsStrVec ) xBinsVec.push_back( getFloat( thisBin ) );
127 if( not xBinsVec.empty() ) {
129 xLow = xBinsVec.front(); xHigh = xBinsVec.back(); nBinsX = xBinsVec.size() - 1;
130 }
131
133 strVec_t yBinsStrVec;
134 if( plotDef.contains( "yAxis_bins" ) ) yBinsStrVec = plotDef.at( "yAxis_bins" ).get< strVec_t >();
135 std::vector< float > yBinsVec;
136 for( cstr_t thisBin : yBinsStrVec ) yBinsVec.push_back( getFloat( thisBin ) );
137 if( not yBinsVec.empty() ) {
139 yLow = yBinsVec.front(); yHigh = yBinsVec.back(); nBinsY = yBinsVec.size() - 1;
140 }
141
143 strVec_t zBinsStrVec;
144 if( plotDef.contains( "zAxis_bins" ) ) zBinsStrVec = plotDef.at( "zAxis_bins" ).get< strVec_t >();
145 std::vector< float > zBinsVec;
146 for( cstr_t thisBin : zBinsStrVec ) zBinsVec.push_back( getFloat( thisBin ) );
147 if( not zBinsVec.empty() ) {
149 zLow = zBinsVec.front(); zHigh = zBinsVec.back(); nBinsZ = zBinsVec.size() - 1;
150 }
151
153 cstr_t xTitle = plotDef.contains( "xAxis_title" ) ?
154 plotDef.at( "xAxis_title" ).get_ref< cstr_t >() : "";
155
157 cstr_t yTitle = plotDef.contains( "yAxis_title" ) ?
158 plotDef.at( "yAxis_title" ).get_ref< cstr_t >() : "";
159
161 cstr_t zTitle = plotDef.contains( "zAxis_title" ) ?
162 plotDef.at( "zAxis_title" ).get_ref< cstr_t >() : "";
163
165 strVec_t xBinLabelsVec;
166 if( plotDef.contains( "xAxis_labels" ) ) xBinLabelsVec = plotDef.at( "xAxis_labels" ).get< strVec_t >();
167 if( not xBinLabelsVec.empty() ) {
169 nBinsX = xBinLabelsVec.size(); xLow = 0; xHigh = nBinsX;
170 }
171
173 strVec_t yBinLabelsVec;
174 if( plotDef.contains( "yAxis_labels" ) ) yBinLabelsVec = plotDef.at( "yAxis_labels" ).get< strVec_t >();
175 if( not yBinLabelsVec.empty() ) {
177 nBinsY = yBinLabelsVec.size(); yLow = 0; yHigh = nBinsY;
178 }
179
181 strVec_t zBinLabelsVec;
182 if( plotDef.contains( "zAxis_labels" ) ) zBinLabelsVec = plotDef.at( "zAxis_labels" ).get< strVec_t >();
183 if( not zBinLabelsVec.empty() ) {
185 nBinsZ = zBinLabelsVec.size(); zLow = 0; zHigh = nBinsZ;
186 }
187
189 plotDefVec.emplace_back(
190 name, type, title,
191 xTitle, nBinsX, xLow, xHigh, xDoLogLinBins, xBinsVec, xBinLabelsVec,
192 yTitle, nBinsY, yLow, yHigh, yDoLogLinBins, yBinsVec, yBinLabelsVec,
193 zTitle, nBinsZ, zLow, zHigh, zDoLogLinBins, zBinsVec, zBinLabelsVec,
194 folder );
195
197 if( not plotDefVec.back().isValid() ) {
198 ATH_MSG_ERROR( "Removing invalid plot :" <<
199 "\n\t- string: " << plotDefStr <<
200 "\n\t- digest: " << plotDefVec.back().plotDigest() );
201 plotDefVec.pop_back(); // removing from vector
202 }
203
204 } // close m_plotDefs loop
205
206 return plotDefVec;
207}
#define ATH_MSG_ERROR(x)
#define ATH_MSG_WARNING(x)
#define ATH_MSG_DEBUG(x)
nlohmann::json json
unsigned int getInt(const std::string &s, unsigned int defaultNum=0) const
StringArrayProperty m_plotsDefs
Tool properties.

◆ getProperty()

template<class T>
const T * asg::AsgTool::getProperty ( const std::string & name) const
inherited

Get one of the tool's properties.

◆ initialize()

StatusCode IDTPM::JsonPlotsDefReadTool::initialize ( void )
overridevirtual

Initialize.

Local include(s)

Json parsing library


----— Initialize ----—

Reimplemented from asg::AsgTool.

Definition at line 21 of file JsonPlotsDefReadTool.cxx.

22{
23 ATH_MSG_DEBUG( "Initializing " << name() );
25 return StatusCode::SUCCESS;
26}
#define ATH_CHECK
Evaluate an expression and check for errors.
virtual StatusCode initialize()
Dummy implementation of the initialisation function.
Definition AsgTool.h:133

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

◆ msg_level_name()

const std::string & asg::AsgTool::msg_level_name ( ) const
inherited

A deprecated function for getting the message level's name.

Instead of using this, weirdly named function, user code should get the string name of the current minimum message level (in case they really need it...), with:

MSG::name( msg().level() )

This function's name doesn't follow the ATLAS coding rules, and as such will be removed in the not too distant future.

Returns
The string name of the current minimum message level that's printed

Definition at line 101 of file AsgTool.cxx.

101 {
102
103 return MSG::name( msg().level() );
104 }
MsgStream & msg() const
const std::string & name(Level lvl)
Convenience function for translating message levels to strings.
Definition MsgLevel.cxx:19

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

◆ print()

void asg::AsgTool::print ( ) const
virtualinherited

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

StringArrayProperty IDTPM::JsonPlotsDefReadTool::m_plotsDefs { this, "PlotsDefs", {}, "Vector of plots definition strings" }
private

Tool properties.

Definition at line 56 of file JsonPlotsDefReadTool.h.

56{ this, "PlotsDefs", {}, "Vector of plots definition strings" };

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