29#ifndef DERIVATIONFRAMEWORK_HARDTRUTHTHINNINGTOOL_H
30#define DERIVATIONFRAMEWORK_HARDTRUTHTHINNINGTOOL_H
41#include "GaudiKernel/ToolHandle.h"
51 HardTruthThinning(
const std::string& t,
const std::string& n,
const IInterface* p);
54 virtual StatusCode
finalize()
override;
55 virtual StatusCode
doThinning()
const override;
58 std::vector<const xAOD::TruthParticle*>& d) ;
69 {
this,
"StreamName",
"",
"Name of the stream being thinned" };
71 {
this,
"TruthParticles",
"",
"truth particle container name" };
73 {
this,
"TruthVertices",
"",
"truth vertex container name" };
Property holding a SG store/key/clid from which a ReadHandle is made.
HandleKey object for adding thinning to an object.
virtual StatusCode doThinning() const override
SG::ThinningHandleKey< xAOD::TruthVertexContainer > m_truthVertexName
virtual StatusCode initialize() override
static void printxAODTruth(long long evnum, const xAOD::TruthParticleContainer *truths)
std::atomic< int > m_errCount
HardTruthThinning(const std::string &t, const std::string &n, const IInterface *p)
SG::ThinningHandleKey< xAOD::TruthParticleContainer > m_truthParticleName
virtual StatusCode finalize() override
SG::ReadHandleKey< xAOD::EventInfo > m_eventInfoKey
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_hardParticleKey
std::atomic< int > m_evtCount
virtual ~HardTruthThinning()
SG::ReadHandleKey< xAOD::JetContainer > m_truthJetsKey
StringProperty m_streamName
std::vector< int > m_keepIds
static int getDescendants(const xAOD::TruthParticle *p, std::vector< const xAOD::TruthParticle * > &d)
Property holding a SG store/key/clid from which a ReadHandle is made.
HandleKey object for adding thinning to an object.
TruthParticle_v1 TruthParticle
Typedef to implementation.
TruthParticleContainer_v1 TruthParticleContainer
Declare the latest version of the truth particle container.