14#include "GaudiKernel/IPartPropSvc.h"
15#include "HepPDT/ParticleData.hh"
16#include "HepPDT/ParticleDataTable.hh"
29 const std::string& name,
30 const IInterface* parent)
35 declareProperty (
"PartPropSvc",
m_ppsvc,
36 "Particle property service.");
48 return StatusCode::SUCCESS;
61 return StatusCode::SUCCESS;
79 const HepPDT::ParticleDataTable* pdt =
m_ppsvc->PDT();
80 const HepPDT::ParticleData* pd = pdt->particle (std::abs(p.pdgId()));
85 return StatusCode::SUCCESS;
Helpers for checking error return status codes and reporting errors.
#define CHECK(...)
Evaluate an expression and check for errors.
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)
ServiceHandle< IPartPropSvc > m_ppsvc
Property: Particle property service.
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.
TruthParticle_v1 TruthParticle
Typedef to implementation.