ATLAS Offline Software
Loading...
Searching...
No Matches
xAOD::BPhysTrackVertexMapTool Class Reference

Dual-use tool createing a track-to-vertex map from the vertex-to-track information. More...

#include <BPhysTrackVertexMapTool.h>

Inheritance diagram for xAOD::BPhysTrackVertexMapTool:

Public Member Functions

 BPhysTrackVertexMapTool (const std::string &name="BPhysTrackVertexMapTool")
 Declare the correct constructor for Athena.
virtual StatusCode initialize () override
 Function initialising the tool.
virtual StatusCode logEvent () override
 Function being excuted for each event.
virtual StatusCode finalize () override
 Function finalizing the tool.
virtual bool doLog () const override
 Function indicating whether log counter allows logging of current event.
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.

Static Public Member Functions

static std::string wrapLines (const std::string &lines, const std::string &prefix)
 convenience method to wrap output lines by a prefix

Protected Member Functions

virtual float getFloat (std::string name, const xAOD::Vertex *b)
virtual std::vector< std::string > getTokens (std::string input, std::string seperators)
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.
Functions to be called by user classes

fill cache for current event

virtual StatusCode cacheEvent () override
virtual std::vector< const xAOD::Vertex * > pvsForIDTrack (const xAOD::TrackParticle *track) const override
 obtain primary vertices for a given ID track (may return empty vector)
virtual std::vector< const xAOD::Vertex * > refPVsForIDTrack (const xAOD::TrackParticle *track) const override
 obtain refitted primary vertices for a given ID track (may return empty vector)
virtual std::vector< const xAOD::Vertex * > svsForIDTrack (const xAOD::TrackParticle *track) const override
 obtain secondary vertices for a given ID track (may return empty vector)
virtual std::string idTrackToString (const xAOD::TrackParticle *track, unsigned int indent=0, bool withPV=false, bool withRefPV=false, bool withSV=false) override
virtual std::string pvToString (const xAOD::Vertex *vtx, unsigned int indent=0, bool withTracks=false) override
virtual std::string refPVToString (const xAOD::Vertex *vtx, unsigned int indent=0, bool withTracks=false) override
virtual std::string svToString (const xAOD::Vertex *vtx, unsigned int indent=0, bool withTracks=false, bool withMasses=false) override
virtual std::string idTracksToString (const xAOD::TrackParticleContainer *tpc, unsigned int indent=0, bool withPV=false, bool withRefPV=false, bool withSV=false) override
virtual std::string pvsToString (const xAOD::VertexContainer *pvc, unsigned int indent=0, bool withTracks=false) override
virtual std::string refPVsToString (const xAOD::VertexContainer *rpvc, unsigned int indent=0, bool withTracks=false) override
virtual std::string svsToString (const xAOD::VertexContainer *svc, unsigned int indent=0, bool withTracks=false, bool withMasses=false) override
virtual std::string summaryToString (std::string prefix) override

Protected Attributes

std::string m_vertexContainerName
std::string m_refPVContainerName
std::string m_pvContainerName
std::string m_trackParticleContainerName
int m_debugTrkToVtxMaxEvents
std::string m_dumpPrefix
std::string m_hypoName
const xAOD::TrackParticleContainerm_tracks
const xAOD::TrackParticleAuxContainerm_tracksAux
const xAOD::VertexContainerm_pvtxContainer
const xAOD::VertexContainerm_svtxContainer
const xAOD::VertexAuxContainerm_svtxAuxContainer
const xAOD::VertexContainerm_refPVContainer
const xAOD::VertexAuxContainerm_refPVAuxContainer
unsigned int m_nEvtsSeen
int m_cachedRun
int m_cachedEvent

Private Types

typedef std::map< const xAOD::TrackParticle *, std::vector< const xAOD::Vertex * > > TrackToVertexMap_t
typedef std::map< const xAOD::Vertex *, std::string > VertexNameMap_t
typedef std::map< const xAOD::TrackParticle *, std::string > TrackNameMap_t
typedef ServiceHandle< StoreGateSvcStoreGateSvc_t

Private Member Functions

virtual void initTrackVertexMaps (const xAOD::TrackParticleContainer *tpc, const xAOD::VertexContainer *pvc, const xAOD::VertexContainer *rpvc, const xAOD::VertexContainer *svc)
virtual void addVertexToTrackVertexMap (TrackToVertexMap_t &map, const xAOD::TrackParticle *track, const xAOD::Vertex *vtx)
virtual std::string pvName (const xAOD::Vertex *vtx)
virtual std::string refPVName (const xAOD::Vertex *vtx)
virtual std::string svName (const xAOD::Vertex *vtx)
virtual std::string idTrackName (const xAOD::TrackParticle *vtx)
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey>

Private Attributes

VertexNameMap_t m_pvNameMap
VertexNameMap_t m_refPVNameMap
VertexNameMap_t m_svNameMap
TrackNameMap_t m_idTrackNameMap
TrackToVertexMap_t m_idTrackToPVMap
TrackToVertexMap_t m_idTrackToRefPVMap
TrackToVertexMap_t m_idTrackToSVMap
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

Dual-use tool createing a track-to-vertex map from the vertex-to-track information.

