File indexing completed on 2025-01-30 10:11:34
0001
0002
0003
0004
0005
0006
0007 #ifndef DEFTABLE_HH
0008 #define DEFTABLE_HH
0009
0010 #include <string>
0011 #include <map>
0012
0013 namespace HepPDT {
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023 class DefTable {
0024 typedef std::map<std::string,double> TempDefMap;
0025
0026 public:
0027 typedef TempDefMap::const_iterator const_iterator;
0028 typedef TempDefMap::iterator iterator;
0029
0030 DefTable( );
0031 ~DefTable() { ; }
0032
0033
0034
0035
0036 void addDefinition( std::string const & def, double val ) { tempDefines[def] = val; }
0037
0038
0039
0040
0041 bool hasDefinition( std::string const & def ) const;
0042
0043
0044
0045
0046 int size() const { return tempDefines.size(); }
0047
0048 double definition( std::string const & def );
0049
0050 void writeDefinitions() const;
0051
0052
0053 iterator begin() { return tempDefines.begin(); }
0054
0055 const_iterator begin() const { return tempDefines.begin(); }
0056
0057
0058 iterator end() { return tempDefines.end(); }
0059
0060 const_iterator end() const { return tempDefines.end(); }
0061
0062 private:
0063 TempDefMap tempDefines;
0064
0065
0066 DefTable & operator = ( DefTable const & );
0067 DefTable( DefTable const & );
0068
0069 };
0070
0071 }
0072
0073 #endif