1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
#ifndef PARAMETER_LIST_H
#define PARAMETER_LIST_H
#include <string>
#include <list>
using namespace std;
enum { PARAM_TYPE_INT, PARAM_TYPE_DOUBLE, PARAM_TYPE_STRING };
class ParameterDefinition {
public:
ParameterDefinition(const string &n, int t, void *v):param_name(n), param_type(t), bind_variable(v) {}
string param_name;
int param_type;
void *bind_variable;
};
class ParameterList {
protected:
list<ParameterDefinition*> parameter_list;
public:
ParameterList() {}
~ParameterList();
void addParameter(const string ¶m_name, int param_type, void *bind_variable);
void setParameter(const string ¶m_name, const string ¶m_value);
void setParameter(const string ¶m_name, int param_value);
void setParameter(const string ¶m_name, double param_value);
string parameterAsString(const string ¶m_name);
int parameterAsInt(const string ¶m_name);
double parameterAsDouble(const string ¶m_name);
void listParameters();
};
#endif //PARAMETER_LIST_H
|