settings(int argc, char* argv[]);
void parseArgs(int argc, char* argv[]);
- void loadFromFile(std::string filePath);
+
+ void loadFromFile(const std::string& filePath, bool precedence = false);
+ void loadFromFiles(const std::vector<std::string>& filePaths,
+ bool precedence = false);
template <typename T>
bool get(const std::string& key, T& value);
+ template <typename T>
+ bool getNumber(const std::string& key, T& value);
private:
std::map<std::string,serializable_ptr> map;
}
}
+template <typename T>
+bool settings::getNumber(const std::string& key, T& value)
+{
+ std::map<std::string,serializable_ptr>::const_iterator i = map.find(key);
+
+ if (i != map.end())
+ {
+ serializable_ptr obj = (*i).second;
+ return obj->getNumber(value);
+ }
+ else
+ {
+ return false;
+ }
+}
} // namepsace dc
#endif // _SETTINGS_HH_
+/** vim: set ts=4 sw=4 tw=80: *************************************************/
+