Job options provided by this class:

  • VertexContainerName – name of container for secondary vertices
  • RefPVContainerName – name of container for refitted PVs
  • PVContainerName – name of container for primary vertices
  • TrackParticleContainerName – name of container for TrackParticles
  • DebugTrkToVtxMaxEvents – Maximum number of events to produce detailed log output for the track-to-vertex association maps. Set to -1 for infinity.
  • DumpPrefix – Line prefix for log dump lines.
  • HypoName – Hypothesis name (for picking up inv. mass values) May be a set of hypo names to be tested, delimited by '|'.
Author
Wolfgang Walkowiak Wolfg.nosp@m.ang..nosp@m.Walko.nosp@m.wiak.nosp@m.@cern.nosp@m..ch

$Revision:$

Date

Definition at line 47 of file BPhysTrackVertexMapTool.h.

Member Typedef Documentation

◆ StoreGateSvc_t

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

Definition at line 388 of file AthCommonDataStore.h.

◆ TrackNameMap_t

typedef std::map<const xAOD::TrackParticle*, std::string> xAOD::BPhysTrackVertexMapTool::TrackNameMap_t
private

Definition at line 185 of file BPhysTrackVertexMapTool.h.

◆ TrackToVertexMap_t

typedef std::map<const xAOD::TrackParticle*, std::vector<const xAOD::Vertex*> > xAOD::BPhysTrackVertexMapTool::TrackToVertexMap_t
private

Definition at line 140 of file BPhysTrackVertexMapTool.h.

◆ VertexNameMap_t

typedef std::map<const xAOD::Vertex*, std::string> xAOD::BPhysTrackVertexMapTool::VertexNameMap_t
private

Definition at line 180 of file BPhysTrackVertexMapTool.h.

Constructor & Destructor Documentation

◆ BPhysTrackVertexMapTool()

xAOD::BPhysTrackVertexMapTool::BPhysTrackVertexMapTool ( const std::string & name = "BPhysTrackVertexMapTool")

Declare the correct constructor for Athena.

Regular AsgTool constructor

Definition at line 36 of file BPhysTrackVertexMapTool.cxx.

37 : asg::AsgTool( name ),
38 m_tracks(NULL), m_tracksAux(NULL), m_pvtxContainer(NULL),
42
43#ifdef ASGTOOL_ATHENA
44 declareInterface< IBPhysTrackVertexMapTool >( this );
45#endif // ASGTOOL_ATHENA
46
47 // Necessary containers
48 declareProperty("VertexContainerName", m_vertexContainerName);
49 declareProperty("TrackParticleContainerName",
50 m_trackParticleContainerName="InDetTrackParticles");
51 declareProperty("PVContainerName", m_pvContainerName = "PrimaryVertices");
52 declareProperty("RefPVContainerName", m_refPVContainerName);
53
54 // Maximum number of events to dump maps to log file for
55 declareProperty("DebugTrkToVtxMaxEvents", m_debugTrkToVtxMaxEvents = 0);
56
57 // Prefix for log dump lines
58 declareProperty("DumpPrefix", m_dumpPrefix="TTV> ");
59
60 // Hypothesis name (for mass value pickup)
61 declareProperty("HypoName", m_hypoName="__NONE__");
62 }
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
const xAOD::VertexAuxContainer * m_svtxAuxContainer
const xAOD::VertexContainer * m_refPVContainer
const xAOD::VertexContainer * m_svtxContainer
const xAOD::TrackParticleContainer * m_tracks
const xAOD::TrackParticleAuxContainer * m_tracksAux
const xAOD::VertexAuxContainer * m_refPVAuxContainer
const xAOD::VertexContainer * m_pvtxContainer

Member Function Documentation

◆ addVertexToTrackVertexMap()

void xAOD::BPhysTrackVertexMapTool::addVertexToTrackVertexMap ( TrackToVertexMap_t & map,
const xAOD::TrackParticle * track,
const xAOD::Vertex * vtx )
privatevirtual

Definition at line 323 of file BPhysTrackVertexMapTool.cxx.

326 {
327
328 TrackToVertexMap_t::const_iterator it = map.find(track);
329
330 if ( it == map.end() ) {
331 map[track] = std::vector<const xAOD::Vertex*>();
332 }
333 map[track].push_back(vtx);
334 }

◆ cacheEvent()

StatusCode xAOD::BPhysTrackVertexMapTool::cacheEvent ( )
overrideprotectedvirtual

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 139 of file BPhysTrackVertexMapTool.cxx.

