18 #ifndef DOXYGEN_SHOULD_SKIP_THIS 
   58             MemoryAllocationFailed, 
 
   66         virtual const char* getDefaultPath() const noexcept = 0;
 
   72         virtual 
void setDefaultPath(const 
char* path) noexcept = 0;
 
   80         virtual 
Result<Error> load(const 
char* path) noexcept = 0;
 
   89         virtual 
Result<Error> loadFromString(const 
char* content) noexcept = 0;
 
   96         virtual 
bool save(const 
char* path) const noexcept = 0;
 
  102         virtual 
void clear() noexcept = 0;
 
  108         virtual 
bool isEmpty() const noexcept = 0;
 
  182             Value(
int x) noexcept;
 
  189             Value(
int x, 
int y) noexcept;
 
  197             Value(
int x, 
int y, 
int z) noexcept;
 
  206             Value(
int x, 
int y, 
int z, 
int w) noexcept;
 
  212             Value(
float x) noexcept;
 
  219             Value(
float x, 
float y) noexcept;
 
  226             Value(
float x, 
float y, 
float z) noexcept;
 
  235             Value(
float x, 
float y, 
float z, 
float w) noexcept;
 
  242             Value(const 
char* 
string) noexcept;
 
  248             Value(const 
Rect& rect) noexcept;
 
  254             Value(const 
Size& size) noexcept;
 
  260             Value(const 
Point2f& point) noexcept;
 
  266             Value(
bool x) noexcept;
 
  272             operator 
bool() const noexcept;
 
  279             bool is(Type type) const noexcept;
 
  286             bool setString(const 
char* 
string) noexcept;
 
  294             bool getString(
char* 
string) const noexcept;
 
  301             void setRect(const 
Rect& rect) noexcept;
 
  310             bool getRect(
Rect* rect) const noexcept;
 
  317             void setSize(const 
Size& size) noexcept;
 
  326             bool getSize(
Size* size) const noexcept;
 
  333             void setPoint2i(const 
Point2i& point) noexcept;
 
  342             bool getPoint2i(
Point2i* point) const noexcept;
 
  349             void setPoint2f(const 
Point2f& point) noexcept;
 
  358             bool getPoint2f(
Point2f* point) const noexcept;
 
  364             void setBool(
bool x) noexcept;
 
  373             bool getBool(
bool* x) const noexcept;
 
  380             void setInt(
int x) noexcept;
 
  388             bool getInt(
int* x) const noexcept;
 
  396             void setInt(
int x, 
int y) noexcept;
 
  406             bool getInt(
int* x, 
int* y) const noexcept;
 
  415             void setInt(
int x, 
int y, 
int z) noexcept;
 
  426             bool getInt(
int* x, 
int* y, 
int* z) const noexcept;
 
  436             void setInt(
int x, 
int y, 
int z, 
int w) noexcept;
 
  448             bool getInt(
int* x, 
int* y, 
int* z, 
int* w) const noexcept;
 
  455             void setFloat(
float x) noexcept;
 
  463             bool getFloat(
float* x) const noexcept;
 
  471             void setFloat(
float x, 
float y) noexcept;
 
  481             bool getFloat(
float* x, 
float* y) const noexcept;
 
  490             void setFloat(
float x, 
float y, 
float z) noexcept;
 
  501             bool getFloat(
float* x, 
float* y, 
float* z) const noexcept;
 
  511             void setFloat(
float x, 
float y, 
float z, 
float w) noexcept;
 
  523             bool getFloat(
float* x, 
float* y, 
float* z, 
float* w) const noexcept;
 
  532             float asFloat(
float defaultValue = 0.f) const noexcept;
 
  552             bool asBool(
bool defaultValue = false) const noexcept;
 
  561             int asInt(
int defaultValue = 0) const noexcept;
 
  571             Size asSize(const 
Size& defaultValue = 
Size()) const noexcept;
 
  591             Rect asRect(const 
Rect& defaultValue = 
Rect()) const noexcept;
 
  601             const 
char* asString(const 
char* defaultValue = "") const noexcept;
 
  603             inline Value(const Value& other) = delete;
 
  604             Value(Value&& other);
 
  606             inline Value& operator=(const Value& other) = delete;
 
  607             Value& operator=(Value&& other);
 
  609             void swap(Value& first, Value& second);
 
  625             Key(
const char* section, 
const char* parameter) noexcept;
 
  631             const char* getSection() 
const noexcept;
 
  637             const char* getParameter() 
const noexcept;
 
  643             void setSection(
const char* section) noexcept;
 
  649             void setParameter(
const char* parameter) noexcept;
 
  659             static const unsigned int m_bufferLength = 128;
 
  660             char m_section[m_bufferLength];   
 
  661             char m_parameter[m_bufferLength]; 
 
  674             Desc(
const char* desc) noexcept;
 
  680             const char* getDesc() 
const noexcept;
 
  686             void setDesc(
const char* desc) noexcept;
 
  689             static const unsigned int m_bufferLength = 256;
 
  690             char m_desc[m_bufferLength]; 
 
  700             Entry() noexcept = default;
 
  712             Entry(const 
Desc& desc, Value&& value) noexcept;
 
  718             void setDesc(const 
Desc& desc) noexcept;
 
  724             void setValue(Value&& value) noexcept;
 
  730             const 
Desc& getDesc() const noexcept;
 
  736             const Value& getValue() const noexcept;
 
  746         virtual 
