ATLAS Offline Software
Loading...
Searching...
No Matches
IDTPM::TrackRoiSelectionTool Class Referenceabstract

#include <TrackRoiSelectionTool.h>

Inheritance diagram for IDTPM::TrackRoiSelectionTool:
Collaboration diagram for IDTPM::TrackRoiSelectionTool:

Public Member Functions

 ASG_TOOL_CLASS (TrackRoiSelectionTool, IAsgTool)
 TrackRoiSelectionTool (const std::string &name)
 Constructor.
virtual ~TrackRoiSelectionTool ()=default
 Destructor.
virtual StatusCode initialize () override
 Initialize.
StatusCode selectTracksInRoI (TrackAnalysisCollections &trkAnaColls, const ElementLink< TrigRoiDescriptorCollection > &roiLink)
 Main Track selection method.
template<class T>
bool accept (const T &t, const TrigRoiDescriptor *r) const
 geometric RoI filters - for non-trigger tracks (e.g. offline, truth, etc.)
template<class T>
std::vector< const T * > getTracks (const std::vector< const T * > &tvec, const TrigRoiDescriptor *r) const
 track getter function (for offline tracks or truth particles)
std::vector< const xAOD::TrackParticle * > getTrigTracks (const std::vector< const xAOD::TrackParticle * > &tvec, const ElementLink< TrigRoiDescriptorCollection > &roiLink) const
 TrigDecTool- and EventView-based getter function for trigger tracks.
virtual void print () const =0
 Print the state of the tool.
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

exitPoint_t getExitPoint (float tz0, float teta) const
 Geometric utility methods for track-RoI association.
float getOuterPhi (float pt, float phi, float r=1000.) const
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey>

Private Attributes

SG::ReadHandleKey< xAOD::TrackParticleContainerm_triggerTrkParticleName
 Trigger TrackParticleContainer's name.
PublicToolHandle< Trig::TrigDecisionToolm_trigDecTool
 TrigDecTool.
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 37 of file TrackRoiSelectionTool.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

◆ TrackRoiSelectionTool()

IDTPM::TrackRoiSelectionTool::TrackRoiSelectionTool ( const std::string & name)

Constructor.

Athena include(s)

Gaudi includes Local include(s) STD includes


----— Parametrized constructor ----—

Definition at line 30 of file TrackRoiSelectionTool.cxx.

31 :
32 asg::AsgTool( name ) { }

◆ ~TrackRoiSelectionTool()

virtual IDTPM::TrackRoiSelectionTool::~TrackRoiSelectionTool ( )
virtualdefault

Destructor.

Member Function Documentation

◆ accept()

template<class T>
template bool IDTPM::TrackRoiSelectionTool::accept ( const T & t,
const TrigRoiDescriptor * r ) const

geometric RoI filters - for non-trigger tracks (e.g. offline, truth, etc.)

accept method for truth particles

accept method for offline tracks


----— accept -----—

NB: This isn't actually correct - the tracks can bend out of the RoI even if the perigee phi is within the Roi

NB: This is completely wrong, tracks could be completely contained within an RoI but still fail this condition

calculation of approximate z position of the track at radius r and test if track within that z position at radius r

full check to determine whether a track is
fully contained in the Roi or not (when used in conjunction with contained_zed above)

now check phi taking account of the track transverse curvature

Definition at line 57 of file TrackRoiSelectionTool.cxx.

58 {
59
60 if( r==0 ) {
61 ATH_MSG_ERROR( "Called with null RoiDescriptor" );
62 return true;
63 }
64
65 if( r->composite() ) {
66
67 for( unsigned i=r->size() ; i-- ; )
68 if( accept( t, (const TrigRoiDescriptor*)r->at(i) ) )
69 return true;
70
71 } else {
72
73 if( r->isFullscan() ) return true;
74
77 bool contained_phi = ( r->phiMinus() < r->phiPlus() ) ?
78 ( phi(t) > r->phiMinus() && phi(t) < r->phiPlus() ) :
79 ( phi(t) > r->phiMinus() || phi(t) < r->phiPlus() );
80
81 bool contained_zed = ( z0(t) > r->zedMinus() && z0(t) < r->zedPlus() );
82
85 bool contained_eta = ( eta(t) < r->etaPlus() && eta(t) > r->etaMinus() );
86
89 exitPoint_t exit = getExitPoint( z0(t), eta(t) );
90
94 exitPoint_t exitPlus = getExitPoint( r->zedPlus(), r->etaPlus() );
95 exitPoint_t exitMinus = getExitPoint( r->zedMinus(), r->etaMinus() );
96
97 float cross0 = exit.z * exitMinus.r - exit.r * exitMinus.z;
98 float cross1 = exit.z * exitPlus.r - exit.r * exitPlus.z;
99
100 contained_eta = ( cross0>0 && cross1<0 ) ? true : false;
101
103 float newphi = getOuterPhi( pTsig(t), phi(t), exit.r );
104
105 if( newphi < -999. ) return false;
106
107 if( r->phiMinus() < r->phiPlus() ) contained_phi &= ( newphi > r->phiMinus() && newphi < r->phiPlus() );
108 else contained_phi &= ( newphi > r->phiMinus() || newphi < r->phiPlus() );
109
110 if( contained_eta && contained_phi && contained_zed ) return true;
111 }
112
113 return false;
114}
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
#define ATH_MSG_ERROR(x)
Athena::TPCnvVers::Current TrigRoiDescriptor
float getOuterPhi(float pt, float phi, float r=1000.) const
bool accept(const T &t, const TrigRoiDescriptor *r) const
geometric RoI filters - for non-trigger tracks (e.g. offline, truth, etc.)
exitPoint_t getExitPoint(float tz0, float teta) const
Geometric utility methods for track-RoI association.
int r
Definition globals.cxx:22
float z0(const U &p)
float pTsig(const U &p)
Accessor utility function for getting the value of signed pT.