139 {
140
141 ATH_MSG_DEBUG("BPhysTrackVertexMapTool::cacheEvent -- begin");
142
143 const xAOD::EventInfo* eventInfo = NULL;
144 ATH_CHECK(evtStore()->retrieve(eventInfo, "EventInfo"));
145
146 if ( m_cachedRun != (int)eventInfo->runNumber() ||
147 m_cachedEvent != (int)eventInfo->eventNumber() ) {
148
149 // note update
150 m_cachedRun = eventInfo->runNumber();
151 m_cachedEvent = eventInfo->eventNumber();
152
153 ATH_MSG_DEBUG("BPhysTrackVertexMapTool::cacheEvent: caching now: "
154 << "run " << m_cachedRun << " event " << m_cachedEvent);
155
156 // retrieve primary vertices container
157 m_pvtxContainer = NULL;
159 ATH_MSG_DEBUG("Found PV collection with key " << m_pvContainerName);
160
161 // retrieve ID track container
162 m_tracks = NULL;
163 m_tracksAux = NULL;
165 if (evtStore()->contains<xAOD::
169 } else {
170 ATH_MSG_DEBUG("No aux track collection with key "
172 }
173 ATH_MSG_DEBUG("Found track collection with key "
175
176 // vertex container and its auxilliary store
177 m_svtxContainer = NULL;
178 m_svtxAuxContainer = NULL;
181 m_vertexContainerName+"Aux."));
182 ATH_MSG_DEBUG("Found SV collection with key " << m_vertexContainerName);
183
184 // refitted primary vertex container and its auxilliary store
185 m_refPVContainer = NULL;
186 m_refPVAuxContainer = NULL;
189 m_refPVContainerName+"Aux."));
190 ATH_MSG_DEBUG("Found refitted PV collection with key "
192
193 // initialize track, PV and refPV maps
196 } // if new run/event
197
198 ATH_MSG_DEBUG("BPhysTrackVertexMapTool::cacheEvent -- end");
199
200 // Return gracefully:
201 return StatusCode::SUCCESS;
202 }
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_DEBUG(x)
ServiceHandle< StoreGateSvc > & evtStore()
virtual void initTrackVertexMaps(const xAOD::TrackParticleContainer *tpc, const xAOD::VertexContainer *pvc, const xAOD::VertexContainer *rpvc, const xAOD::VertexContainer *svc)
uint32_t runNumber() const
The current event's run number.
uint64_t eventNumber() const
The current event's event number.
bool contains(const std::string &s, const std::string &regx)
does a string contain the substring
Definition hcg.cxx:114
retrieve(aClass, aKey=None)
Definition PyKernel.py:110
EventInfo_v1 EventInfo
Definition of the latest event info version.
TrackParticleAuxContainer_v5 TrackParticleAuxContainer
Definition of the current TrackParticle auxiliary container.

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

◆ doLog()

bool xAOD::BPhysTrackVertexMapTool::doLog ( ) const
overridevirtual

Function indicating whether log counter allows logging of current event.

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 126 of file BPhysTrackVertexMapTool.cxx.

126 {
127
128 return ( m_debugTrkToVtxMaxEvents < 0 ||
130 }

◆ 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 xAOD::BPhysTrackVertexMapTool::finalize ( )
overridevirtual

Function finalizing the tool.

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 95 of file BPhysTrackVertexMapTool.cxx.

95 {
96
97 ATH_MSG_DEBUG( "Finalizing xAOD::BPhysTrackVertexMapTool" );
98
99 // Return gracefully:
100 return StatusCode::SUCCESS;
101 }

◆ getFloat()

float xAOD::BPhysTrackVertexMapTool::getFloat ( std::string name,
const xAOD::Vertex * b )
protectedvirtual

Definition at line 615 of file BPhysTrackVertexMapTool.cxx.

616 {
617
618 float res = -999999.;
619
620 SG::AuxElement::Accessor<float> floatAcc(name);
621 if ( floatAcc.isAvailable(*b) ) res = floatAcc(*b);
622
623 return res;
624 }
std::pair< std::vector< unsigned int >, bool > res

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

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

◆ getProperty()

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

Get one of the tool's properties.

◆ getTokens()

std::vector< std::string > xAOD::BPhysTrackVertexMapTool::getTokens ( std::string input,
std::string seperators )
protectedvirtual

Definition at line 628 of file BPhysTrackVertexMapTool.cxx.

629 {
630
631 std::vector<std::string> tokens;
632 boost::char_separator<char> sep(seperators.c_str());
633 typedef boost::tokenizer<boost::char_separator<char> > Tokenizer_t;
634 Tokenizer_t tokenizer(input, sep);
635 for (auto& token : tokenizer) {
636 tokens.push_back(token);
637 }
638 return tokens;
639 }

◆ idTrackName()

std::string xAOD::BPhysTrackVertexMapTool::idTrackName ( const xAOD::TrackParticle * vtx)
privatevirtual

Definition at line 372 of file BPhysTrackVertexMapTool.cxx.

372 {
373
374 if ( m_idTrackNameMap.find(track) == m_idTrackNameMap.end() ) {
375 std::string f = std::format("T{:04d}", m_idTrackNameMap.size());
377 }
378 return m_idTrackNameMap[track];
379 }

◆ idTracksToString()

std::string xAOD::BPhysTrackVertexMapTool::idTracksToString ( const xAOD::TrackParticleContainer * tpc,
unsigned int indent = 0,
bool withPV = false,
bool withRefPV = false,
bool withSV = false )
overrideprotectedvirtual

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 514 of file BPhysTrackVertexMapTool.cxx.

519 {
520
521 std::string str;
522 std::string sind(indent, ' ');
523 str += sind + "ID tracks: (" + std::to_string(tpc->size()) + ")\n";
524 str += sind + std::string(80-indent, '-');
525 // loop over ID tracks
527 trkItr != tpc->end(); ++trkItr) {
528 const xAOD::TrackParticle* track = *trkItr;
529 str += "\n"
530 + idTrackToString(track, indent+2, withPV, withRefPV, withSV);
531 }
532 return str;
533 }
DataModel_detail::const_iterator< DataVector > const_iterator
Definition DataVector.h:838
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
size_type size() const noexcept
Returns the number of elements in the collection.
virtual std::string idTrackToString(const xAOD::TrackParticle *track, unsigned int indent=0, bool withPV=false, bool withRefPV=false, bool withSV=false) override
TrackParticle_v1 TrackParticle
Reference the current persistent version:

