9#ifndef DERIVATIONFRAMEWORK_EGAMMATRACKSTHINNING_H
10#define DERIVATIONFRAMEWORK_EGAMMATRACKSTHINNING_H
17#include "TLorentzVector.h"
35 const std::string& name,
36 const IInterface* parent);
40 virtual StatusCode
finalize()
override;
41 virtual StatusCode
doThinning()
const override;
46 {
this,
"StreamName",
"",
"Name of the stream being thinned" };
48 {
this,
"electronContainerName",
"Electrons",
"" };
50 {
this,
"photonContainerName",
"Photons",
""};
52 {
this,
"tracksCollectionName",
"Tracks",
"" };
53 Gaudi::Property<double>
m_dr
54 {
this,
"deltaR", 0.5,
"" };
56 {
this,
"minEtEg", 0,
""};
59 const TLorentzVector& candHepLorentz,
60 double maxDeltaR)
const ;
64 const std::set<int>& goodTracks )
const ;
Property holding a SG store/key/clid from which a ReadHandle is made.
HandleKey object for adding thinning to an object.
Handle for requesting thinning for a data object.
DataVector< Trk::Track > TrackCollection
This typedef represents a collection of Trk::Track objects.
SG::ThinningHandleKey< TrackCollection > m_tracksCollectionName
virtual StatusCode finalize() override
virtual ~EGammaTracksThinning()
std::set< int > findGoodTracks(const TrackCollection *trackCont, const TLorentzVector &candHepLorentz, double maxDeltaR) const
StringProperty m_streamName
Gaudi::Property< double > m_minEtEg
Gaudi::Property< double > m_dr
virtual StatusCode initialize() override
SG::ReadHandleKey< xAOD::ElectronContainer > m_electronsContainerKey
StatusCode thinTracks(SG::ThinningHandle< TrackCollection > &trackCont, const std::set< int > &goodTracks) const
SG::ReadHandleKey< xAOD::PhotonContainer > m_photonsContainerKey
virtual StatusCode doThinning() const override
EGammaTracksThinning(const std::string &type, const std::string &name, const IInterface *parent)
Property holding a SG store/key/clid from which a ReadHandle is made.
HandleKey object for adding thinning to an object.
Handle for requesting thinning for a data object.