Loading [MathJax]/extensions/tex2jax.js
 |
ATLAS Offline Software
|
Algorithm creating xAOD::TrackParticles from TrackParticles.
More...
#include <TrackParticleCnvAlg.h>
|
| TrackParticleCnvAlg (const std::string &name, ISvcLocator *svcLoc) |
| Regular algorithm constructor. More...
|
|
virtual StatusCode | initialize () |
| Function initialising the algorithm. More...
|
|
virtual StatusCode | execute (const EventContext &ctx) const |
| Function executing the algorithm. More...
|
|
virtual StatusCode | sysInitialize () override |
| Override sysInitialize. More...
|
|
virtual bool | isClonable () const override |
| Specify if the algorithm is clonable. More...
|
|
virtual unsigned int | cardinality () const override |
| Cardinality (Maximum number of clones that can exist) special value 0 means that algorithm is reentrant. More...
|
|
virtual StatusCode | sysExecute (const EventContext &ctx) override |
| Execute an algorithm. More...
|
|
virtual const DataObjIDColl & | extraOutputDeps () const override |
| Return the list of extra output dependencies. More...
|
|
virtual bool | filterPassed (const EventContext &ctx) const |
|
virtual void | setFilterPassed (bool state, const EventContext &ctx) const |
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
|
template<typename CONT , typename TRUTHCONT , typename CONVTOOL > |
int | convert (const CONT &, const TRUTHCONT &, CONVTOOL &tool, SG::WriteHandle< xAOD::TrackParticleContainer > &, const xAODTruthParticleLinkVector *, const xAOD::Vertex *primaryVertex=nullptr, const ObservedTrackMap *obs_track_map=0) const |
|
xAOD::TrackParticle * | createParticle (xAOD::TrackParticleContainer &xaod, const Rec::TrackParticleContainer &container, const Rec::TrackParticle &tp) |
|
xAOD::TrackParticle * | createParticle (xAOD::TrackParticleContainer &xaod, const TrackCollection &container, const Trk::Track &tp, const EventContext &ctx) |
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKey> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &) |
| specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &) |
| specialization for handling Gaudi::Property<SG::VarHandleBase> More...
|
|
Gaudi::Details::PropertyBase & | declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &) |
| specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
|
|
|
Gaudi::Property< bool > | m_addTruthLink {this,"AddTruthLink", false } |
| toggle on adding truth links More...
|
|
ToolHandle< Trk::ITrackParticleCreatorTool > | m_particleCreator {this, "TrackParticleCreator", "Trk::TrackParticleCreatorTool/TrackParticleCreatorTool" } |
| The key for the input TrackParticleTruthCollection. More...
|
|
ToolHandle< IMCTruthClassifier > | m_truthClassifier |
| ToolHandle to truth classifier. More...
|
|
ToolHandle< xAODMaker::ITrackCollectionCnvTool > | m_TrackCollectionCnvTool {this, "TrackCollectionCnvTool", "xAODMaker::TrackCollectionCnvTool/TrackCollectionCnvTool"} |
|
ToolHandle< xAODMaker::IRecTrackParticleContainerCnvTool > | m_RecTrackParticleContainerCnvTool |
|
SG::ReadHandleKey< Rec::TrackParticleContainer > | m_aod {this, "AODContainerName", "TrackParticleCandidate"} |
|
SG::ReadHandleKey< TrackCollection > | m_tracks {this, "TrackContainerName", "Tracks"} |
|
SG::ReadHandleKey< xAOD::VertexContainer > | m_primaryVertexContainer { this, "PrimaryVerticesName", "", "Name of primary vertex container is case the parameters should be calculated with respect to the primary vertex"} |
|
SG::WriteHandleKey< xAOD::TrackParticleContainer > | m_xaodout {this, "xAODTrackParticlesFromTracksContainerName", "InDetTrackParticles"} |
|
SG::WriteHandleKey< xAOD::TrackParticleContainer > | m_xaodTrackParticlesout {this, "xAODContainerName", "ConvertedTrackParticleCandidate" } |
|
SG::ReadHandleKey< xAODTruthParticleLinkVector > | m_truthParticleLinkVec {this, "xAODTruthLinkVector", "xAODTruthLinks"} |
|
SG::ReadHandleKey< TrackParticleTruthCollection > | m_aodTruth {this, "AODTruthContainerName" , ""} |
|
SG::ReadHandleKey< TrackTruthCollection > | m_trackTruth {this, "TrackTruthContainerName", ""} |
|
Gaudi::Property< bool > | m_doMonitoring {this, "DoMonitoring", false} |
|
ToolHandle< ITrackParticleMonitoring > | m_trackMonitoringTool { this, "TrkMonTool", "", "Tracking Monitoring tool" } |
|
ToolHandle< GenericMonitoringTool > | m_monTool { this, "MonTool", "", "Monitoring tool" } |
|
Gaudi::Property< bool > | m_augmentObservedTracks {this, "AugmentObservedTracks", false, "augment observed tracks"} |
|
SG::ReadHandleKey< ObservedTrackMap > | m_tracksMap {this, "TracksMapName", "" , "name of observed tracks map saved in store"} |
|
Gaudi::Property< bool > | m_convertAODTrackParticles {this, "ConvertTrackParticles", true} |
| toggle on converting AOD track particles to xAOD More...
|
|
Gaudi::Property< bool > | m_convertTracks {this, "ConvertTracks", false} |
| toggle on converting tracks to xAOD More...
|
|
DataObjIDColl | m_extendedExtraObjects |
| Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks. More...
|
|
StoreGateSvc_t | m_evtStore |
| Pointer to StoreGate (event store by default) More...
|
|
StoreGateSvc_t | m_detStore |
| Pointer to StoreGate (detector store by default) More...
|
|
std::vector< SG::VarHandleKeyArray * > | m_vhka |
|
bool | m_varHandleArraysDeclared |
|
Algorithm creating xAOD::TrackParticles from TrackParticles.
This algorithm can be used to translate the TrackParticles coming
from an AOD, and create xAOD::TrackParticle objects out of them
for an output xAOD.
- Author
- Edward Moyse Edwar.nosp@m.d.Mo.nosp@m.yse@c.nosp@m.ern..nosp@m.ch
-
Attila Krasznahorkay Attil.nosp@m.a.Kr.nosp@m.aszna.nosp@m.hork.nosp@m.ay@ce.nosp@m.rn.c.nosp@m.h
- Revision
- 297747
- Date
- 2013-10-28 16:14:24 +0100 (Mon, 28 Oct 2013)
Definition at line 54 of file TrackParticleCnvAlg.h.
◆ StoreGateSvc_t
◆ TrackParticleCnvAlg()
xAODMaker::TrackParticleCnvAlg::TrackParticleCnvAlg |
( |
const std::string & |
name, |
|
|
ISvcLocator * |
svcLoc |
|
) |
| |
◆ cardinality()
Cardinality (Maximum number of clones that can exist) special value 0 means that algorithm is reentrant.
Override this to return 0 for reentrant algorithms.
Override this to return 0 for reentrant algorithms.
Definition at line 75 of file AthCommonReentrantAlgorithm.cxx.
◆ convert()
template<typename CONT , typename TRUTHCONT , typename CONVTOOL >
Definition at line 265 of file TrackParticleCnvAlg.cxx.
281 if (conv_tool->convertAndAugment(&container, xaod.
ptr(), obs_track_map, primaryVertex).isFailure()) {
283 << xaod.
name() <<
") with the converting tool");
288 if (conv_tool->convert(&container, xaod.
ptr(), primaryVertex).isFailure()) {
290 << xaod.
name() <<
") with the converting tool");
298 AssociationHelper<CONT> association_to_src(container, xaod.
ptr());
299 unsigned int trackCounter(0);
301 for (; itr_xaod != end_xaod; ++itr_xaod) {
318 int npix, nsct, ntrt, npixh, nscth, npixshim, npixsplit;
319 npix = nsct = ntrt = npixh = nscth = npixshim = npixsplit = -1;
331 msg() <<
MSG::DEBUG <<
"REGTEST: " << std::setw(5) << trackCounter
332 <<
" pT: " << std::setw(10) <<
particle->pt()
337 <<
"\t" << npix <<
"/" << nsct <<
"/" << ntrt <<
"/holes/" << npixh <<
"/" << nscth
347 float probability = -1.0;
351 association_to_src(*itr_xaod, itr_xaod - xaod->
begin()), container);
352 if (!tpLink.isValid()) {
353 ATH_MSG_WARNING(
"Failed to create ElementLink to Track/TrackParticle");
354 }
else if(truth->empty()){
358 auto result = truth->find(tpLink);
359 if (
result == truth->end()) {
361 "Failed find truth associated with Track/TrackParticle");
366 <<
result->second.particleLink().eventIndex());
367 probability =
result->second.probability();
368 link = truthLinkVec->
find(
result->second.particleLink());
372 <<
" eta " << (*link)->eta() <<
" phi "
375 if (
result->second.particleLink().cptr() &&
378 result->second.particleLink());
379 type = truthClass.first;
380 origin = truthClass.second;
383 <<
static_cast<int>(origin));
388 <<
result->second.particleLink());
397 theLink(
"truthParticleLink");
399 "truthMatchProbability");
400 theLink(*particle) = link;
401 theProbability(*particle) = probability;
405 theType(*particle) =
static_cast<int>(
type);
406 theOrigin(*particle) =
static_cast<int>(origin);
412 <<
"] TrackParticles and stored in "
414 if (container.size() != xaod->
size()) {
417 <<
" is not equal to the number of items in its converted "
◆ createParticle() [1/2]
◆ createParticle() [2/2]
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ execute()
StatusCode xAODMaker::TrackParticleCnvAlg::execute |
( |
const EventContext & |
ctx | ) |
const |
|
virtual |
Function executing the algorithm.
Definition at line 72 of file TrackParticleCnvAlg.cxx.
89 if (!rh_aod.isValid()) {
91 return StatusCode::FAILURE;
101 if (!rh_tracks.isValid()) {
103 return StatusCode::SUCCESS;
105 tracks = rh_tracks.cptr();
114 if (!rh_aodTruth.isValid()) {
117 return StatusCode::SUCCESS;
119 aodTruth = rh_aodTruth.cptr();
123 if (!rh_trackTruth.isValid()) {
126 return StatusCode::SUCCESS;
128 trackTruth = rh_trackTruth.cptr();
133 if (!rh_truthParticleLinkVec.isValid()) {
136 return StatusCode::SUCCESS;
138 truthLinks = rh_truthParticleLinkVec.cptr();
144 if (!vtx_container.isValid()) {
146 return StatusCode::SUCCESS;
149 for(
auto vtx : *vtx_container) {
163 ATH_MSG_INFO(
"No primary vertex found, will use dummy vertex at "
164 << dummyVertex->
x() <<
"," << dummyVertex->
y() <<
","
165 << dummyVertex->
z());
166 primaryVertex = dummyVertex;
170 ATH_MSG_WARNING(
"Neither primary nor dummy vertex found. Do Nothing.");
171 return StatusCode::SUCCESS;
179 wh_xaodout.record(std::make_unique<xAOD::TrackParticleContainer>(),
180 std::make_unique<xAOD::TrackParticleAuxContainer>()));
185 if (!rh_tracksMap.isValid()) {
187 return StatusCode::FAILURE;
190 tracksMap = rh_tracksMap.cptr();
195 truthLinks, primaryVertex, tracksMap);
198 truthLinks, primaryVertex);
207 ATH_CHECK(wh_xaodTrackParticlesout.record(
208 std::make_unique<xAOD::TrackParticleContainer>(),
209 std::make_unique<xAOD::TrackParticleAuxContainer>()));
211 wh_xaodTrackParticlesout, truthLinks);
217 return StatusCode::SUCCESS;
◆ extraDeps_update_handler()
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
◆ extraOutputDeps()
Return the list of extra output dependencies.
This list is extended to include symlinks implied by inheritance relations.
Definition at line 94 of file AthCommonReentrantAlgorithm.cxx.
◆ filterPassed()
◆ initialize()
StatusCode xAODMaker::TrackParticleCnvAlg::initialize |
( |
| ) |
|
|
virtual |
Function initialising the algorithm.
Definition at line 28 of file TrackParticleCnvAlg.cxx.
41 DisableTool{ !m_convertAODTrackParticles }));
68 return StatusCode::SUCCESS;
◆ inputHandles()
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.
◆ isClonable()
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
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.
◆ renounce()
◆ renounceArray()
◆ setFilterPassed()
◆ sysExecute()
Execute an algorithm.
We override this in order to work around an issue with the Algorithm base class storing the event context in a member variable that can cause crashes in MT jobs.
Definition at line 85 of file AthCommonReentrantAlgorithm.cxx.
◆ sysInitialize()
Override sysInitialize.
Override sysInitialize from the base class.
Loop through all output handles, and if they're WriteCondHandles, automatically register them and this Algorithm with the CondSvc
Scan through all outputHandles, and if they're WriteCondHandles, register them with the CondSvc
Reimplemented from AthCommonDataStore< AthCommonMsg< Gaudi::Algorithm > >.
Reimplemented in InputMakerBase, and HypoBase.
Definition at line 61 of file AthCommonReentrantAlgorithm.cxx.
110 if (
sc.isFailure()) {
118 if ( cs.retrieve().isFailure() ) {
120 return StatusCode::SUCCESS;
122 if (cs->regHandle(
this,*
h).isFailure()) {
123 sc = StatusCode::FAILURE;
124 ATH_MSG_ERROR(
"unable to register WriteCondHandle " <<
h->fullKey()
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ m_addTruthLink
Gaudi::Property<bool> xAODMaker::TrackParticleCnvAlg::m_addTruthLink {this,"AddTruthLink", false } |
|
private |
◆ m_aod
◆ m_aodTruth
◆ m_augmentObservedTracks
Gaudi::Property<bool> xAODMaker::TrackParticleCnvAlg::m_augmentObservedTracks {this, "AugmentObservedTracks", false, "augment observed tracks"} |
|
private |
◆ m_convertAODTrackParticles
Gaudi::Property<bool> xAODMaker::TrackParticleCnvAlg::m_convertAODTrackParticles {this, "ConvertTrackParticles", true} |
|
private |
◆ m_convertTracks
Gaudi::Property<bool> xAODMaker::TrackParticleCnvAlg::m_convertTracks {this, "ConvertTracks", false} |
|
private |
◆ m_detStore
◆ m_doMonitoring
Gaudi::Property<bool> xAODMaker::TrackParticleCnvAlg::m_doMonitoring {this, "DoMonitoring", false} |
|
private |
◆ m_evtStore
◆ m_extendedExtraObjects
Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks.
Empty if no symlinks were found.
Definition at line 114 of file AthCommonReentrantAlgorithm.h.
◆ m_monTool
◆ m_particleCreator
◆ m_primaryVertexContainer
SG::ReadHandleKey<xAOD::VertexContainer> xAODMaker::TrackParticleCnvAlg::m_primaryVertexContainer { this, "PrimaryVerticesName", "", "Name of primary vertex container is case the parameters should be calculated with respect to the primary vertex"} |
|
private |
◆ m_RecTrackParticleContainerCnvTool
Initial value:{this, "RecTrackParticleContainerCnvTool", "xAODMaker::RecTrackParticleContainerCnvTool/"
"RecTrackParticleContainerCnvTool" }
Definition at line 85 of file TrackParticleCnvAlg.h.
◆ m_TrackCollectionCnvTool
◆ m_trackMonitoringTool
◆ m_tracks
◆ m_tracksMap
◆ m_trackTruth
◆ m_truthClassifier
Initial value:{
this,
"MCTruthClassifier",
"MCTruthClassifier/MCTruthClassifier",
" MCTruthClassifier Instance to use "
}
ToolHandle to truth classifier.
Definition at line 75 of file TrackParticleCnvAlg.h.
◆ m_truthParticleLinkVec
◆ m_varHandleArraysDeclared
◆ m_vhka
◆ m_xaodout
◆ m_xaodTrackParticlesout
The documentation for this class was generated from the following files:
@ numberOfPixelHits
number of pixel layers on track with absence of hits
float x() const
Returns the x position.
constexpr ParticleHypothesis particle[PARTICLEHYPOTHESES]
the array of masses
ToolHandle< ITrackParticleMonitoring > m_trackMonitoringTool
Group
Properties of a chain group.
Helper class to provide type-safe access to aux data.
Gaudi::Property< bool > m_augmentObservedTracks
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
const std::string & name() const
Return the StoreGate ID for the referenced object.
ElementLink< xAOD::TruthParticleContainer > find(const HepMcParticleLink &hepMCLink) const
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)
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
bool msgLvl(const MSG::Level lvl) const
ToolHandle< IMCTruthClassifier > m_truthClassifier
ToolHandle to truth classifier.
#define ATH_MSG_VERBOSE(x)
const std::string & key() const
Return the StoreGate ID for the referenced object.
Gaudi::Property< bool > m_convertAODTrackParticles
toggle on converting AOD track particles to xAOD
@ numberOfSCTHoles
number of Holes in both sides of a SCT module
@ NoVtx
Dummy vertex. TrackParticle was not used in vertex fit.
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_xaodTrackParticlesout
bool isValid() const
Test to see if the link can be dereferenced.
SG::ReadHandleKey< ObservedTrackMap > m_tracksMap
virtual void setOwner(IDataHandleHolder *o)=0
An algorithm that can be simultaneously executed in multiple threads.
std::map< int, std::tuple< Trk::Track *, double, xAOD::RejectionStep, xAOD::RejectionReason, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, int, float, float, int, std::vector< xAOD::RejectionStep >, std::vector< xAOD::RejectionReason > > > ObservedTrackMap
virtual const DataObjIDColl & extraOutputDeps() const override
Return the list of extra output dependencies.
SG::ReadHandleKey< Rec::TrackParticleContainer > m_aod
SG::ReadHandleKey< TrackTruthCollection > m_trackTruth
virtual std::vector< Gaudi::DataHandle * > outputHandles() const override
Return this algorithm's output handles.
(Non-const) Iterator class for DataVector/DataList.
::StatusCode StatusCode
StatusCode definition for legacy code.
@ numberOfSCTHits
number of SCT holes
pointer_type ptr()
Dereference the pointer.
virtual StatusCode sysExecute(const EventContext &ctx) override
Execute an algorithm.
Gaudi::Property< bool > m_addTruthLink
toggle on adding truth links
SG::ReadHandleKey< TrackParticleTruthCollection > m_aodTruth
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
float z() const
Returns the z position.
StatusCode initialize(bool used=true)
If this object is used as a property, then this should be called during the initialize phase.
ToolHandle< xAODMaker::ITrackCollectionCnvTool > m_TrackCollectionCnvTool
@ numberOfPixelHoles
number of pixels which have a ganged ambiguity.
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
ElementLink implementation for ROOT usage.
Gaudi::Property< bool > m_doMonitoring
@ numberOfTRTHits
number of TRT outliers
int convert(const CONT &, const TRUTHCONT &, CONVTOOL &tool, SG::WriteHandle< xAOD::TrackParticleContainer > &, const xAODTruthParticleLinkVector *, const xAOD::Vertex *primaryVertex=nullptr, const ObservedTrackMap *obs_track_map=0) const
A summary of the information contained by a track.
ToolHandle< GenericMonitoringTool > m_monTool
ToolHandle< xAODMaker::IRecTrackParticleContainerCnvTool > m_RecTrackParticleContainerCnvTool
SG::ReadHandleKey< xAODTruthParticleLinkVector > m_truthParticleLinkVec
Gaudi::Property< bool > m_convertTracks
toggle on converting tracks to xAOD
SG::ReadHandleKey< TrackCollection > m_tracks
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
Class describing a Vertex.
#define ATH_MSG_WARNING(x)
const Trk::TrackSummary * trackSummary() const
Returns a pointer to the const Trk::TrackSummary owned by this const track (could be nullptr)
float y() const
Returns the y position.
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
virtual StatusCode sysInitialize() override
Override sysInitialize.
ToolHandle< Trk::ITrackParticleCreatorTool > m_particleCreator
The key for the input TrackParticleTruthCollection.
SG::ReadHandleKey< xAOD::VertexContainer > m_primaryVertexContainer
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_xaodout
Class describing a TrackParticle.
DataObjIDColl m_extendedExtraObjects
Extra output dependency collection, extended by AthAlgorithmDHUpdate to add symlinks.
size_type size() const noexcept
Returns the number of elements in the collection.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.