Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PdbParameterMap.h
Go to the documentation of this file. Or view the newest version in sPHENIX GitHub for file PdbParameterMap.h
1 #ifndef PDBCAL_BASE_PDBPARAMETERMAP_H
2 #define PDBCAL_BASE_PDBPARAMETERMAP_H
3 
4 #include "PdbCalChan.h"
5 
6 #include <cstddef>
7 #include <map>
8 #include <string>
9 #include <utility>
10 
11 class PHObject;
12 
14 {
15  public:
16  typedef std::map<const std::string, double> dMap;
17  typedef std::map<const std::string, int> iMap;
18  typedef std::map<const std::string, std::string> strMap;
19  typedef dMap::const_iterator dIter;
20  typedef iMap::const_iterator iIter;
21  typedef strMap::const_iterator strIter;
22  typedef std::pair<dIter, dIter> dConstRange;
23  typedef std::pair<iIter, iIter> iConstRange;
24  typedef std::pair<strIter, strIter> strConstRange;
25 
27  ~PdbParameterMap() override {}
28 
29  PHObject *CloneMe() const override { return new PdbParameterMap(*this); }
30 
31  void print() const override;
32  void Reset() override; // from PHObject - clear content
33 
35  size_t get_hash() const;
36 
38  {return make_pair(dparams.begin(),dparams.end());}
39 
41  {return make_pair(iparams.begin(),iparams.end());}
42 
43 
45  {return make_pair(cparams.begin(),cparams.end());}
46 
47  void set_int_param(const std::string &name, const int ival);
48  void set_double_param(const std::string &name, const double dval);
49  void set_string_param(const std::string &name, const std::string &str);
50 
51  protected:
52 
56 
57 
59 
60 };
61 
62 #endif