◆ idTrackToString()

std::string xAOD::BPhysTrackVertexMapTool::idTrackToString ( const xAOD::TrackParticle * track,
unsigned int indent = 0,
bool withPV = false,
bool withRefPV = false,
bool withSV = false )
overrideprotectedvirtual

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 384 of file BPhysTrackVertexMapTool.cxx.

387 {
388
389 std::string sind(indent, ' ');
390 std::string str = std::format("{} {:<5} {} ({:10.4f}, {:10.4f}, {:10.4f}) VL ",
391 sind, idTrackName(track), static_cast<const void*>(track),
392 track->pt(),track->eta(), track->phi());
393 if ( withPV ) {
394 TrackToVertexMap_t::iterator it = m_idTrackToPVMap.find(track);
395 if ( it != m_idTrackToPVMap.end() ) {
396 for ( auto vtx : it->second ) {
397 str += "\n" + pvToString(vtx, indent+2, false);
398 }
399 } else {
400 std::string f = std::format("\n{} {}", sind, "NOPV");
401 str += f;
402
403 }
404 }
405 if ( withRefPV ) {
406 TrackToVertexMap_t::iterator it = m_idTrackToRefPVMap.find(track);
407 if ( it != m_idTrackToRefPVMap.end() ) {
408 for ( auto vtx : it->second ) {
409 str += "\n" + refPVToString(vtx, indent+2, false);
410 }
411 } else {
412 std::string f = std::format("\n{} {}", sind, "NORV");
413 str += f;
414 }
415 }
416 if ( withSV ) {
417 TrackToVertexMap_t::iterator it = m_idTrackToSVMap.find(track);
418 if ( it != m_idTrackToSVMap.end() ) {
419 for ( auto vtx : it->second ) {
420 str += "\n" + svToString(vtx, indent+2, false);
421 }
422 } else {
423 std::string f2 = std::format("\n{} {}", sind, "NOSV");
424 str += f2;
425 }
426 }
427 return str;
428 }
virtual std::string idTrackName(const xAOD::TrackParticle *vtx)
virtual std::string pvToString(const xAOD::Vertex *vtx, unsigned int indent=0, bool withTracks=false) override
virtual std::string svToString(const xAOD::Vertex *vtx, unsigned int indent=0, bool withTracks=false, bool withMasses=false) override
virtual std::string refPVToString(const xAOD::Vertex *vtx, unsigned int indent=0, bool withTracks=false) override

◆ initialize()

StatusCode xAOD::BPhysTrackVertexMapTool::initialize ( void )
overridevirtual

Function initialising the tool.

Reimplemented from asg::AsgTool.

Definition at line 64 of file BPhysTrackVertexMapTool.cxx.

