ATLAS Offline Software
EGammaTracksThinning.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // TrackThinning.h, (c) ATLAS Detector software
8 
9 #ifndef DERIVATIONFRAMEWORK_EGAMMATRACKSTHINNING_H
10 #define DERIVATIONFRAMEWORK_EGAMMATRACKSTHINNING_H
11 
12 #include <string>
13 
16 
17 #include "TLorentzVector.h"
18 
20 #include "TrkTrack/Track.h"
26 
27 
28 namespace DerivationFramework {
29 
30  class EGammaTracksThinning:public extends<AthAlgTool, IThinningTool> {
31 
32  public:
33 
34  EGammaTracksThinning(const std::string& type,
35  const std::string& name,
36  const IInterface* parent);
37 
39  virtual StatusCode initialize() override;
40  virtual StatusCode finalize() override;
41  virtual StatusCode doThinning() const override;
42 
43  private:
44 
45  StringProperty m_streamName
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, "" };
55  Gaudi::Property<double> m_minEtEg
56  { this, "minEtEg", 0,""};
57 
58  std::set<int> findGoodTracks(const TrackCollection* trackCont,
59  const TLorentzVector& candHepLorentz,
60  double maxDeltaR) const ;
61 
62 
64  const std::set<int>& goodTracks ) const ;
65 
66  };
67 }
68 
69 #endif // DERIVATIONFRAMEWORK_EGAMMATRACKSTHINNING_H
70 
ReadHandleKey.h
Property holding a SG store/key/clid from which a ReadHandle is made.
DerivationFramework::EGammaTracksThinning::finalize
virtual StatusCode finalize() override
Definition: EGammaTracksThinning.cxx:24
DerivationFramework::EGammaTracksThinning::initialize
virtual StatusCode initialize() override
Definition: EGammaTracksThinning.cxx:16
DerivationFramework::EGammaTracksThinning::m_dr
Gaudi::Property< double > m_dr
Definition: EGammaTracksThinning.h:54
DerivationFramework::EGammaTracksThinning::thinTracks
StatusCode thinTracks(SG::ThinningHandle< TrackCollection > &trackCont, const std::set< int > &goodTracks) const
Definition: EGammaTracksThinning.cxx:179
SG::ThinningHandleKey
HandleKey object for adding thinning to an object.
Definition: ThinningHandleKey.h:38
ThinningHandle.h
Handle for requesting thinning for a data object.
DerivationFramework::EGammaTracksThinning::doThinning
virtual StatusCode doThinning() const override
Definition: EGammaTracksThinning.cxx:29
IThinningTool.h
DerivationFramework::EGammaTracksThinning
Definition: EGammaTracksThinning.h:30
SG::ReadHandleKey< xAOD::ElectronContainer >
SG::ThinningHandle
Handle for requesting thinning for a data object.
Definition: ThinningHandle.h:84
DerivationFramework::EGammaTracksThinning::EGammaTracksThinning
EGammaTracksThinning(const std::string &type, const std::string &name, const IInterface *parent)
Definition: EGammaTracksThinning.cxx:10
Track.h
ElectronContainer.h
DerivationFramework::EGammaTracksThinning::~EGammaTracksThinning
virtual ~EGammaTracksThinning()
Definition: EGammaTracksThinning.h:38
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
AthAlgTool.h
TrackCollection.h
test_pyathena.parent
parent
Definition: test_pyathena.py:15
DerivationFramework::EGammaTracksThinning::m_minEtEg
Gaudi::Property< double > m_minEtEg
Definition: EGammaTracksThinning.h:56
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
DataVector< Trk::Track >
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
ThinningHandleKey.h
HandleKey object for adding thinning to an object.
DerivationFramework::EGammaTracksThinning::m_streamName
StringProperty m_streamName
Definition: EGammaTracksThinning.h:46
DerivationFramework::EGammaTracksThinning::findGoodTracks
std::set< int > findGoodTracks(const TrackCollection *trackCont, const TLorentzVector &candHepLorentz, double maxDeltaR) const
Definition: EGammaTracksThinning.cxx:132
DerivationFramework::EGammaTracksThinning::m_electronsContainerKey
SG::ReadHandleKey< xAOD::ElectronContainer > m_electronsContainerKey
Definition: EGammaTracksThinning.h:48
DerivationFramework::EGammaTracksThinning::m_tracksCollectionName
SG::ThinningHandleKey< TrackCollection > m_tracksCollectionName
Definition: EGammaTracksThinning.h:52
PhotonContainer.h
DerivationFramework::EGammaTracksThinning::m_photonsContainerKey
SG::ReadHandleKey< xAOD::PhotonContainer > m_photonsContainerKey
Definition: EGammaTracksThinning.h:50