ATLAS Offline Software
PseudoTrackSelector.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
6 // PseudoTrackSelector.h, (c) ATLAS Detector software
8 #ifndef DERIVATIONFRAMEWORK_PseudoTrackSelector_H
9 #define DERIVATIONFRAMEWORK_PseudoTrackSelector_H
10 
11 #include <string>
12 #include <map>
13 #include "GaudiKernel/ToolHandle.h"
17 
24 
27 
28 namespace DerivationFramework {
29 
32  {
33  public:
35 
36 
38  PseudoTrackSelector(const std::string& t, const std::string& n, const IInterface* p);
39  virtual ~PseudoTrackSelector() {}
43  virtual StatusCode addBranches() const;
44 
45  protected:
47 
61 
63 
66  void fillRecoReplacedWithPseudo(const xAOD::TrackParticleContainer* recoTrackParticleCol,
67  const xAOD::TrackParticleContainer* pseudoTrackParticleCol,
69  bool onlyFromB = false,
70  bool onlyNotFromB = false) const;
71  void fillRecoPlusPseudo(const xAOD::TrackParticleContainer* recoTrackParticleCol,
72  const xAOD::TrackParticleContainer* pseudoTrackParticleCol,
74  bool onlyFromB = false,
75  bool onlyNotFromB = false) const;
76  void fillRecoNoFakes(const xAOD::TrackParticleContainer* recoTrackParticleCol,
78  bool onlyFromB = false,
79  bool onlyNotFromB = false) const;
80  // Get truth particle associated to a given track particle
81  static const xAOD::TruthParticle* getTruth( const xAOD::TrackParticle* track ) ;
82 
83  private:
84  // convience types
86  // Track origin tool
87  ToolHandle< InDet::IInDetTrackTruthOriginTool > m_trackOriginTool{this, "trackTruthOriginTool", "InDet::InDetTrackTruthOriginTool", "truth track origin tool"};
88  };
89 }
90 #endif // DERIVATIONFRAMEWORK_PseudoTrackSelector_H
ReadHandleKeyArray.h
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
DerivationFramework::PseudoTrackSelector::m_out_recoNoFakesNotFromB
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoNoFakesNotFromB
Output track collection.
Definition: PseudoTrackSelector.h:59
IAugmentationTool.h
ExpressionParserUser.h
TruthParticleContainer.h
DerivationFramework::PseudoTrackSelector::m_out_recoReplacedWithPseudo
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoReplacedWithPseudo
Pseudo track collection.
Definition: PseudoTrackSelector.h:51
DerivationFramework::PseudoTrackSelector::m_out_recoReplacedWithPseudoNotFromB
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoReplacedWithPseudoNotFromB
Output track collection.
Definition: PseudoTrackSelector.h:53
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
SG::ReadHandleKey< xAOD::TrackParticleContainer >
DerivationFramework::PseudoTrackSelector::PseudoTrackSelector
PseudoTrackSelector(const std::string &t, const std::string &n, const IInterface *p)
Standard Algotithm methods:
Definition: PseudoTrackSelector.cxx:27
DerivationFramework::PseudoTrackSelector::m_trackOriginTool
ToolHandle< InDet::IInDetTrackTruthOriginTool > m_trackOriginTool
Definition: PseudoTrackSelector.h:87
DerivationFramework::PseudoTrackSelector::~PseudoTrackSelector
virtual ~PseudoTrackSelector()
Definition: PseudoTrackSelector.h:39
DerivationFramework::IAugmentationTool
Definition: IAugmentationTool.h:24
DerivationFramework::PseudoTrackSelector::m_in_recoTrackParticleLocation
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_in_recoTrackParticleLocation
Protected data:
Definition: PseudoTrackSelector.h:49
DerivationFramework::PseudoTrackSelector::m_out_recoPlusPseudoNotFromB
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoPlusPseudoNotFromB
Output track collection.
Definition: PseudoTrackSelector.h:56
SG::WriteHandleKey< xAOD::TrackParticleContainer >
DerivationFramework::PseudoTrackSelector::fillRecoNoFakes
void fillRecoNoFakes(const xAOD::TrackParticleContainer *recoTrackParticleCol, xAOD::TrackParticleContainer *outputCol, bool onlyFromB=false, bool onlyNotFromB=false) const
Definition: PseudoTrackSelector.cxx:340
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
xAOD::TruthParticle_v1
Class describing a truth particle in the MC record.
Definition: TruthParticle_v1.h:41
AthAlgTool.h
DerivationFramework::PseudoTrackSelector::m_out_recoNoFakesFromB
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoNoFakesFromB
Output track collection.
Definition: PseudoTrackSelector.h:58
DerivationFramework::PseudoTrackSelector::fillRecoPlusPseudo
void fillRecoPlusPseudo(const xAOD::TrackParticleContainer *recoTrackParticleCol, const xAOD::TrackParticleContainer *pseudoTrackParticleCol, xAOD::TrackParticleContainer *outputCol, bool onlyFromB=false, bool onlyNotFromB=false) const
Definition: PseudoTrackSelector.cxx:272
DerivationFramework::PseudoTrackSelector::fillRecoReplacedWithPseudo
void fillRecoReplacedWithPseudo(const xAOD::TrackParticleContainer *recoTrackParticleCol, const xAOD::TrackParticleContainer *pseudoTrackParticleCol, xAOD::TrackParticleContainer *outputCol, bool onlyFromB=false, bool onlyNotFromB=false) const
Output track collection.
Definition: PseudoTrackSelector.cxx:186
DerivationFramework::PseudoTrackSelector::m_out_recoReplacedWithPseudoFromB
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoReplacedWithPseudoFromB
Output track collection.
Definition: PseudoTrackSelector.h:52
DerivationFramework
THE reconstruction tool.
Definition: ParticleSortingAlg.h:24
DataVector< xAOD::TrackParticle_v1 >
DerivationFramework::PseudoTrackSelector::execute
StatusCode execute()
WriteHandleKey.h
Property holding a SG store/key/clid from which a WriteHandle is made.
DerivationFramework::PseudoTrackSelector::m_in_pseudoTrackParticleLocation
SG::ReadHandleKey< xAOD::TrackParticleContainer > m_in_pseudoTrackParticleLocation
Reco track collection.
Definition: PseudoTrackSelector.h:50
DerivationFramework::PseudoTrackSelector::m_out_recoNoFakes
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoNoFakes
Output track collection.
Definition: PseudoTrackSelector.h:57
TrackStateValidationContainer.h
DerivationFramework::PseudoTrackSelector::TruthLink
ElementLink< xAOD::TruthParticleContainer > TruthLink
Definition: PseudoTrackSelector.h:85
DerivationFramework::PseudoTrackSelector::addBranches
virtual StatusCode addBranches() const
Pass the thinning service
Definition: PseudoTrackSelector.cxx:77
TrackParticle.h
DerivationFramework::PseudoTrackSelector::m_out_recoPlusPseudo
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoPlusPseudo
Output track collection.
Definition: PseudoTrackSelector.h:54
DerivationFramework::PseudoTrackSelector::finalize
StatusCode finalize()
Definition: PseudoTrackSelector.cxx:72
DerivationFramework::PseudoTrackSelector
Class-algorithm for pseudo track selection.
Definition: PseudoTrackSelector.h:32
DerivationFramework::PseudoTrackSelector::m_out_recoPlusPseudoFromB
SG::WriteHandleKey< xAOD::TrackParticleContainer > m_out_recoPlusPseudoFromB
Output track collection.
Definition: PseudoTrackSelector.h:55
xAOD::track
@ track
Definition: TrackingPrimitives.h:512
xAOD::TrackParticle_v1
Class describing a TrackParticle.
Definition: TrackParticle_v1.h:43
DerivationFramework::PseudoTrackSelector::initialize
StatusCode initialize()
Definition: PseudoTrackSelector.cxx:50
IInDetTrackTruthOriginTool.h
AthAlgTool
Definition: AthAlgTool.h:26
TruthParticle.h
DerivationFramework::PseudoTrackSelector::getTruth
static const xAOD::TruthParticle * getTruth(const xAOD::TrackParticle *track)
Definition: PseudoTrackSelector.cxx:384
TrackParticleContainer.h