64 {
65
66 // Greet the user:
67 ATH_MSG_DEBUG( "Initializing xAOD::BPhysTrackVertexMapTool" );
68
69 if ( m_vertexContainerName == "" ) {
70 ATH_MSG_ERROR("No vertex container name provided!");
71 }
72 if ( m_refPVContainerName == "" ) {
73 ATH_MSG_ERROR("No refitted PV container name provided!");
74 }
75 if ( m_trackParticleContainerName == "" ) {
76 ATH_MSG_ERROR("No track particle container name provided!");
77 }
78 if ( m_pvContainerName == "" ) {
79 ATH_MSG_ERROR("No PV container name provided!");
80 }
81 // some info for the job log
82 ATH_MSG_INFO("VertexContainerName : " << m_vertexContainerName);
83 ATH_MSG_INFO("PVContainerName : " << m_pvContainerName);
84 ATH_MSG_INFO("RefPVContainerName : " << m_refPVContainerName);
85 ATH_MSG_INFO("TrackParticleContainerName : "
87 ATH_MSG_INFO("DebugTrkToVtxMaxEvents : " << m_debugTrkToVtxMaxEvents);
88 ATH_MSG_INFO("DumpPrefix : " << m_dumpPrefix);
89 ATH_MSG_INFO("HypoName : " << m_hypoName);
90
91 // Return gracefully:
92 return StatusCode::SUCCESS;
93 }
#define ATH_MSG_ERROR(x)
#define ATH_MSG_INFO(x)

◆ initTrackVertexMaps()

void xAOD::BPhysTrackVertexMapTool::initTrackVertexMaps ( const xAOD::TrackParticleContainer * tpc,
const xAOD::VertexContainer * pvc,
const xAOD::VertexContainer * rpvc,
const xAOD::VertexContainer * svc )
privatevirtual

Definition at line 262 of file BPhysTrackVertexMapTool.cxx.

266 {
267
268 // clear previous entries
269 m_pvNameMap.clear();
270 m_refPVNameMap.clear();
271 m_svNameMap.clear();
272 m_idTrackNameMap.clear();
273 m_idTrackToPVMap.clear();
274 m_idTrackToRefPVMap.clear();
275 m_idTrackToSVMap.clear();
276
277 // initialize maps for PVs
278 for (xAOD::VertexContainer::const_iterator vtxItr = pvc->begin();
279 vtxItr != pvc->end(); ++vtxItr) {
280 const xAOD::Vertex* vtx = *vtxItr;
281 pvName(vtx);
282 for (size_t i = 0; i < vtx->nTrackParticles(); ++i) {
283 const xAOD::TrackParticle* track = vtx->trackParticle(i);
284 // m_idTrackToPVMap[track] = vtx;
286 }
287 }
288 // initialize maps for refitted PVs
289 for (xAOD::VertexContainer::const_iterator vtxItr = rpvc->begin();
290 vtxItr != rpvc->end(); ++vtxItr) {
291 const xAOD::Vertex* vtx = *vtxItr;
292 refPVName(vtx);
293 for (size_t i = 0; i < vtx->nTrackParticles(); ++i) {
294 const xAOD::TrackParticle* track = vtx->trackParticle(i);
295 // m_idTrackToRefPVMap[track] = vtx;
297 }
298 }
299
300 // initialize maps for SVs
301 for (xAOD::VertexContainer::const_iterator vtxItr = svc->begin();
302 vtxItr != svc->end(); ++vtxItr) {
303 const xAOD::Vertex* vtx = *vtxItr;
304 svName(vtx);
305 for (size_t i = 0; i < vtx->nTrackParticles(); ++i) {
306 const xAOD::TrackParticle* track = vtx->trackParticle(i);
307 // m_idTrackToSVMap[track] = vtx;
309 }
310 }
311 // initialize maps for ID tracks
313 trkItr != tpc->end(); ++trkItr) {
314 const xAOD::TrackParticle* track = *trkItr;
316 }
317 }
virtual std::string pvName(const xAOD::Vertex *vtx)
virtual std::string svName(const xAOD::Vertex *vtx)
virtual std::string refPVName(const xAOD::Vertex *vtx)
virtual void addVertexToTrackVertexMap(TrackToVertexMap_t &map, const xAOD::TrackParticle *track, const xAOD::Vertex *vtx)
size_t nTrackParticles() const
Get the number of tracks associated with this vertex.
const TrackParticle * trackParticle(size_t i) const
Get the pointer to a given track that was used in vertex reco.
AthROOTErrorHandlerSvc * svc
Vertex_v1 Vertex
Define the latest version of the vertex class.

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

◆ logEvent()

StatusCode xAOD::BPhysTrackVertexMapTool::logEvent ( )
overridevirtual

Function being excuted for each event.

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 103 of file BPhysTrackVertexMapTool.cxx.

103 {
104
105 ATH_MSG_DEBUG( "logEvent in xAOD::BPhysTrackVertexMapTool" );
106
107 // read info into maps cache
109
110 // dump info from maps if requested
111 if ( doLog() ) {
112
113 ATH_MSG_INFO("Track-to-vertex association map:");
114
115 std::cout << summaryToString(m_dumpPrefix) << std::endl;
116
117 } // if requested
118
119 // increment counter
120 m_nEvtsSeen++;
121
122 // Return gracefully:
123 return StatusCode::SUCCESS;
124 }
virtual StatusCode cacheEvent() override
virtual std::string summaryToString(std::string prefix) override
virtual bool doLog() const override
Function indicating whether log counter allows logging of current event.

◆ 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()

◆ pvName()

std::string xAOD::BPhysTrackVertexMapTool::pvName ( const xAOD::Vertex * vtx)
privatevirtual

Definition at line 338 of file BPhysTrackVertexMapTool.cxx.

338 {
339
340 if ( m_pvNameMap.find(vtx) == m_pvNameMap.end() ) {
341 std::string f = std::format("PV{:03d}", m_pvNameMap.size());
342 m_pvNameMap[vtx] = f;
343 }
344 return m_pvNameMap[vtx];
345 }

◆ pvsForIDTrack()

std::vector< const xAOD::Vertex * > xAOD::BPhysTrackVertexMapTool::pvsForIDTrack ( const xAOD::TrackParticle * track) const
overrideprotectedvirtual

obtain primary vertices for a given ID track (may return empty vector)

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 209 of file BPhysTrackVertexMapTool.cxx.

210 {
211
212 TrackToVertexMap_t::const_iterator it = m_idTrackToPVMap.find(track);
213
214 if ( it != m_idTrackToPVMap.end() ) {
215 return it->second;
216 } else {
217 std::vector<const xAOD::Vertex*> dummy;
218 return dummy;
219 }
220 }

◆ pvsToString()

std::string xAOD::BPhysTrackVertexMapTool::pvsToString ( const xAOD::VertexContainer * pvc,
unsigned int indent = 0,
bool withTracks = false )
overrideprotectedvirtual

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 538 of file BPhysTrackVertexMapTool.cxx.

540 {
541
542 std::string str;
543 std::string sind(indent, ' ');
544 str += sind + "Primary vertices: (" + std::to_string(pvc->size()) + ")\n";
545 str += sind + std::string(80-indent, '-');
546 for (xAOD::VertexContainer::const_iterator vtxItr = pvc->begin();
547 vtxItr != pvc->end(); ++vtxItr) {
548 const xAOD::Vertex* vtx = *vtxItr;
549 str += "\n" + pvToString(vtx, indent+2, withTracks);
550 } // for
551
552 return str;
553 }

