 |
ATLAS Offline Software
|
Go to the documentation of this file.
5 #ifndef COPYTRUTHJETPARTICLES_H
6 #define COPYTRUTHJETPARTICLES_H
34 virtual int execute()
const override final;
39 std::vector<const xAOD::TruthParticle*>& promptLeptons,
40 std::map<const xAOD::TruthParticle*,unsigned int>& tc_results)
const;
43 std::map<const xAOD::TruthParticle*,unsigned int>& tc_results)
const;
48 ToolHandle<IMCTruthClassifier>
m_classif{
this,
"MCTruthClassifier",
""};
60 Gaudi::Property<float>
m_ptmin{
this,
"PtMin", 0. ,
"Minimum pT of particles to be accepted for tagging (in MeV)"};
65 Gaudi::Property<std::vector<int>>
m_vetoPDG_IDs{
this,
"VetoPDG_IDs", {},
66 "List of PDG IDs (python list) to veto. Will ignore these and all children of these."};
70 "Include noninteracting BSM particles (excluding neutrinos) in the output collection"};
71 Gaudi::Property<bool>
m_includeNu{
this,
"IncludeNeutrinos",
false,
72 "Include neutrinos in the output collection"};
73 Gaudi::Property<bool>
m_includeMu{
this,
"IncludeMuons",
false,
74 "Include muons in the output collection"};
76 "Include leptons from prompt decays (i.e. not from hadron decays) in the output collection"};
78 "Include photons from Higgs and other decays that produce isolated photons"};
79 Gaudi::Property<bool>
m_chargedOnly{
this,
"ChargedParticlesOnly",
false,
80 "Include only charged particles in the output collection" };
82 Gaudi::Property<bool>
m_includeSM{
this,
"IncludeSMParts",
true,
83 "Include SM particles in the output collection"};
85 "Include dark hadrons in the output collection"};
89 this,
"useBarcode",
false,
"use barcode rather than UID"
Gaudi::Property< bool > m_chargedOnly
Gaudi::Property< bool > m_includeSM
bool comesFrom(const xAOD::TruthParticle *tp, const int pdgID, std::vector< int > &used_vertices) const
DataVector adapter that acts like it holds const pointers.
Gaudi::Property< float > m_maxAbsEta
Maximum allowed eta for particles in jets.
SG::ReadHandleKey< xAOD::TruthParticleContainer > m_truthParticleKey
Key for input truth event.
Gaudi::Property< bool > m_includeDark
Gaudi::Property< bool > m_includeMu
Gaudi::Property< bool > m_use_barcode
Property holding a SG store/key/clid from which a WriteHandle is made.
SG::ConstAccessor< int > m_uid
::StatusCode StatusCode
StatusCode definition for legacy code.
Class describing a truth particle in the MC record.
Gaudi::Property< bool > m_includePromptLeptons
Gaudi::Property< bool > m_includePromptPhotons
virtual int execute() const override final
redefine execute so we can call our own classify()
Gaudi::Property< bool > m_includeBSMNonInt
Gaudi::Property< float > m_ptmin
Minimum pT for particle selection (in MeV)
ToolHandle< IMCTruthClassifier > m_classif
Handle on MCTruthClassifier for finding prompt leptons.
bool classifyJetInput(const xAOD::TruthParticle *tp, std::vector< const xAOD::TruthParticle * > &promptLeptons, std::map< const xAOD::TruthParticle *, unsigned int > &tc_results) const
Redefine our own Classifier function(s)
virtual StatusCode initialize() override final
Function initialising the tool.
SG::ReadDecorHandleKeyArray< xAOD::TruthParticleContainer > m_dressingNames
Name of the decoration to be used for identifying FSR (dressing) photons.
Gaudi::Property< std::vector< int > > m_vetoPDG_IDs
unsigned int getTCresult(const xAOD::TruthParticle *tp, std::map< const xAOD::TruthParticle *, unsigned int > &tc_results) const
Gaudi::Property< bool > m_includeNu
SG::WriteHandleKey< ConstDataVector< xAOD::TruthParticleContainer > > m_outTruthPartKey
Key for output truth particles.
CopyTruthJetParticles(const std::string &name)
Constructor.