ATLAS Offline Software
Loading...
Searching...
No Matches
TruthParticleFillerTool.cxx
Go to the documentation of this file.
1/*
2 Copyright (C) 2002-2025 CERN for the benefit of the ATLAS collaboration
3*/
4
11
16
17namespace D3PD {
18
19
27 const std::string& name,
28 const IInterface* parent)
29 : Base (type, name, parent)
30{
31 declareProperty ("PDGIDVariable", m_PDGIDVariable = "pdgId");
32
33 book().ignore(); // Avoid coverity warnings.
34}
35
36
41{
42 return StatusCode::SUCCESS;
43}
44
45
50{
51 CHECK( addVariable("status", m_status) );
52 CHECK( addVariable("barcode", m_uniqueID) ); // TODO Rename variable to be consistent?
54 CHECK( addVariable("charge", m_charge) );
55 return StatusCode::SUCCESS;
56}
57
58
68{
69 *m_status = p.status();
71 *m_pdgId = p.pdgId();
72 *m_charge = static_cast<int>(MC::charge(p.pdgId()));
73 return StatusCode::SUCCESS;
74}
75
76
77} // namespace D3PD
Helpers for checking error return status codes and reporting errors.
#define CHECK(...)
Evaluate an expression and check for errors.
ATLAS-specific HepMC functions.
Block filler tool for TruthParticle's.
virtual StatusCode addVariable(const std::string &name, const std::type_info &ti, void *&ptr, const std::string &docstring="", const void *defval=0)
BlockFillerTool< xAOD::TruthParticle > Base
int * m_uniqueID
Variable: Unique Identifier for the particle.
std::string m_PDGIDVariable
Property: Name for pdgId variable.
float * m_charge
Variable: Particle charge.
int * m_status
Variable: Status code for the particle.
virtual StatusCode initialize() override
Standard Gaudi initialize method.
TruthParticleFillerTool(const std::string &type, const std::string &name, const IInterface *parent)
Standard Gaudi tool constructor.
int * m_pdgId
Variable: Particle ID code.
virtual StatusCode book() final
Book variables for this block.
virtual StatusCode fill(const xAOD::TruthParticle &p) override
Fill one block — type-safe version.
Block filler tool for noisy FEB information.
int uniqueID(const T &p)
double charge(const T &p)
TruthParticle_v1 TruthParticle
Typedef to implementation.