◆ pvToString()

std::string xAOD::BPhysTrackVertexMapTool::pvToString ( const xAOD::Vertex * vtx,
unsigned int indent = 0,
bool withTracks = false )
overrideprotectedvirtual

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 433 of file BPhysTrackVertexMapTool.cxx.

435 {
436
437 std::string sind(indent, ' ');
438 std::string str = std::format("{} {:<5} {} ({:10.4f}, {:10.4f}, {:10.4f}) NT {:4d} VT {}",
439 sind, pvName(vtx), static_cast<const void*>(vtx), vtx->x(), vtx->y(), vtx->z(),
440 vtx->nTrackParticles(), static_cast<int>(vtx->vertexType()));
441 if ( withTracks ) {
442 for (size_t i=0; i < vtx->nTrackParticles(); ++i) {
443 std::string f2 = std::format("\n{} {:4d} {}",
444 sind, i, idTrackToString(vtx->trackParticle(i), 0, false, false));
445 str += f2;
446 } // for
447 }
448
449 return str;
450 }
float z() const
Returns the z position.
float y() const
Returns the y position.
VxType::VertexType vertexType() const
The type of the vertex.
float x() const
Returns the x position.

◆ refPVName()

std::string xAOD::BPhysTrackVertexMapTool::refPVName ( const xAOD::Vertex * vtx)
privatevirtual

Definition at line 349 of file BPhysTrackVertexMapTool.cxx.

349 {
350
351 if ( m_refPVNameMap.find(vtx) == m_refPVNameMap.end() ) {
352 std::string f = std::format("RV{:03d}", m_refPVNameMap.size());
353 m_refPVNameMap[vtx] = f;
354 }
355 return m_refPVNameMap[vtx];
356 }

◆ refPVsForIDTrack()

std::vector< const xAOD::Vertex * > xAOD::BPhysTrackVertexMapTool::refPVsForIDTrack ( const xAOD::TrackParticle * track) const
overrideprotectedvirtual

obtain refitted primary vertices for a given ID track (may return empty vector)

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 227 of file BPhysTrackVertexMapTool.cxx.

228 {
229
230 TrackToVertexMap_t::const_iterator it = m_idTrackToRefPVMap.find(track);
231
232 if ( it != m_idTrackToRefPVMap.end() ) {
233 return it->second;
234 } else {
235 std::vector<const xAOD::Vertex*> dummy;
236 return dummy;
237 }
238 }

◆ refPVsToString()

std::string xAOD::BPhysTrackVertexMapTool::refPVsToString ( const xAOD::VertexContainer * rpvc,
unsigned int indent = 0,
bool withTracks = false )
overrideprotectedvirtual

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 559 of file BPhysTrackVertexMapTool.cxx.

561 {
562
563 std::string str;
564 std::string sind(indent, ' ');
565 str += sind + "Refitted primary vertices: (" + std::to_string(rpvc->size()) + ")\n";
566 str += sind + std::string(80-indent, '-');
567 for (xAOD::VertexContainer::const_iterator vtxItr = rpvc->begin();
568 vtxItr != rpvc->end(); ++vtxItr) {
569 const xAOD::Vertex* vtx = *vtxItr;
570 str += "\n" + refPVToString(vtx, indent+2, withTracks);
571 } // for
572
573 return str;
574 }

◆ refPVToString()

std::string xAOD::BPhysTrackVertexMapTool::refPVToString ( const xAOD::Vertex * vtx,
unsigned int indent = 0,
bool withTracks = false )
overrideprotectedvirtual

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 455 of file BPhysTrackVertexMapTool.cxx.

457 {
458
459 std::string sind(indent, ' ');
460 std::string str = std::format("{} {:<5} {} ({:10.4f}, {:10.4f}, {:10.4f}) NT {:4d} VT {}",
461 sind,refPVName(vtx), static_cast<const void*>(vtx), vtx->x(), vtx->y(), vtx->z(),
462 vtx->nTrackParticles(), static_cast<int>(vtx->vertexType()));
463 if ( withTracks ) {
464 for (size_t i=0; i < vtx->nTrackParticles(); ++i) {
465 str += std::format("\n{} {:4} {}", sind, i, idTrackToString(vtx->trackParticle(i), 0, false, false));
466 } // for
467 }
468
469 return str;
470 }

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

◆ summaryToString()

std::string xAOD::BPhysTrackVertexMapTool::summaryToString ( std::string prefix)
overrideprotectedvirtual

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 599 of file BPhysTrackVertexMapTool.cxx.

599 {
600
601 std::string form_str = std::format("{}\n\nRun: {} Event: {}\n\n", name(), m_cachedRun, m_cachedEvent);
602 std::string dstr =
603 wrapLines("\n"+form_str +
604 pvsToString(m_pvtxContainer, 0, true) + "\n\n" +
605 refPVsToString(m_refPVContainer, 0, true) + "\n\n" +
606 svsToString(m_svtxContainer, 0, true, true) + "\n\n" +
607 idTracksToString(m_tracks, 0, true, true, true) + "\n",
608 prefix);
609
610 return dstr;
611 }
virtual std::string svsToString(const xAOD::VertexContainer *svc, unsigned int indent=0, bool withTracks=false, bool withMasses=false) override
static std::string wrapLines(const std::string &lines, const std::string &prefix)
convenience method to wrap output lines by a prefix
virtual std::string pvsToString(const xAOD::VertexContainer *pvc, unsigned int indent=0, bool withTracks=false) override
virtual std::string refPVsToString(const xAOD::VertexContainer *rpvc, unsigned int indent=0, bool withTracks=false) override
virtual std::string idTracksToString(const xAOD::TrackParticleContainer *tpc, unsigned int indent=0, bool withPV=false, bool withRefPV=false, bool withSV=false) override

