ATLAS Offline Software
MCTrueSeedFinder.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2020 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef TRKVERTEXSEEDFINDERTOOLS_MCTRUESEEDFINDER_H
6 #define TRKVERTEXSEEDFINDERTOOLS_MCTRUESEEDFINDER_H
7 
12 
13 class IPartPropSvc;
14 
17 
18 namespace Trk
19 {
20  // @author N. Giacinto Piacquadio (Albert-Ludwigs-Universitaet Freiburg - Germany)
21  //
22  // @ATLAS software
23  //
24  // This class implements a dummy seed finder
25  //
26  // -----------------------------------------
27  // Changes:
28  //
29  // David Shope <david.richard.shope@cern.ch> (2016-04-19)
30  //
31  // EDM Migration to xAOD - from Trk::VxCandidate to xAOD::Vertex,
32  // from Trk::RecVertex to xAOD::Vertex,
33  // from Trk::Vertex to Amg::Vector3D
34 
35  class MCTrueSeedFinder final: public extends<AthAlgTool, IVertexSeedFinder>
36  {
37  public:
38  // Standard Gaudi constructor.
39  MCTrueSeedFinder (const std::string& t,
40  const std::string& n,
41  const IInterface* p);
42 
43 
44  virtual ~MCTrueSeedFinder();
45 
46 
47  virtual StatusCode initialize() override;
48 
49 
51 
52 
58  virtual Amg::Vector3D
59  findSeed (const std::vector<const Trk::Track*> & vectorTrk,
60  const xAOD::Vertex * constraint=0) const override final;
61 
62 
68  virtual Amg::Vector3D
69  findSeed (const std::vector<const Trk::TrackParameters*> & perigeeList,
70  const xAOD::Vertex * constraint=0) const override final;
71 
72 
78  virtual std::vector<Amg::Vector3D>
79  findMultiSeeds(const std::vector<const Trk::Track*>& vectorTrk,
80  const xAOD::Vertex * constraint=0) const override final;
81 
82 
89  virtual std::vector<Amg::Vector3D>
90  findMultiSeeds(const std::vector<const Trk::TrackParameters*>& perigeeList,
91  const xAOD::Vertex * constraint=0) const override final;
92 
93 
94  private:
96  this,
97  "McTruthCollection",
98  "G4Truth",
99  "MC Event Collection Name"
100  };
101 
104 
105  //Implement directly pass methods from GenObjectsFilterTool until better sol'n is found
108 
110  bool pass( const HepMC::GenEvent* evt,
111  const McEventCollection* coll = 0 ) const;
113  bool pass( const HepMC::ConstGenParticlePtr& part,
114  const McEventCollection* coll = 0 ) const;
115 
116  StatusCode retrieveInteractionsInfo (std::vector<Amg::Vector3D>& interactions) const;
117  };
118 }
119 #endif
LArG4FSStartPointFilter.part
part
Definition: LArG4FSStartPointFilter.py:21
Trk::Vertex
Definition: Tracking/TrkEvent/VxVertex/VxVertex/Vertex.h:26
IVertexSeedFinder.h
Trk::MCTrueSeedFinder::~MCTrueSeedFinder
virtual ~MCTrueSeedFinder()
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
SG
Forward declaration.
Definition: CaloCellPacker_400_500.h:32
Trk::MCTrueSeedFinder::findMultiSeeds
virtual std::vector< Amg::Vector3D > findMultiSeeds(const std::vector< const Trk::Track * > &vectorTrk, const xAOD::Vertex *constraint=0) const override final
Finds full vector of linearization points from a vector of tracks and returns it as an Amg::Vector3D ...
Definition: MCTrueSeedFinder.cxx:108
GenParticle_fwd.h
xAOD
ICaloAffectedTool is abstract interface for tools checking if 4 mom is in calo affected region.
Definition: ICaloAffectedTool.h:24
LArG4FSStartPointFilter.evt
evt
Definition: LArG4FSStartPointFilter.py:42
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
Trk::MCTrueSeedFinder::m_mcEventCollectionKey
SG::ReadHandleKey< McEventCollection > m_mcEventCollectionKey
Definition: MCTrueSeedFinder.h:95
const
bool const RAWDATA *ch2 const
Definition: LArRodBlockPhysicsV0.cxx:562
Trk::MCTrueSeedFinder::initialize
virtual StatusCode initialize() override
Definition: MCTrueSeedFinder.cxx:66
McEventCollection.h
beamspotman.n
n
Definition: beamspotman.py:731
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
vector
Definition: MultiHisto.h:13
AthAlgTool.h
GenEvent_fwd.h
Trk::MCTrueSeedFinder::pass
bool pass(const HepMC::GenEvent *evt, const McEventCollection *coll=0) const
Function selecting GenEvent objects.
Definition: MCTrueSeedFinder.cxx:179
Trk::ParametersBase
Definition: ParametersBase.h:55
Trk::MCTrueSeedFinder::m_partPropSvc
ServiceHandle< IPartPropSvc > m_partPropSvc
Get particle properties.
Definition: MCTrueSeedFinder.h:103
McEventCollection
This defines the McEventCollection, which is really just an ObjectVector of McEvent objects.
Definition: McEventCollection.h:33
Trk::IVertexSeedFinder::findSeed
virtual Amg::Vector3D findSeed(const std::vector< const Trk::Track * > &vectorTrk, const xAOD::Vertex *constraint=0) const =0
Finds a linearization point out of a vector of tracks and returns it as an Amg::Vector3D object.
HepMC::ConstGenParticlePtr
const GenParticle * ConstGenParticlePtr
Definition: GenParticle.h:38
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
Amg
Definition of ATLAS Math & Geometry primitives (Amg)
Definition: AmgStringHelpers.h:19
Trk::MCTrueSeedFinder::m_removeInTimePileUp
bool m_removeInTimePileUp
Flag to consider in-time pile-up interactions.
Definition: MCTrueSeedFinder.h:106
private
#define private
Definition: DetDescrConditionsDict_dict_fixes.cxx:13
Trk::MCTrueSeedFinder::m_removeHardScattering
bool m_removeHardScattering
Flag to consider hard-scattering interaction.
Definition: MCTrueSeedFinder.h:107
Trk::MCTrueSeedFinder::MCTrueSeedFinder
MCTrueSeedFinder(const std::string &t, const std::string &n, const IInterface *p)
Definition: MCTrueSeedFinder.cxx:50
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
EventInfo.h
Trk::MCTrueSeedFinder::findSeed
virtual Amg::Vector3D findSeed(const std::vector< const Trk::Track * > &vectorTrk, const xAOD::Vertex *constraint=0) const override final
Finds a linearization point out of a vector of tracks and returns it as an Amg::Vector3D object.
Definition: MCTrueSeedFinder.cxx:74
xAOD::Vertex_v1
Class describing a Vertex.
Definition: Vertex_v1.h:42
Trk::MCTrueSeedFinder::retrieveInteractionsInfo
StatusCode retrieveInteractionsInfo(std::vector< Amg::Vector3D > &interactions) const
Definition: MCTrueSeedFinder.cxx:119
Track
Definition: TriggerChamberClusterOnTrackCreator.h:21
Trk::MCTrueSeedFinder
Definition: MCTrueSeedFinder.h:36
ServiceHandle< IPartPropSvc >