void setDesc(const 
Key& key, const 
Desc& desc) noexcept = 0;
 
  756         void setDesc(const 
char* section, const 
char* parameter, const 
Desc& desc) noexcept;
 
  765         virtual 
void setValue(const 
Key& key, Value&& value) noexcept = 0;
 
  775         void setValue(const 
char* section, const 
char* parameter, Value&& value) noexcept;
 
  784         virtual 
void setEntry(const 
Key& key, 
Entry&& entry) noexcept = 0;
 
  794         void setEntry(const 
Key& key, const 
Desc& desc, Value&& value) noexcept;
 
  805         void setEntry(const 
char* section, const 
char* parameter, const 
Desc& desc, Value&& value) noexcept;
 
  814         virtual const 
Entry& getEntry(const 
Key& key) const noexcept = 0;
 
  823         Desc getDesc(const 
Key& key) const noexcept;
 
  833         Desc getDesc(const 
char* section, const 
char* parameter) const noexcept;
 
  842         const Value& getValue(const 
Key& key) const noexcept;
 
  852         const Value& getValue(const 
char* section, const 
char* parameter) const noexcept;
 
  887                 return "Could not allocate memory";
 
  889                 return "Error reading from file";
 
  891                 return "Internal error";
 
  893                 return "Error during document declaration/processing instruction parsing";
 
  895                 return "Parser could not determine tag type";
 
  897                 return "Error during CDATA section parsing";
 
  899                 return "File was not found";
 
  901                 return "Error during PCDATA section parsing";
 
  903                 return "Error during comment parsing";
 
  905                 return "Error during document type declaration parsing";
 
  907                 return "Settings sections is invalid or absent";
 
  909                 return "Error during element attribute parsing";
 
  911                 return "Error during end element tag parsing";
 
  913                 return "Root type is not node_element or node_document";
 
  915                 return "Document without element nodes";
 
  917                 return "Mismatch of start-end tags";
 
  919                 return "Error during start element tag parsing";
 
  921                 return "Unknown error";
 
Could not allocate memory. 
2D floating point. 
Definition: ISettingsProvider.h:166
floating point. 
Definition: ISettingsProvider.h:165
Error
Config parsing error codes. 
Definition: ISettingsProvider.h:37
3D floating point. 
Definition: ISettingsProvider.h:167
#define FSDK_API
Dummy. 
Definition: Def.h:27
#define DECLARE_SMARTPTR(X)
Smart ptr declaration helper macro. 
Definition: Def.h:56
(exclusive to xml_node::append_buffer) 
A structure that encapsulates an action result enumeration. 
Definition: Result.h:27
Common data types and structures. 
Configuration parameter key. 
Definition: ISettingsProvider.h:615
Definition: ISettingsProvider.h:123
Object system types and interfaces. 
Definition: ISettingsProvider.h:131
Parser could not determine tag type. 
4D floating point. 
Definition: ISettingsProvider.h:168
Type
Value type. 
Definition: ISettingsProvider.h:159
Desc m_desc
Parameter description. 
Definition: ISettingsProvider.h:697
Base strong reference counted object interface. 
Definition: IRefCounted.h:37
Definition: ISettingsProvider.h:147
Value data. 
Definition: ISettingsProvider.h:118
Definition: ISettingsProvider.h:139
tag was not closed or there was an excessive closing tag) 
Parsing error occurred while parsing document declaration/processing instruction. ...
Parsing error occurred while parsing document type declaration. 
Parsing error occurred while parsing comment. 
Definition: ISettingsProvider.h:119
Configuration parameter description. 
Definition: ISettingsProvider.h:665
Definition: ISettingsProvider.h:127
FSDK_API ResultValue< FSDKError, ISettingsProviderPtr > createSettingsProviderFromString(const char *content) noexcept
Creates a settings provider from the xml-formatted string. 
bool operator<(Version lhs, Version rhs) noexcept
Check if one version is less than another. 
Definition: Version.h:36
Integer. 
Definition: ISettingsProvider.h:161
File was not found during load_file() 
Addon for Result to output some value aside the result. Specialization for copiable types...
Definition: ResultValue.h:21
Definition: ISettingsProvider.h:143
Definition: ISettingsProvider.h:135
4D integer. 
Definition: ISettingsProvider.h:164
Parsing resulted in a document without element nodes. 
Parsing error occurred while parsing end element tag. 
Settings section is invalid or absent. 
2D integer. 
Definition: ISettingsProvider.h:162
Parsing error occurred while parsing PCDATA section. 
Configuration parameter entry. 
Definition: ISettingsProvider.h:694
FSDKError
Common SDK error codes. 
Definition: FSDKError.h:17
Configuration parameter value. 
Definition: ISettingsProvider.h:113
Parsing error occurred while parsing start element tag. 
Error reading from file/stream. 
FSDK_API ResultValue< FSDKError, ISettingsProviderPtr > createSettingsProvider(const char *path) noexcept
Create a settings provider. 
3D integer. 
Definition: ISettingsProvider.h:163
Value m_value
Parameter value. 
Definition: ISettingsProvider.h:696
Unkown value type. 
Definition: ISettingsProvider.h:160
Definition: ISettingsProvider.h:151
Parsing error occurred while parsing element attribute. 
Parsing error occurred while parsing CDATA section. 
SDK settings provider interface. 
Definition: ISettingsProvider.h:32