![]() |
The Gaudi Framework
v33r1 (b1225454)
|
This service provides access to particle properties. More...
#include <src/ParticlePropertySvc.h>


Public Member Functions | |
| StatusCode | initialize () override |
| Initialise the service. More... | |
| StatusCode | finalize () override |
| Finalise the service. More... | |
| 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. More... | |
| StatusCode | push_back (ParticleProperty *pp) override |
| Add a new particle property. More... | |
| const_iterator | begin () const override |
| Get a const reference to the beginning of the container. More... | |
| const_iterator | end () const override |
| Get a const reference to the end of the container. More... | |
| int | size () const override |
| Get the container size. More... | |
| ParticleProperty * | find (int geantId) override |
| Retrieve a property by geant3 id. More... | |
| ParticleProperty * | find (const std::string &name) override |
| Retrieve a property by particle name. More... | |
| ParticleProperty * | findByStdHepID (int stdHepId) override |
| Retrieve a property by StdHep id. More... | |
| ParticleProperty * | findByPythiaID (int pythiaID) override |
| Retrieve a property by Pythia id. More... | |
| StatusCode | erase (int geantId) override |
| Erase a property by geant3 id. More... | |
| StatusCode | erase (const std::string &name) override |
| Erase a property by particle name. More... | |
| StatusCode | eraseByStdHepID (int stdHepId) override |
| Erase a property by StdHep id ??? More... | |
| ParticlePropertySvc (const std::string &name, ISvcLocator *svc) | |
| Standard Constructor. More... | |
Public Member Functions inherited from extends< Service, IParticlePropertySvc > | |
| void * | i_cast (const InterfaceID &tid) const override |
| Implementation of IInterface::i_cast. More... | |
| StatusCode | queryInterface (const InterfaceID &ti, void **pp) override |
| Implementation of IInterface::queryInterface. More... | |
| std::vector< std::string > | getInterfaceNames () const override |
| Implementation of IInterface::getInterfaceNames. More... | |
Public Member Functions inherited from Service | |
| const std::string & | name () const override |
| Retrieve name of the service. More... | |
| StatusCode | configure () override |
| StatusCode | initialize () override |
| StatusCode | start () override |
| StatusCode | stop () override |
| StatusCode | finalize () override |
| StatusCode | terminate () override |
| Gaudi::StateMachine::State | FSMState () const override |
| Gaudi::StateMachine::State | targetFSMState () const override |
| StatusCode | reinitialize () override |
| StatusCode | restart () override |
| StatusCode | sysInitialize () override |
| Initialize Service. More... | |
| StatusCode | sysStart () override |
| Initialize Service. More... | |
| StatusCode | sysStop () override |
| Initialize Service. More... | |
| StatusCode | sysFinalize () override |
| Finalize Service. More... | |
| StatusCode | sysReinitialize () override |
| Re-initialize the Service. More... | |
| StatusCode | sysRestart () override |
| Re-initialize the Service. More... | |
| Service (std::string name, ISvcLocator *svcloc) | |
| Standard Constructor. More... | |
| SmartIF< ISvcLocator > & | serviceLocator () const override |
| Retrieve pointer to service locator. More... | |
| StatusCode | setProperties () |
| Method for setting declared properties to the values specified for the job. More... | |
| template<class T > | |
| StatusCode | service (const std::string &name, const T *&psvc, bool createIf=true) const |
| Access a service by name, creating it if it doesn't already exist. More... | |
| template<class T > | |
| StatusCode | service (const std::string &name, T *&psvc, bool createIf=true) const |
| template<typename IFace = IService> | |
| SmartIF< IFace > | service (const std::string &name, bool createIf=true) const |
| template<class T > | |
| StatusCode | service (const std::string &svcType, const std::string &svcName, T *&psvc) const |
| Access a service by name and type, creating it if it doesn't already exist. More... | |
| template<class T > | |
| StatusCode | declareTool (ToolHandle< T > &handle, std::string toolTypeAndName, bool createIf=true) |
| Declare used tool. More... | |
| SmartIF< IAuditorSvc > & | auditorSvc () const |
| The standard auditor service.May not be invoked before sysInitialize() has been invoked. More... | |
Public Member Functions inherited from PropertyHolder< CommonMessaging< implements< IService, IProperty, IStateful > > > | |
| PropertyHolder ()=default | |
| Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Details::PropertyBase &prop) |
| Declare a property. More... | |
| Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, TYPE &value, const std::string &doc="none") |
| Helper to wrap a regular data member and use it as a regular property. More... | |
| Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, Gaudi::Property< TYPE, VERIFIER, HANDLERS > &prop, const std::string &doc="none") |
| Declare a PropertyBase instance setting name and documentation. More... | |
| Gaudi::Details::PropertyBase * | declareRemoteProperty (const std::string &name, IProperty *rsvc, const std::string &rname="") |
| Declare a remote property. More... | |
| StatusCode | setProperty (const Gaudi::Details::PropertyBase &p) override |
| set the property form another property More... | |
| StatusCode | setProperty (const std::string &s) override |
| set the property from the formatted string More... | |
| StatusCode | setProperty (const std::string &n, const std::string &v) override |
| set the property from name and the value More... | |
| StatusCode | setProperty (const std::string &name, const TYPE &value) |
| set the property form the value More... | |
| StatusCode | getProperty (Gaudi::Details::PropertyBase *p) const override |
| get the property More... | |
| const Gaudi::Details::PropertyBase & | getProperty (const std::string &name) const override |
| get the property by name More... | |
| StatusCode | getProperty (const std::string &n, std::string &v) const override |
| convert the property to the string More... | |
| const std::vector< Gaudi::Details::PropertyBase * > & | getProperties () const override |
| get all properties More... | |
| bool | hasProperty (const std::string &name) const override |
| Return true if we have a property with the given name. More... | |
| PropertyHolder (const PropertyHolder &)=delete | |
| PropertyHolder & | operator= (const PropertyHolder &)=delete |
Public Member Functions inherited from CommonMessaging< implements< IService, IProperty, IStateful > > | |
| MSG::Level | msgLevel () const |
| get the cached level (originally extracted from the embedded MsgStream) More... | |
| bool | msgLevel (MSG::Level lvl) const |
| get the output level from the embedded MsgStream More... | |
Public Member Functions inherited from CommonMessagingBase | |
| virtual | ~CommonMessagingBase ()=default |
| Virtual destructor. More... | |
| const SmartIF< IMessageSvc > & | msgSvc () const |
| The standard message service. More... | |
| MsgStream & | msgStream () const |
| Return an uninitialized MsgStream. More... | |
| MsgStream & | msgStream (const MSG::Level level) const |
| Predefined configurable message stream for the efficient printouts. More... | |
| MsgStream & | always () const |
| shortcut for the method msgStream(MSG::ALWAYS) More... | |
| MsgStream & | fatal () const |
| shortcut for the method msgStream(MSG::FATAL) More... | |
| MsgStream & | err () const |
| shortcut for the method msgStream(MSG::ERROR) More... | |
| MsgStream & | error () const |
| shortcut for the method msgStream(MSG::ERROR) More... | |
| MsgStream & | warning () const |
| shortcut for the method msgStream(MSG::WARNING) More... | |
| MsgStream & | info () const |
| shortcut for the method msgStream(MSG::INFO) More... | |
| MsgStream & | debug () const |
| shortcut for the method msgStream(MSG::DEBUG) More... | |
| MsgStream & | verbose () const |
| shortcut for the method msgStream(MSG::VERBOSE) More... | |
| MsgStream & | msg () const |
| shortcut for the method msgStream(MSG::INFO) More... | |
Protected Member Functions | |
| const ParticleProperty * | anti (const ParticleProperty *pp) const |
| helper (protected) function to find an antiparticle for the given particle ID (StdHepID) More... | |
| StatusCode | setAntiParticles () |
| helper (protected) function to set the valid particle<-->antiparticle relations More... | |
| StatusCode | rebuild () |
| rebuild "the linear container" from the map More... | |
| StatusCode | erase (const ParticleProperty *pp) |
| remove particle property from all maps More... | |
| StatusCode | parse (const std::string &file) |
| parse the file More... | |
| StatusCode | parse () |
| Parses the file and fill all the maps. More... | |
| StatusCode | addParticles () |
| bool | diff (const ParticleProperty *o, const ParticleProperty *n, const MSG::Level l=MSG::DEBUG) const |
Protected Member Functions inherited from Service | |
| ~Service () override | |
| Standard Destructor. More... | |
| int | outputLevel () const |
get the Service's output level More... | |
Protected Member Functions inherited from PropertyHolder< CommonMessaging< implements< IService, IProperty, IStateful > > > | |
| Gaudi::Details::PropertyBase * | property (const std::string &name) const |
Protected Member Functions inherited from CommonMessaging< implements< IService, IProperty, IStateful > > | |
| MSG::Level | setUpMessaging () const |
| Set up local caches. More... | |
| MSG::Level | resetMessaging () |
| Reinitialize internal states. More... | |
| void | updateMsgStreamOutputLevel (int level) |
| Update the output level of the cached MsgStream. More... | |
Private Attributes | |
| Gaudi::Property< std::string > | m_filename |
| Gaudi::Property< std::vector< std::string > > | m_other {this, "OtherFiles", {}, "additional file names"} |
| Gaudi::Property< std::vector< std::string > > | m_particles |
| VectPP | m_vectpp |
| Vector of all particle properties. More... | |
| MapID | m_idmap |
| Map for geant IDs. More... | |
| MapName | m_namemap |
| Map for particle names. More... | |
| MapStdHepID | m_stdhepidmap |
| Map for StdHep Ids. More... | |
| MapPythiaID | m_pythiaidmap |
| Map for Pythia Ids. More... | |
| std::deque< ParticleProperty > | m_owned |
| std::set< std::string > | m_replaced |
| SmartIF< IFileAccess > | m_fileAccess |
Additional Inherited Members | |
Protected Attributes inherited from Service | |
| Gaudi::StateMachine::State | m_state = Gaudi::StateMachine::OFFLINE |
| Service state. More... | |
| Gaudi::StateMachine::State | m_targetState = Gaudi::StateMachine::OFFLINE |
| Service state. More... | |
| Gaudi::Property< int > | m_outputLevel {this, "OutputLevel", MSG::NIL, "output level"} |
| Gaudi::Property< bool > | m_auditInit {this, "AuditServices", false, " unused"} |
| Gaudi::Property< bool > | m_auditorInitialize {this, "AuditInitialize", false, "trigger auditor on initialize()"} |
| Gaudi::Property< bool > | m_auditorStart {this, "AuditStart", false, "trigger auditor on start()"} |
| Gaudi::Property< bool > | m_auditorStop {this, "AuditStop", false, "trigger auditor on stop()"} |
| Gaudi::Property< bool > | m_auditorFinalize {this, "AuditFinalize", false, "trigger auditor on finalize()"} |
| Gaudi::Property< bool > | m_auditorReinitialize {this, "AuditReinitialize", false, "trigger auditor on reinitialize()"} |
| Gaudi::Property< bool > | m_auditorRestart {this, "AuditRestart", false, "trigger auditor on restart()"} |
| SmartIF< IAuditorSvc > | m_pAuditorSvc |
| Auditor Service. More... | |
This service provides access to particle properties.
The settable property of this service is the ParticlePropertiesFile, an ASCII file containing the list of properties for the particles. The default file is: "$PARAMFILESROOT/data/ParticleTable.txt" or if $PARAMFILESROOT is not defined "ParticleTable.txt"
2) Add possibility to modify only certain particles through the new property "Particles" (default is empty list), Each line is interpreted as a line in particle data table, e.g.
The replaces/modified particles are reported.
Definition at line 82 of file ParticlePropertySvc.h.
| typedef VectPP::const_iterator IParticlePropertySvc::const_iterator |
Definition at line 36 of file IParticlePropertySvc.h.
| typedef VectPP::iterator IParticlePropertySvc::iterator |
Definition at line 37 of file IParticlePropertySvc.h.
| typedef std::map<int, mapped_type> Gaudi::ParticlePropertySvc::MapID |
Definition at line 86 of file ParticlePropertySvc.h.
| typedef std::map<std::string, mapped_type> Gaudi::ParticlePropertySvc::MapName |
Definition at line 87 of file ParticlePropertySvc.h.
| typedef ParticleProperty* Gaudi::ParticlePropertySvc::mapped_type |
Definition at line 85 of file ParticlePropertySvc.h.
| typedef std::map<int, mapped_type> Gaudi::ParticlePropertySvc::MapPythiaID |
Definition at line 89 of file ParticlePropertySvc.h.
| typedef std::map<int, mapped_type> Gaudi::ParticlePropertySvc::MapStdHepID |
Definition at line 88 of file ParticlePropertySvc.h.
Definition at line 35 of file IParticlePropertySvc.h.
| Gaudi::ParticlePropertySvc::ParticlePropertySvc | ( | const std::string & | name, |
| ISvcLocator * | svc | ||
| ) |
Standard Constructor.
| name | String with service name |
| svc | Pointer to service locator interface |
Definition at line 56 of file ParticlePropertySvc.cpp.
|
protected |
Definition at line 346 of file ParticlePropertySvc.cpp.
|
protected |
helper (protected) function to find an antiparticle for the given particle ID (StdHepID)
Helper (protected) function to find an antiparticle for the given particle ID (StdHepID)
| pp | pointer to particle property |
Definition at line 294 of file ParticlePropertySvc.cpp.
|
inlineoverride |
Get a const reference to the beginning of the container.
Definition at line 120 of file ParticlePropertySvc.h.
|
protected |
Definition at line 386 of file ParticlePropertySvc.cpp.
|
inlineoverride |
Get a const reference to the end of the container.
Definition at line 122 of file ParticlePropertySvc.h.
|
inlineoverride |
Erase a property by geant3 id.
Definition at line 134 of file ParticlePropertySvc.h.
|
inlineoverride |
Erase a property by particle name.
Definition at line 136 of file ParticlePropertySvc.h.
|
protected |
remove particle property from all maps
Definition at line 212 of file ParticlePropertySvc.cpp.
|
inlineoverride |
Erase a property by StdHep id ???
Definition at line 138 of file ParticlePropertySvc.h.
|
override |
Finalise the service.
finalize
finalize the base class
Definition at line 115 of file ParticlePropertySvc.cpp.
|
inlineoverride |
Retrieve a property by geant3 id.
Definition at line 126 of file ParticlePropertySvc.h.
|
inlineoverride |
Retrieve a property by particle name.
Definition at line 128 of file ParticlePropertySvc.h.
|
inlineoverride |
Retrieve a property by Pythia id.
Definition at line 132 of file ParticlePropertySvc.h.
|
inlineoverride |
Retrieve a property by StdHep id.
Definition at line 130 of file ParticlePropertySvc.h.
|
override |
Initialise the service.
initialize the service and setProperties
Definition at line 64 of file ParticlePropertySvc.cpp.
|
protected |
parse the file
Definition at line 248 of file ParticlePropertySvc.cpp.
|
protected |
Parses the file and fill all the maps.
Definition at line 225 of file ParticlePropertySvc.cpp.
|
override |
Create a new particle property.
Create a particle property and insert it in the maps.
| geantId | Geant3 ID of the particle. |
| jetsetId | Jetset ID of the particle. |
| charge | Particle charge (/e). |
| mass | Particle mass (GeV). |
| tlife | Particle lifetime (s). |
| evtName | String name of the particle in EvtGen. |
| pythiaId | Pythia ID of the particle. |
Definition at line 133 of file ParticlePropertySvc.cpp.
|
override |
Add a new particle property.
Add a particle property.
| pp,a | particle property class. |
Definition at line 143 of file ParticlePropertySvc.cpp.
|
protected |
rebuild "the linear container" from the map
Definition at line 330 of file ParticlePropertySvc.cpp.
|
protected |
helper (protected) function to set the valid particle<-->antiparticle relations
Definition at line 310 of file ParticlePropertySvc.cpp.
|
inlineoverride |
Get the container size.
Definition at line 124 of file ParticlePropertySvc.h.
|
private |
Definition at line 187 of file ParticlePropertySvc.h.
|
private |
Definition at line 171 of file ParticlePropertySvc.h.
|
private |
Map for geant IDs.
Definition at line 178 of file ParticlePropertySvc.h.
|
private |
Map for particle names.
Definition at line 179 of file ParticlePropertySvc.h.
|
private |
Definition at line 173 of file ParticlePropertySvc.h.
|
private |
Definition at line 184 of file ParticlePropertySvc.h.
|
private |
Definition at line 174 of file ParticlePropertySvc.h.
|
private |
Map for Pythia Ids.
Definition at line 181 of file ParticlePropertySvc.h.
|
private |
Definition at line 185 of file ParticlePropertySvc.h.
|
private |
Map for StdHep Ids.
Definition at line 180 of file ParticlePropertySvc.h.
|
private |
Vector of all particle properties.
Definition at line 177 of file ParticlePropertySvc.h.