9#ifndef DERIVATIONFRAMEWORK_EGAMMATRACKPARTICLETHINNING_H
10#define DERIVATIONFRAMEWORK_EGAMMATRACKPARTICLETHINNING_H
19#include "GaudiKernel/ToolHandle.h"
27#include "GaudiKernel/ThreadLocalContext.h"
32 :
public extends<ExpressionParserUser<AthAlgTool>, IThinningTool>
40 virtual StatusCode
finalize()
override;
41 virtual StatusCode
doThinning()
const override;
44 mutable std::atomic<unsigned long int>
m_ntot = 0;
45 mutable std::atomic<unsigned long int>
m_ntotGSF = 0;
47 mutable std::atomic<unsigned long int>
m_npass = 0;
54 m_streamName{
this,
"StreamName",
"",
"Name of the stream being thinned" };
59 m_inDetSGKey{
this,
"InDetTrackParticlesKey",
"InDetTrackParticles",
"" };
62 m_gsfSGKey{
this,
"GSFTrackParticlesKey",
"GSFTrackParticles",
"" };
HandleKey object for adding thinning to an object.
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_inDetSGKey
SG::ThinningHandleKey< xAOD::TrackParticleContainer > m_gsfSGKey
virtual StatusCode doThinning() const override
virtual ~EgammaTrackParticleThinning()
EgammaTrackParticleThinning(const std::string &t, const std::string &n, const IInterface *p)
BooleanProperty m_bestVtxMatchOnly
std::atomic< unsigned long int > m_ntotGSFVtx
std::atomic< unsigned long int > m_nGSFVtxPass
SG::ThinningHandleKey< xAOD::VertexContainer > m_gsfVtxSGKey
virtual StatusCode finalize() override
std::atomic< unsigned long int > m_nGSFPass
StringProperty m_streamName
BooleanProperty m_bestMatchOnly
std::atomic< unsigned long int > m_ntot
std::atomic< unsigned long int > m_nEgammas
std::atomic< unsigned long int > m_ntotGSF
void clearGSFVtx(const EventContext &ctx) const
void setPhotonMasks(std::vector< bool > &, std::vector< bool > &, const xAOD::EgammaContainer *, const xAOD::TrackParticleContainer *, const xAOD::TrackParticleContainer *) const
virtual StatusCode initialize() override
StringProperty m_selectionString
void setElectronMasks(std::vector< bool > &, std::vector< bool > &, const xAOD::EgammaContainer *, const xAOD::TrackParticleContainer *, const xAOD::TrackParticleContainer *) const
std::atomic< unsigned long int > m_nSelEgammas
std::atomic< unsigned long int > m_npass
SG::ReadHandleKey< xAOD::EgammaContainer > m_egammaKey
Property holding a SG store/key/clid from which a ReadHandle is made.
HandleKey object for adding thinning to an object.
TrackParticleContainer_v1 TrackParticleContainer
Definition of the current "TrackParticle container version".
EgammaContainer_v1 EgammaContainer
Definition of the current "egamma container version".