5#ifndef TRUTH_PARTICLE_DECORATOR_ALG_HH
6#define TRUTH_PARTICLE_DECORATOR_ALG_HH
9#include "GaudiKernel/ToolHandle.h"
24 ISvcLocator* pSvcLocator );
27 virtual StatusCode
execute(
const EventContext& )
const override;
33 this,
"truthContainer",
"TruthParticles",
34 "Key for the input truth particle collection"};
36 this,
"TruthPrimaryVertices",
"TruthPrimaryVertices",
37 "Key for the input truth PV collection"};
41 this,
"ftagTruthOriginLabel",
"ftagTruthOriginLabel",
42 "Exclusive origin label of the truth particle"};
44 this,
"ftagTruthTypeLabel",
"ftagTruthTypeLabel",
45 "Exclusive truth type label of the truth particle"};
47 this,
"ftagTruthSourceLabel",
"ftagTruthSourceLabel",
48 "Exclusive truth label for the source of secondary particles"};
50 this,
"ftagTruthVertexIndex",
"ftagTruthVertexIndex",
51 "ftagTruth vertex index of the truth particle"};
53 this,
"ftagTruthParentBarcode",
"ftagTruthParentBarcode",
54 "UniqueID of parent of linked truth particle"};
58 this,
"trackTruthOriginTool",
"InDet::InDetTrackTruthOriginTool",
59 "track truth origin tool"};
62 this,
"truthVertexMergeDistance", 0.1,
63 "Merge any truth vertices within this distance [mm]"};
67 this,
"useBarcode",
false,
"use barcode rather than UID"
Base class for elements of a container that can have aux data.
Property holding a SG store/key/clid/attr name from which a ReadDecorHandle is made.
Property holding a SG store/key/clid/attr name from which a WriteDecorHandle is made.
An algorithm that can be simultaneously executed in multiple threads.
ToolHandle< InDet::InDetTrackTruthOriginTool > m_truthOriginTool
Gaudi::Property< bool > m_use_barcode
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_dec_origin_label
SG::ReadHandleKey< xAOD::TruthVertexContainer > m_TruthPVsKey
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_dec_parent_uniqueID
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_dec_type_label
Gaudi::Property< float > m_truthVertexMergeDistance
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_TruthContainerKey
virtual StatusCode execute(const EventContext &) const override
virtual StatusCode initialize() override
SG::ConstAccessor< int > m_uid
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_dec_source_label
SG::WriteDecorHandleKey< xAOD::TruthParticleContainer > m_dec_vertex_index
TruthParticleDecoratorAlg(const std::string &name, ISvcLocator *pSvcLocator)
Helper class to provide constant type-safe access to aux data.