Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:01:15

0001 #ifndef PARTICLENAME_HH
0002 #define PARTICLENAME_HH
0003 // ----------------------------------------------------------------------
0004 //
0005 // ParticleName.hh
0006 // Author: Lynn Garren and Walter Brown
0007 //
0008 //  Create a map that gives a standard name for each pre-defined 
0009 //  particle ID number.  This map is initialized if and only if 
0010 //  the public functions are called. Because the map is static, 
0011 //  the initialization happens only once.
0012 //
0013 //
0014 // ----------------------------------------------------------------------
0015 
0016 #include <string>
0017 #include <map>
0018 #include <iostream>
0019 
0020 namespace HepPID {
0021 
0022 /// get a known HepPID Particle name
0023 std::string  particleName( const int & );
0024 /// lookup a known ID
0025 int          particleName( const std::string & );
0026 
0027 /// list all known names
0028 void  listParticleNames( std::ostream & os );
0029 
0030 /// verify that this number has a valid name
0031 bool validParticleName( const int & );
0032 /// verify that this string has a valid id
0033 bool validParticleName( const std::string & );
0034 
0035 // forward definition of ParticleNameMap class
0036 class ParticleNameMap;
0037 /// access the ParticleNameMap for other purposes
0038 ParticleNameMap const &  getParticleNameMap();
0039 
0040 }  // namespace HepPID
0041 
0042 #endif // PARTICLENAME_HH