#pragma once #include "linux/registry.h" #include #include namespace common2 { class PTreeRegistry : public Registry { public: struct KeyQtEncodedLess { // this function is used to make the Qt registry compatible with sa2 and napple // it is here, in the base class PTreeRegistry simply because it makes things easier // KeyQtEncodedLess goes in the typedef init_t below bool operator()(const std::string & lhs, const std::string & rhs) const; }; typedef boost::property_tree::basic_ptree ini_t; std::string getString(const std::string & section, const std::string & key) const override; DWORD getDWord(const std::string & section, const std::string & key) const override; bool getBool(const std::string & section, const std::string & key) const override; void putString(const std::string & section, const std::string & key, const std::string & value) override; void putDWord(const std::string & section, const std::string & key, const DWORD value) override; template T getValue(const std::string & section, const std::string & key) const; template void putValue(const std::string & section, const std::string & key, const T & value); std::map> getAllValues() const override; protected: ini_t myINI; }; }