Imported ConfigUtility, updating it for this project

This commit is contained in:
Kayne Ruse
2013-05-03 02:22:34 +10:00
parent f349e59fd3
commit 96f0821d9b
6 changed files with 195 additions and 3 deletions
+41
View File
@@ -0,0 +1,41 @@
#ifndef CONFIGUTILITY_HPP_
#define CONFIGUTILITY_HPP_
#include <map>
#include <string>
#include <cstdlib>
class ConfigUtility {
public:
ConfigUtility() {}
ConfigUtility(std::string s) { Load(s); }
void Load(std::string fname);
std::string String(std::string s) {
return table[s];
}
const char* CString(std::string s) {
return table[s].c_str();
}
int Integer(std::string s) {
return atoi(table[s].c_str());
}
double Double(std::string s) {
return atof(table[s].c_str());
}
bool Boolean(std::string s) {
return table[s] == "true";
}
std::string& operator[](std::string s) {
return table[s];
}
std::map<std::string, std::string>* GetMap() {
return &table;
}
private:
std::map<std::string, std::string> table;
};
#endif