◆ svName()

std::string xAOD::BPhysTrackVertexMapTool::svName ( const xAOD::Vertex * vtx)
privatevirtual

Definition at line 360 of file BPhysTrackVertexMapTool.cxx.

360 {
361
362 if ( m_svNameMap.find(vtx) == m_svNameMap.end() ) {
363 std::string f = std::format("SV{:03d}", m_svNameMap.size());
364 m_svNameMap[vtx] = f;
365 }
366 return m_svNameMap[vtx];
367 }

◆ svsForIDTrack()

std::vector< const xAOD::Vertex * > xAOD::BPhysTrackVertexMapTool::svsForIDTrack ( const xAOD::TrackParticle * track) const
overrideprotectedvirtual

obtain secondary vertices for a given ID track (may return empty vector)

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 245 of file BPhysTrackVertexMapTool.cxx.

246 {
247
248 TrackToVertexMap_t::const_iterator it = m_idTrackToSVMap.find(track);
249
250 if ( it != m_idTrackToSVMap.end() ) {
251 return it->second;
252 } else {
253 std::vector<const xAOD::Vertex*> dummy;
254 return dummy;
255 }
256 }

◆ svsToString()

std::string xAOD::BPhysTrackVertexMapTool::svsToString ( const xAOD::VertexContainer * svc,
unsigned int indent = 0,
bool withTracks = false,
bool withMasses = false )
overrideprotectedvirtual

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 579 of file BPhysTrackVertexMapTool.cxx.

582 {
583
584 std::string str;
585 std::string sind(indent, ' ');
586 str += sind + "Secondary vertices: (" + std::to_string(svc->size()) + ")\n";
587 str += sind + std::string(80-indent, '-');
588 for (xAOD::VertexContainer::const_iterator vtxItr = svc->begin();
589 vtxItr != svc->end(); ++vtxItr) {
590 const xAOD::Vertex* vtx = *vtxItr;
591 str += "\n" + svToString(vtx, indent+2, withTracks, withMasses);
592 } // for
593
594 return str;
595 }

◆ svToString()

std::string xAOD::BPhysTrackVertexMapTool::svToString ( const xAOD::Vertex * vtx,
unsigned int indent = 0,
bool withTracks = false,
bool withMasses = false )
overrideprotectedvirtual

Implements xAOD::IBPhysTrackVertexMapTool.

Definition at line 475 of file BPhysTrackVertexMapTool.cxx.

478 {
479
480 std::string sind(indent, ' ');
481 std::string str = std::format("{} {:<5} {} ({:10.4f}, {:10.4f}, {:10.4f}) NT {:4} VT {}",
482 sind, svName(vtx), static_cast<const void*>(vtx), vtx->x(), vtx->y(), vtx->z(),
483 vtx->nTrackParticles(), static_cast<int>(vtx->vertexType()));
484 if ( withMasses && m_hypoName != "__NONE__" ) {
485 // vector of possible hypo names
486 std::vector<std::string> hypoNames = getTokens(m_hypoName, "|;/");
487 for ( const std::string& hypoName : hypoNames ) {
488 BPhysHypoHelper bhh(hypoName, vtx);
489 float bMass = bhh.mass();
490 float bMassErr = bhh.massErr();
491 float bMucMass = getFloat(hypoName+"_MUCALC_mass", vtx);
492 float bMucMassErr = getFloat(hypoName+"_MUCALC_massErr", vtx);
493 if ( bMass > 0. || bMassErr > 0.
494 || bMucMass > 0. || bMucMassErr > 0. ) {
495 str += std::format("\n{} {:<10} : mass : ({:15.4f} +/- {:15.4f}) MeV",
496 sind, hypoName, bMass, bMassErr);
497 str += std::format("\n{} {:<10} : m(MUCALC): ({:15.4f} +/- {:15.4f}) MeV",
498 sind, hypoName, bMucMass, bMucMassErr);
499 } // if one > 0.
500 } // for hypoNames
501 } // if withMasses
502 if ( withTracks ) {
503 for (size_t i=0; i < vtx->nTrackParticles(); ++i) {
504 str += std::format("\n{} {:4} {}", sind, i, idTrackToString(vtx->trackParticle(i), 0, false, false));
505 } // for
506 }
507 return str;
508 }
virtual float getFloat(std::string name, const xAOD::Vertex *b)
virtual std::vector< std::string > getTokens(std::string input, std::string seperators)

◆ 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

◆ wrapLines()

std::string xAOD::BPhysTrackVertexMapTool::wrapLines ( const std::string & lines,
const std::string & prefix )
static

convenience method to wrap output lines by a prefix

Definition at line 21 of file BPhysTrackVertexMapTool.cxx.