◆ ASG_TOOL_CLASS()

IDTPM::TrackRoiSelectionTool::ASG_TOOL_CLASS ( TrackRoiSelectionTool ,
IAsgTool  )

◆ 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

◆ getExitPoint()

IDTPM::exitPoint_t IDTPM::TrackRoiSelectionTool::getExitPoint ( float tz0,
float teta ) const
private

Geometric utility methods for track-RoI association.


----— getExitPoint ----—

leaves through the barrel side or front face?

through the barrel edge actually need to calculate the z exit coordinate
for proper containment rather than spurious "eta containment"

Definition at line 156 of file TrackRoiSelectionTool.cxx.

157 {
158
159 exitPoint_t exitPoint;
160 float rexit(0.), zexit(0.);
161 const float maxRadius = 1000.;
162 const float maxZed = 2700.;
163
164 if ( teta < 0 ) zexit = -maxZed;
165 else if ( teta > 0 ) zexit = maxZed;
166 else {
167 exitPoint.z = tz0;
168 exitPoint.r = maxRadius;
169 exitPoint.tantheta = 1e16; // don't really want to use nan
170 return exitPoint;
171 }
172
173 float tantheta = std::tan( 2 * std::atan( std::exp( -teta ) ) );
174
175 rexit = ( zexit - tz0 ) * tantheta;
176
178 if ( std::fabs(rexit) > maxRadius ) {
183
184 zexit = maxRadius / tantheta + tz0;
185 rexit = maxRadius;
186 }
187
188 exitPoint.z = zexit;
189 exitPoint.r = rexit;
190 exitPoint.tantheta = tantheta;
191 return exitPoint;
192}

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

◆ getOuterPhi()

float IDTPM::TrackRoiSelectionTool::getOuterPhi ( float pt,
float phi,
float r = 1000. ) const
private

----— getOuterPhi ----—

calculate the (very approximate) phi position for a track at a radius r

track (signed) radius of curvature

make sure it escapes the radius in question

calculate new position

wrap to -pi to pi

Definition at line 128 of file TrackRoiSelectionTool.cxx.

129 {
130
133
135 float mqR = 10 * pt / ( 2.99792458 * 2 ); // 2.998=speed of light, 2=Atlas B field
136 float ratio = 0.5 * r / mqR;
137 float newphi = phi;
138
140 if( std::fabs( ratio ) > 1 ) return -9999.;
141
143 newphi -= std::asin( ratio );
144
146 while( newphi < -M_PI ) newphi += 2 * M_PI;
147 while( newphi > M_PI ) newphi -= 2 * M_PI;
148
149 return newphi;
150}
#define M_PI

◆ getProperty()

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

Get one of the tool's properties.

◆ getTracks()

template<class T>
std::vector< const T * > IDTPM::TrackRoiSelectionTool::getTracks ( const std::vector< const T * > & tvec,
const TrigRoiDescriptor * r ) const

track getter function (for offline tracks or truth particles)


----— getTracks ----—

Definition at line 199 of file TrackRoiSelectionTool.cxx.

201 {
202
203 std::vector< const T* > selectedTracks;
204
205 for( size_t it=0 ; it<tvec.size() ; it++ ) {
206 const T* thisTrack = tvec.at(it);
207 if( accept<T>( *thisTrack, r ) ) {
208 selectedTracks.push_back( thisTrack );
209 }
210 }
211
212 return selectedTracks;
213}
unsigned long long T

◆ getTrigTracks()

std::vector< const xAOD::TrackParticle * > IDTPM::TrackRoiSelectionTool::getTrigTracks ( const std::vector< const xAOD::TrackParticle * > & tvec,
const ElementLink< TrigRoiDescriptorCollection > & roiLink ) const

TrigDecTool- and EventView-based getter function for trigger tracks.


----— getTrigTracks ----—

Getting trigger track collection handle

Retrieving ALL trigger tracks within the RoI

Getting SELECTED trigger tracks within the RoI

Check if in-RoI track is also in the selected (full-scan) trigger track vector i.e. if it passes the quality selection (if any)

Definition at line 232 of file TrackRoiSelectionTool.cxx.

