Loading [MathJax]/extensions/tex2jax.js
Go to the documentation of this file.
11 #ifndef PARTICLEPROPERTYSVC_PARTICLEPROPERTYSVC_H
12 #define PARTICLEPROPERTYSVC_PARTICLEPROPERTYSVC_H
112 double tlife,
const std::string& evtName,
int pythiaId,
double maxWidth )
override;
172 "Filename of the particle properties file" };
175 this,
"Particles", {},
"properties to be redefined explicitly" };
std::map< int, mapped_type > MapStdHepID
StatusCode setAntiParticles()
helper (protected) function to set the valid particle<-->antiparticle relations
SmartIF< IFileAccess > m_fileAccess
MapID m_idmap
Map for geant IDs.
MapStdHepID m_stdhepidmap
Map for StdHep Ids.
StatusCode erase(int geantId) override
Erase a property by geant3 id.
StatusCode parse()
Parses the file and fill all the maps.
MapName m_namemap
Map for particle names.
const_iterator begin() const override
Get a const reference to the beginning of the container.
ParticleProperty * findByPythiaID(int pythiaID) override
Retrieve a property by Pythia id.
Gaudi::Property< std::string > m_filename
StatusCode finalize() override
Finalise the service.
ParticleProperty * mapped_type
MapPythiaID m_pythiaidmap
Map for Pythia Ids.
ParticleProperty * find(const std::string &name) override
Retrieve a property by particle name.
const ParticleProperty * anti(const ParticleProperty *pp) const
helper (protected) function to find an antiparticle for the given particle ID (StdHepID)
StatusCode rebuild()
rebuild "the linear container" from the map
const std::string & name() const override
Retrieve name of the service
VectPP::const_iterator const_iterator
bool diff(const ParticleProperty *o, const ParticleProperty *n, const MSG::Level l=MSG::DEBUG) const
VectPP::iterator iterator
Gaudi::Property< std::vector< std::string > > m_particles
StatusCode erase(const std::string &name) override
Erase a property by particle name.
std::map< std::string, mapped_type > MapName
VectPP::const_iterator const_iterator
std::map< int, mapped_type > MapPythiaID
Base class used to extend a class implementing other interfaces.
Header file for std:chrono::duration-based Counters.
StatusCode addParticles()
StatusCode eraseByStdHepID(int stdHepId) override
Erase a property by StdHep id ???
StatusCode push_back(const std::string &particle, int geantId, int jetsetId, double charge, double mass, double tlife, const std::string &evtName, int pythiaId, double maxWidth) override
Create a new particle property.
const_iterator end() const override
Get a const reference to the end of the container.
std::deque< ParticleProperty > m_owned
ParticleProperty * findByStdHepID(int stdHepId) override
Retrieve a property by StdHep id.
Gaudi::Property< std::vector< std::string > > m_other
std::vector< ParticleProperty * > VectPP
std::map< int, mapped_type > MapID
ParticlePropertySvc(const std::string &name, ISvcLocator *svc)
Standard Constructor.
int size() const override
Get the container size.
ParticleProperty * find(int geantId) override
Retrieve a property by geant3 id.
StatusCode initialize() override
Initialise the service.
std::set< std::string > m_replaced
VectPP m_vectpp
Vector of all particle properties.
std::vector< ParticleProperty * > VectPP