16 class ParticlePropertiesList
18 static ParticlePropertiesList* ptr;
19 std::map<int, std::pair<std::string, std::string>> m_latexLabels;
21 std::vector<ParticleProperties> m_theList;
22 std::map<std::string, ParticleProperties*> m_byName;
23 std::map<int, ParticleProperties*> m_byID;
24 double m_quasiStableThreshold;
26 explicit ParticlePropertiesList(
const std::string& fname_in =
"mass_width.csv" );
29 const std::vector<std::string>
dirList()
const;
33 static const ParticlePropertiesList*
getMe();
37 void makeAlias(
const std::string& name,
const std::string& alias );
45 std::vector<ParticleProperties>::const_iterator
begin()
const {
return m_theList.cbegin() ; }
46 std::vector<ParticleProperties>::const_iterator
end()
const {
return m_theList.cend() ; }
47 void print( std::ostream& out = std::cout )
const;
50 void addParticle(
const std::vector<std::string>& properties );
Class that contains the PDG properties (mass, width, charges, etc.) for a single particle species,...
static const ParticleProperties * get(const int &PDG, const bool &quiet=false)
static const ParticlePropertiesList * getMe()
bool readFile(const std::string &fname)
std::vector< int > getParticleIds() const
bool readLatexLabels(const std::string &name)
const ParticleProperties * find(const std::string &name, bool quiet=false) const
static const ParticleProperties * get(const std::string &name, const bool &quiet=false)
std::vector< ParticleProperties >::const_iterator end() const
std::vector< ParticleProperties >::const_iterator begin() const
double quasiStableThreshold() const
const ParticleProperties * find(int pdg_id, bool quiet=false) const
const std::vector< std::string > dirList() const
static ParticlePropertiesList * getMutable()
void addParticle(const std::vector< std::string > &properties)
void print(std::ostream &out=std::cout) const
void makeAlias(const std::string &name, const std::string &alias)
std::vector< std::string > getParticleNames() const