22 {
23
24 std::string ostr;
25 std::istringstream stream(lines);
26 std::string line;
27 while ( std::getline(stream, line) ) {
28 if ( !ostr.empty() ) ostr += "\n";
29 ostr += prefix + line;
30 }
31 return ostr;
32 }

Member Data Documentation

◆ m_cachedEvent

int xAOD::BPhysTrackVertexMapTool::m_cachedEvent
protected

Definition at line 176 of file BPhysTrackVertexMapTool.h.

◆ m_cachedRun

int xAOD::BPhysTrackVertexMapTool::m_cachedRun
protected

Definition at line 175 of file BPhysTrackVertexMapTool.h.

◆ m_debugTrkToVtxMaxEvents

int xAOD::BPhysTrackVertexMapTool::m_debugTrkToVtxMaxEvents
protected

Definition at line 160 of file BPhysTrackVertexMapTool.h.

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

std::string xAOD::BPhysTrackVertexMapTool::m_dumpPrefix
protected

Definition at line 161 of file BPhysTrackVertexMapTool.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_hypoName

std::string xAOD::BPhysTrackVertexMapTool::m_hypoName
protected

Definition at line 162 of file BPhysTrackVertexMapTool.h.

◆ m_idTrackNameMap

TrackNameMap_t xAOD::BPhysTrackVertexMapTool::m_idTrackNameMap
private

Definition at line 186 of file BPhysTrackVertexMapTool.h.

◆ m_idTrackToPVMap

TrackToVertexMap_t xAOD::BPhysTrackVertexMapTool::m_idTrackToPVMap
private

Definition at line 188 of file BPhysTrackVertexMapTool.h.

◆ m_idTrackToRefPVMap

TrackToVertexMap_t xAOD::BPhysTrackVertexMapTool::m_idTrackToRefPVMap
private

Definition at line 189 of file BPhysTrackVertexMapTool.h.

◆ m_idTrackToSVMap

TrackToVertexMap_t xAOD::BPhysTrackVertexMapTool::m_idTrackToSVMap
private

Definition at line 190 of file BPhysTrackVertexMapTool.h.

◆ m_nEvtsSeen

unsigned int xAOD::BPhysTrackVertexMapTool::m_nEvtsSeen
protected

Definition at line 173 of file BPhysTrackVertexMapTool.h.

◆ m_pvContainerName

std::string xAOD::BPhysTrackVertexMapTool::m_pvContainerName
protected

Definition at line 158 of file BPhysTrackVertexMapTool.h.

◆ m_pvNameMap

VertexNameMap_t xAOD::BPhysTrackVertexMapTool::m_pvNameMap
private

Definition at line 181 of file BPhysTrackVertexMapTool.h.

◆ m_pvtxContainer

const xAOD::VertexContainer* xAOD::BPhysTrackVertexMapTool::m_pvtxContainer
protected

Definition at line 167 of file BPhysTrackVertexMapTool.h.

◆ m_refPVAuxContainer

const xAOD::VertexAuxContainer* xAOD::BPhysTrackVertexMapTool::m_refPVAuxContainer
protected

Definition at line 171 of file BPhysTrackVertexMapTool.h.

◆ m_refPVContainer

const xAOD::VertexContainer* xAOD::BPhysTrackVertexMapTool::m_refPVContainer
protected

Definition at line 170 of file BPhysTrackVertexMapTool.h.

◆ m_refPVContainerName

std::string xAOD::BPhysTrackVertexMapTool::m_refPVContainerName
protected

Definition at line 157 of file BPhysTrackVertexMapTool.h.

◆ m_refPVNameMap

VertexNameMap_t xAOD::BPhysTrackVertexMapTool::m_refPVNameMap
private

Definition at line 182 of file BPhysTrackVertexMapTool.h.

◆ m_svNameMap

VertexNameMap_t xAOD::BPhysTrackVertexMapTool::m_svNameMap
private

Definition at line 183 of file BPhysTrackVertexMapTool.h.

◆ m_svtxAuxContainer

const xAOD::VertexAuxContainer* xAOD::BPhysTrackVertexMapTool::m_svtxAuxContainer
protected

Definition at line 169 of file BPhysTrackVertexMapTool.h.

◆ m_svtxContainer

const xAOD::VertexContainer* xAOD::BPhysTrackVertexMapTool::m_svtxContainer
protected

Definition at line 168 of file BPhysTrackVertexMapTool.h.

◆ m_trackParticleContainerName

std::string xAOD::BPhysTrackVertexMapTool::m_trackParticleContainerName
protected

Definition at line 159 of file BPhysTrackVertexMapTool.h.

◆ m_tracks

const xAOD::TrackParticleContainer* xAOD::BPhysTrackVertexMapTool::m_tracks
protected

Definition at line 165 of file BPhysTrackVertexMapTool.h.

◆ m_tracksAux

const xAOD::TrackParticleAuxContainer* xAOD::BPhysTrackVertexMapTool::m_tracksAux
protected

Definition at line 166 of file BPhysTrackVertexMapTool.h.

◆ m_varHandleArraysDeclared

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

Definition at line 399 of file AthCommonDataStore.h.

◆ m_vertexContainerName

std::string xAOD::BPhysTrackVertexMapTool::m_vertexContainerName
protected

Definition at line 156 of file BPhysTrackVertexMapTool.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: