FYP  1.0.0
Final Year Project -- Alexander Meuer
Settings Class Reference
Collaboration diagram for Settings:
Collaboration graph

Static Public Member Functions

template<typename T >
static T const & get (std::string const &name)
 
template<typename T >
static void set (std::string const &name, T const &value)
 
static std::string const & getString (std::string const &name)
 
static bool getBool (std::string const &name)
 
static int getInt (std::string const &name)
 
static unsigned getUnsigned (std::string const &name)
 
static float getFloat (std::string const &name)
 
static sf::Vector2i const & getVector2i (std::string const &name)
 
static void save ()
 

Private Types

enum  ValueTypes {
  STRING = 0, BOOL, INTEGER, UNSIGNED,
  FLOAT, VECTOR2
}
 
typedef boost::variant< std::string, bool, int, unsigned, float, sf::Vector2i > settingValue
 

Private Member Functions

void parse (tinyxml2::XMLElement *xml)
 
void commit () const
 
void printError (std::string const &preMsg, errno_t err) const
 
void writeString (tinyxml2::XMLPrinter &printer, std::string const &mapKey) const
 
void writeBool (tinyxml2::XMLPrinter &printer, std::string const &mapKey) const
 
void writeInteger (tinyxml2::XMLPrinter &printer, std::string const &mapKey) const
 
void writeUnsigned (tinyxml2::XMLPrinter &printer, std::string const &mapKey) const
 
void writeFloat (tinyxml2::XMLPrinter &printer, std::string const &mapKey) const
 
void writeVector2 (tinyxml2::XMLPrinter &printer, std::string const &mapKey) const
 

Static Private Member Functions

static std::unique_ptr< Settings > const & instance ()
 

Private Attributes

std::map< std::string, settingValue > mMap
 

Static Private Attributes

static std::unique_ptr< SettingsmInstance
 

The documentation for this class was generated from the following files: