GEAR  1.9.0
 All Classes Namespaces Functions Variables Typedefs Enumerations Friends Pages
GearParametersImpl.h
1 #ifndef GEAR_GearParametersImpl_H
2 #define GEAR_GearParametersImpl_H 1
3 
4 #include <map>
5 
6 #include "gear/GearParameters.h"
7 #include "gear/GEAR.h"
8 
9 namespace gear {
10 
19  class GearParametersImpl : virtual public GearParameters {
20 
21  public:
22 
23  typedef std::map< std::string, int > IntMap ;
24  typedef std::map< std::string, double > DoubleMap ;
25  typedef std::map< std::string, std::string > StringMap ;
26  typedef std::map< std::string, IntVec > IntVecMap ;
27  typedef std::map< std::string, DoubleVec > DoubleVecMap ;
28  typedef std::map< std::string, StringVec > StringVecMap ;
29 
30 
32  virtual ~GearParametersImpl() ;
33 
37  virtual int getIntVal(const std::string & key) const ;
38 
42  virtual double getDoubleVal(const std::string & key) const ;
43 
47  virtual const std::string & getStringVal(const std::string & key) const
48  ;
49 
53  virtual const std::vector<int> & getIntVals(const std::string & key) const
54  ;
55 
59  virtual const std::vector<double> & getDoubleVals(const std::string & key) const
60  ;
61 
65  virtual const std::vector<std::string> & getStringVals(const std::string & key) const
66  ;
67 
68  // setters
69 
72  virtual void setIntVal(const std::string & key , int val ) ;
73 
76  virtual void setDoubleVal(const std::string & key, double val ) ;
77 
80  virtual void setStringVal(const std::string & key , const std::string & val) ;
81 
84  virtual void setIntVals(const std::string & key, const std::vector<int>& vals) ;
85 
88  virtual void setDoubleVals(const std::string & key, const std::vector<double>& vals) ;
89 
92  virtual void setStringVals(const std::string & key, const std::vector<std::string>& vals) ;
93 
94 
95 
97  virtual const std::vector<std::string> & getIntKeys() const ;
98 
100  virtual const std::vector<std::string> & getDoubleKeys() const ;
101 
103  virtual const std::vector<std::string> & getStringKeys() const ;
104 
106  virtual const std::vector<std::string> & getIntVecKeys() const ;
107 
109  virtual const std::vector<std::string> & getDoubleVecKeys() const ;
110 
112  virtual const std::vector<std::string> & getStringVecKeys() const ;
113 
114  protected:
115 
116  // maps holding named parameters
117  std::map< std::string, int > _intMap{} ;
118  std::map< std::string, double > _doubleMap{} ;
119  std::map< std::string, std::string > _stringMap{} ;
120  std::map< std::string, IntVec > _intVecMap{} ;
121  std::map< std::string, DoubleVec > _doubleVecMap{} ;
122  std::map< std::string, StringVec > _stringVecMap{} ;
123 
124  mutable StringVec _intKeys{} ;
125  mutable StringVec _doubleKeys{} ;
126  mutable StringVec _stringKeys{} ;
127  mutable StringVec _intVecKeys{} ;
128  mutable StringVec _doubleVecKeys{} ;
129  mutable StringVec _stringVecKeys{} ;
130 
131 
132  }; // class
133 } // namespace gear
134 
135 #endif /* ifndef GEAR_GEARPARAMETERS_H */
virtual const std::string & getStringVal(const std::string &key) const
String value for key.
Implementation of GearParameters - a set off parameters that can be used to describe the geometrical ...
virtual const std::vector< std::string > & getStringVecKeys() const
All keys of StringVec variables.
virtual const std::vector< int > & getIntVals(const std::string &key) const
Integer values for key.
virtual void setIntVals(const std::string &key, const std::vector< int > &vals)
Integer values for key.
virtual void setDoubleVals(const std::string &key, const std::vector< double > &vals)
Double values for key.
virtual ~GearParametersImpl()
Destructor.
virtual const std::vector< std::string > & getStringKeys() const
All keys of string variables.
virtual void setStringVals(const std::string &key, const std::vector< std::string > &vals)
String values for key.
virtual int getIntVal(const std::string &key) const
Integer value for key.
Abstract interface for a set of parameters that can be used to describe the geometrical properties of...
virtual const std::vector< std::string > & getDoubleKeys() const
All keys of double variables.
virtual double getDoubleVal(const std::string &key) const
Double value for key.
virtual const std::vector< std::string > & getDoubleVecKeys() const
All keys of DoubleVec variables.
virtual void setIntVal(const std::string &key, int val)
Set Integer value for key.
virtual const std::vector< double > & getDoubleVals(const std::string &key) const
Double values for key.
virtual const std::vector< std::string > & getIntVecKeys() const
All keys of IntVec variables.
virtual const std::vector< std::string > & getStringVals(const std::string &key) const
String values for key.
virtual void setStringVal(const std::string &key, const std::string &val)
String value for key.
virtual const std::vector< std::string > & getIntKeys() const
All keys of int variables.
virtual void setDoubleVal(const std::string &key, double val)
Double value for key.