ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
MuonSpectrometer
MuonTruthAlgs
src
MuonDecayTruthTrajectoryBuilder.h
Go to the documentation of this file.
1
/*
2
Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3
*/
4
5
// Dear emacs, this is -*-c++-*-
6
7
#ifndef MUONDECAYTRUTHTRAJECTORYBUILDER_H
8
#define MUONDECAYTRUTHTRAJECTORYBUILDER_H
9
10
#include "
AthenaBaseComps/AthAlgTool.h
"
11
#include "
AtlasHepMC/GenVertex_fwd.h
"
12
#include "
AtlasHepMC/GenParticle_fwd.h
"
13
#include "
TrkToolInterfaces/ITruthTrajectoryBuilder.h
"
14
#include <utility>
//for std::pair
15
16
namespace
Muon
{
17
18
class
MuonDecayTruthTrajectoryBuilder
:
virtual
public
Trk::ITruthTrajectoryBuilder
,
public
AthAlgTool
{
19
public
:
20
MuonDecayTruthTrajectoryBuilder
(
const
std::string&
type
,
const
std::string& name,
const
IInterface* parent);
21
22
23
24
void
buildTruthTrajectory
(
TruthTrajectory
* result,
const
HepMC::ConstGenParticlePtr
& input)
const override
;
25
29
HepMC::ConstGenParticlePtr
getMother
(
const
HepMC::ConstGenParticlePtr
& particle)
const override
;
30
35
HepMC::ConstGenParticlePtr
getDaughter
(
const
HepMC::ConstGenParticlePtr
&particle)
const override
;
36
37
private
:
39
typedef
std::pair<HepMC::ConstGenParticlePtr, HepMC::ConstGenParticlePtr>
MotherDaughter
;
40
50
MotherDaughter
truthTrajectoryCuts
(
const
HepMC::ConstGenVertexPtr
& vtx)
const
;
51
52
};
53
54
}
// namespace Muon
55
56
#endif
AthAlgTool.h
GenParticle_fwd.h
GenVertex_fwd.h
ITruthTrajectoryBuilder.h
AthAlgTool::AthAlgTool
AthAlgTool(const std::string &type, const std::string &name, const IInterface *parent)
Constructor with parameters:
Definition
AthAlgTool.cxx:16
Muon::MuonDecayTruthTrajectoryBuilder::getDaughter
HepMC::ConstGenParticlePtr getDaughter(const HepMC::ConstGenParticlePtr &particle) const override
Returns an umambiguous daughter of the truth particle on a TruthTrajectory, or 0.
Definition
MuonDecayTruthTrajectoryBuilder.cxx:139
Muon::MuonDecayTruthTrajectoryBuilder::getMother
HepMC::ConstGenParticlePtr getMother(const HepMC::ConstGenParticlePtr &particle) const override
Returns an umambiguous mother of the truth particle on a TruthTrajectory, or 0.
Definition
MuonDecayTruthTrajectoryBuilder.cxx:148
Muon::MuonDecayTruthTrajectoryBuilder::MotherDaughter
std::pair< HepMC::ConstGenParticlePtr, HepMC::ConstGenParticlePtr > MotherDaughter
Return type for the next method.
Definition
MuonDecayTruthTrajectoryBuilder.h:39
Muon::MuonDecayTruthTrajectoryBuilder::truthTrajectoryCuts
MotherDaughter truthTrajectoryCuts(const HepMC::ConstGenVertexPtr &vtx) const
Decides if the vertex connects two particles on the same TruthTrajectory.
Definition
MuonDecayTruthTrajectoryBuilder.cxx:79
Muon::MuonDecayTruthTrajectoryBuilder::MuonDecayTruthTrajectoryBuilder
MuonDecayTruthTrajectoryBuilder(const std::string &type, const std::string &name, const IInterface *parent)
Definition
MuonDecayTruthTrajectoryBuilder.cxx:21
Muon::MuonDecayTruthTrajectoryBuilder::buildTruthTrajectory
void buildTruthTrajectory(TruthTrajectory *result, const HepMC::ConstGenParticlePtr &input) const override
Build a TruthTrajectory this particle belongs to.
Definition
MuonDecayTruthTrajectoryBuilder.cxx:29
Trk::ITruthTrajectoryBuilder
Definition
ITruthTrajectoryBuilder.h:25
TruthTrajectory
A TruthTrajectory is a chain of charged MC particles connected through the mother-daughter relationsh...
Definition
TruthTrajectory.h:26
HepMC::ConstGenParticlePtr
HepMC3::ConstGenParticlePtr ConstGenParticlePtr
Definition
GenParticle.h:20
HepMC::ConstGenVertexPtr
HepMC3::ConstGenVertexPtr ConstGenVertexPtr
Definition
GenVertex.h:24
Muon
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
Definition
TrackSystemController.h:46
type
Generated on
for ATLAS Offline Software by
1.17.0