235{
237 SG::ReadHandle< xAOD::TrackParticleContainer > handle( m_triggerTrkParticleName );
238
242 m_trigDecTool->associateToEventView( handle, roiLink );
243
245 std::vector< const xAOD::TrackParticle* > selectedTrigTracks;
247 for( trkItr = trigTrkItrPair.first ; trkItr != trigTrkItrPair.second ; ++trkItr ) {
250 if( std::find( tvec.begin(), tvec.end(), *trkItr ) == tvec.end() ) {
251 ATH_MSG_DEBUG( "Trigger track does not pass quality selection. Skipping." );
252 continue;
253 }
254 selectedTrigTracks.push_back( *trkItr );
255 }
256
257 return selectedTrigTracks;
258}
#define ATH_MSG_DEBUG(x)
DataModel_detail::const_iterator< DataVector > const_iterator
Definition DataVector.h:838
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_triggerTrkParticleName
Trigger TrackParticleContainer's name.
PublicToolHandle< Trig::TrigDecisionTool > m_trigDecTool
TrigDecTool.

◆ initialize()

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

Initialize.


----— Initialize ----—

Reimplemented from asg::AsgTool.

Definition at line 38 of file TrackRoiSelectionTool.cxx.

38 {
39
41
42 ATH_MSG_DEBUG( "Initializing " << name() );
43
45 not m_triggerTrkParticleName.key().empty() ) );
46
47 ATH_CHECK( m_trigDecTool.retrieve() );
48
49 return StatusCode::SUCCESS;
50}
#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() [1/2]

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

◆ print() [2/2]

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

◆ selectTracksInRoI()

StatusCode IDTPM::TrackRoiSelectionTool::selectTracksInRoI ( TrackAnalysisCollections & trkAnaColls,
const ElementLink< TrigRoiDescriptorCollection > & roiLink )

Main Track selection method.


— selectTracksInRoI —

retrieving TrkAnaDefSvc

Trigger tracks RoI selection Filled only if trigger vertex collection is not empty

Offline tracks RoI selection

Truth particles RoI selection

Debug printout

Definition at line 264 of file TrackRoiSelectionTool.cxx.

266 {
267
268 ATH_MSG_DEBUG( "Selecting tracks in RoI" );
269
271 ISvcLocator* svcLoc = Gaudi::svcLocator();
272 SmartIF< ITrackAnalysisDefinitionSvc > trkAnaDefSvc(
273 svcLoc->service( "TrkAnaDefSvc"+trkAnaColls.anaTag() ) );
274 ATH_CHECK( trkAnaDefSvc.isValid() );
275
276 const TrigRoiDescriptor* const* roi = roiLink.cptr();
277
280 if( not m_triggerTrkParticleName.key().empty() ) {
281 ATH_CHECK( trkAnaColls.fillTrigTrackVec(
283 trkAnaColls.trigTrackVec( TrackAnalysisCollections::FS ),
284 roiLink ),
286 }
287
289 if( trkAnaDefSvc->useOffline() ) {
290 ATH_CHECK( trkAnaColls.fillOfflTrackVec(
291 getTracks(
292 trkAnaColls.offlTrackVec( TrackAnalysisCollections::FS ),
293 *roi ),
295 }
296
298 if( trkAnaDefSvc->useTruth() ) {
299 ATH_CHECK( trkAnaColls.fillTruthPartVec(
300 getTracks(
301 trkAnaColls.truthPartVec( TrackAnalysisCollections::FS ),
302 *roi ),
304 }
305
307 ATH_MSG_DEBUG( "Tracks after RoI selection: " <<
308 trkAnaColls.printInfo( TrackAnalysisCollections::InRoI, false ) );
309
310 return StatusCode::SUCCESS;
311}
std::vector< const T * > getTracks(const std::vector< const T * > &tvec, const TrigRoiDescriptor *r) const
track getter function (for offline tracks or truth particles)
std::vector< const xAOD::TrackParticle * > getTrigTracks(const std::vector< const xAOD::TrackParticle * > &tvec, const ElementLink< TrigRoiDescriptorCollection > &roiLink) const
TrigDecTool- and EventView-based getter function for trigger tracks.

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

PublicToolHandle< Trig::TrigDecisionTool > IDTPM::TrackRoiSelectionTool::m_trigDecTool
private
Initial value:
{
this, "TrigDecisionTool", "Trig::TrigDecisionTool/TrigDecisionTool", "" }

TrigDecTool.

Definition at line 86 of file TrackRoiSelectionTool.h.

86 {
87 this, "TrigDecisionTool", "Trig::TrigDecisionTool/TrigDecisionTool", "" };

◆ m_triggerTrkParticleName

SG::ReadHandleKey< xAOD::TrackParticleContainer > IDTPM::TrackRoiSelectionTool::m_triggerTrkParticleName
private
Initial value:
{
this, "TriggerTrkParticleContainerName", "", "Name of container of trigger tracks" }

Trigger TrackParticleContainer's name.

Definition at line 82 of file TrackRoiSelectionTool.h.

82 {
83 this, "TriggerTrkParticleContainerName", "", "Name of container of trigger tracks" };

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