SAGA API v9.10
Loading...
Searching...
No Matches
CSG_MetaData Class Reference

#include <metadata.h>

Public Member Functions

 CSG_MetaData (void)
bool Create (void)
 CSG_MetaData (const CSG_MetaData &MetaData)
bool Create (const CSG_MetaData &MetaData)
 CSG_MetaData (const CSG_String &File, const SG_Char *Extension=NULL)
bool Create (const CSG_String &File, const SG_Char *Extension=NULL)
 CSG_MetaData (CSG_File &File)
bool Create (CSG_File &File)
virtual ~CSG_MetaData (void)
void Destroy (void)
bool Load (const CSG_String &File, const SG_Char *Extension=NULL)
bool Save (const CSG_String &File, const SG_Char *Extension=NULL) const
bool Load (CSG_File &Stream)
bool Save (CSG_File &Stream) const
bool Load_HTTP (const CSG_String &Server, const CSG_String &Path, const SG_Char *Username=NULL, const SG_Char *Password=NULL)
bool from_XML (const char *XML, size_t Length, const char *Encoding="UTF-8")
bool from_XML (const CSG_String &XML)
bool to_XML (CSG_String &XML) const
bool Load_JSON (const CSG_String &File)
bool Save_JSON (const CSG_String &File) const
bool from_JSON (const CSG_String &JSON)
bool to_JSON (CSG_String &JSON) const
bool Assign (const CSG_MetaData &MetaData, bool bAddChildren=true)
CSG_MetaDataoperator= (const CSG_MetaData &MetaData)
CSG_MetaDataoperator+= (const CSG_MetaData &MetaData)
void Set_Name (const CSG_String &Name)
bool Cmp_Name (const CSG_String &String, bool bNoCase=true) const
const CSG_StringGet_Name (void) const
const CSG_StringGet_Content (void) const
const SG_CharGet_Content (int Index) const
const SG_CharGet_Content (const CSG_String &Name) const
bool Get_Content (const CSG_String &Name, CSG_String &Value) const
bool Get_Content (const CSG_String &Name, double &Value) const
bool Get_Content (const CSG_String &Name, int &Value) const
bool Get_Content (const CSG_String &Name, sLong &Value) const
void Set_Content (const CSG_String &Content)
void Fmt_Content (const char *Format,...)
void Fmt_Content (const wchar_t *Format,...)
bool Cmp_Content (const CSG_String &String, bool bNoCase=false) const
CSG_MetaDataGet_Parent (void) const
int Get_Count (void) const
int Get_Children_Count (void) const
CSG_MetaDataGet_Child (int Index) const
CSG_MetaDataGet_Child (const CSG_String &Name) const
CSG_MetaDataAdd_Child (void)
CSG_MetaDataAdd_Child (const CSG_String &Name)
CSG_MetaDataAdd_Child (const CSG_String &Name, const CSG_String &Content)
CSG_MetaDataAdd_Child (const CSG_String &Name, double Content)
CSG_MetaDataAdd_Child (const CSG_String &Name, int Content)
CSG_MetaDataAdd_Child (const CSG_String &Name, sLong Content)
CSG_MetaDataAdd_Child (const CSG_MetaData &MetaData, bool bAddChildren=true)
CSG_MetaDataIns_Child (int Position)
CSG_MetaDataIns_Child (const CSG_String &Name, int Position)
CSG_MetaDataIns_Child (const CSG_String &Name, const CSG_String &Content, int Position)
CSG_MetaDataIns_Child (const CSG_String &Name, double Content, int Position)
CSG_MetaDataIns_Child (const CSG_String &Name, int Content, int Position)
CSG_MetaDataIns_Child (const CSG_String &Name, sLong Content, int Position)
CSG_MetaDataIns_Child (const CSG_MetaData &MetaData, int Position, bool bAddChildren=true)
bool Mov_Child (int from_Index, int to_Index)
bool Del_Child (int Index)
bool Del_Child (const CSG_String &Name)
bool Add_Children (const CSG_MetaData &MetaData)
bool Del_Children (int Depth=0, const SG_Char *Name=NULL)
CSG_MetaDataoperator() (int Index) const
CSG_MetaDataoperator() (const CSG_String &Name) const
CSG_MetaDataoperator[] (int Index)
CSG_MetaDataoperator[] (const CSG_String &Name)
const CSG_MetaDataoperator[] (int Index) const
const CSG_MetaDataoperator[] (const CSG_String &Name) const
int Get_Property_Count (void) const
const CSG_StringGet_Property_Name (int Index) const
const SG_CharGet_Property (int Index) const
const SG_CharGet_Property (const CSG_String &Name) const
bool Get_Property (const CSG_String &Name, CSG_String &Value) const
bool Get_Property (const CSG_String &Name, double &Value) const
bool Get_Property (const CSG_String &Name, int &Value) const
bool Get_Property (const CSG_String &Name, sLong &Value) const
bool Add_Property (const CSG_String &Name, const CSG_String &Value)
bool Add_Property (const CSG_String &Name, double Value)
bool Add_Property (const CSG_String &Name, int Value)
bool Add_Property (const CSG_String &Name, sLong Value)
bool Set_Property (const CSG_String &Name, const CSG_String &Value, bool bAddIfNotExists=true)
bool Set_Property (const CSG_String &Name, double Value, bool bAddIfNotExists=true)
bool Set_Property (const CSG_String &Name, int Value, bool bAddIfNotExists=true)
bool Set_Property (const CSG_String &Name, sLong Value, bool bAddIfNotExists=true)
bool Cmp_Property (const CSG_String &Name, const CSG_String &String, bool bNoCase=false) const
bool Del_Property (const CSG_String &Name)
bool Del_Property (int i)
CSG_String asText (int Flags=0) const
class CSG_Table Get_Table (int Flags=0) const

Friends

class CSG_HTTP

Detailed Description

Definition at line 87 of file metadata.h.

Constructor & Destructor Documentation

◆ CSG_MetaData() [1/4]

◆ CSG_MetaData() [2/4]

CSG_MetaData::CSG_MetaData ( const CSG_MetaData & MetaData)

Definition at line 79 of file metadata.cpp.

References Create(), and CSG_MetaData().

◆ CSG_MetaData() [3/4]

CSG_MetaData::CSG_MetaData ( const CSG_String & File,
const SG_Char * Extension = NULL )

Definition at line 92 of file metadata.cpp.

References Create(), and SG_Char.

◆ CSG_MetaData() [4/4]

CSG_MetaData::CSG_MetaData ( CSG_File & File)

Definition at line 105 of file metadata.cpp.

References Create().

◆ ~CSG_MetaData()

CSG_MetaData::~CSG_MetaData ( void )
virtual

Definition at line 134 of file metadata.cpp.

References Destroy().

Member Function Documentation

◆ Add_Child() [1/7]

CSG_MetaData * CSG_MetaData::Add_Child ( const CSG_MetaData & MetaData,
bool bAddChildren = true )

Definition at line 196 of file metadata.cpp.

References CSG_MetaData(), and Ins_Child().

◆ Add_Child() [2/7]

CSG_MetaData * CSG_MetaData::Add_Child ( const CSG_String & Name)

Definition at line 171 of file metadata.cpp.

References CSG_MetaData(), and Ins_Child().

◆ Add_Child() [3/7]

CSG_MetaData * CSG_MetaData::Add_Child ( const CSG_String & Name,
const CSG_String & Content )

Definition at line 176 of file metadata.cpp.

References CSG_MetaData(), and Ins_Child().

◆ Add_Child() [4/7]

CSG_MetaData * CSG_MetaData::Add_Child ( const CSG_String & Name,
double Content )

Definition at line 181 of file metadata.cpp.

References CSG_MetaData(), Ins_Child(), and SG_Get_String().

◆ Add_Child() [5/7]

CSG_MetaData * CSG_MetaData::Add_Child ( const CSG_String & Name,
int Content )

Definition at line 186 of file metadata.cpp.

References CSG_MetaData(), CSG_String::Format(), Ins_Child(), and SG_T.

◆ Add_Child() [6/7]

CSG_MetaData * CSG_MetaData::Add_Child ( const CSG_String & Name,
sLong Content )

Definition at line 191 of file metadata.cpp.

References CSG_MetaData(), CSG_String::Format(), Ins_Child(), and SG_T.

◆ Add_Child() [7/7]

◆ Add_Children()

bool CSG_MetaData::Add_Children ( const CSG_MetaData & MetaData)

◆ Add_Property() [1/4]

◆ Add_Property() [2/4]

bool CSG_MetaData::Add_Property ( const CSG_String & Name,
double Value )

Definition at line 572 of file metadata.cpp.

References Add_Property(), CSG_String::Format(), and SG_T.

◆ Add_Property() [3/4]

bool CSG_MetaData::Add_Property ( const CSG_String & Name,
int Value )

Definition at line 577 of file metadata.cpp.

References Add_Property(), CSG_String::Format(), and SG_T.

◆ Add_Property() [4/4]

bool CSG_MetaData::Add_Property ( const CSG_String & Name,
sLong Value )

Definition at line 582 of file metadata.cpp.

References Add_Property(), CSG_String::Format(), and SG_T.

◆ Assign()

bool CSG_MetaData::Assign ( const CSG_MetaData & MetaData,
bool bAddChildren = true )

◆ asText()

CSG_String CSG_MetaData::asText ( int Flags = 0) const

◆ Cmp_Content()

bool CSG_MetaData::Cmp_Content ( const CSG_String & String,
bool bNoCase = false ) const

◆ Cmp_Name()

bool CSG_MetaData::Cmp_Name ( const CSG_String & String,
bool bNoCase = true ) const

◆ Cmp_Property()

bool CSG_MetaData::Cmp_Property ( const CSG_String & Name,
const CSG_String & String,
bool bNoCase = false ) const

◆ Create() [1/4]

bool CSG_MetaData::Create ( const CSG_MetaData & MetaData)

Definition at line 86 of file metadata.cpp.

References Assign(), and CSG_MetaData().

◆ Create() [2/4]

bool CSG_MetaData::Create ( const CSG_String & File,
const SG_Char * Extension = NULL )

Definition at line 99 of file metadata.cpp.

References Load(), and SG_Char.

◆ Create() [3/4]

bool CSG_MetaData::Create ( CSG_File & File)

Definition at line 112 of file metadata.cpp.

References Load().

◆ Create() [4/4]

bool CSG_MetaData::Create ( void )

Definition at line 73 of file metadata.cpp.

Referenced by CSG_Grid::Create(), CSG_HTTP, CSG_MetaData(), CSG_MetaData(), and CSG_MetaData().

◆ Del_Child() [1/2]

bool CSG_MetaData::Del_Child ( const CSG_String & Name)

◆ Del_Child() [2/2]

bool CSG_MetaData::Del_Child ( int Index)

Definition at line 321 of file metadata.cpp.

References CSG_MetaData(), and Get_Children_Count().

Referenced by Del_Child(), and Del_Children().

◆ Del_Children()

bool CSG_MetaData::Del_Children ( int Depth = 0,
const SG_Char * Name = NULL )

Deletes children if depth level is reached, i.e. if depth level equals zero all children of the node will be deleted, if it is one only the grandchildren will be affected, and so on. If Name is a valid string, only those children are taken into account that have this name.

Definition at line 381 of file metadata.cpp.

References Del_Child(), Del_Children(), Get_Child(), Get_Children_Count(), Get_Name(), and SG_Char.

Referenced by CSG_Grids::Create(), Del_Children(), CSG_Tool::Get_History(), and CSG_Table::Save().

◆ Del_Property() [1/2]

bool CSG_MetaData::Del_Property ( const CSG_String & Name)

Definition at line 588 of file metadata.cpp.

References Del_Property(), Get_Property_Count(), and Get_Property_Name().

Referenced by Del_Property().

◆ Del_Property() [2/2]

bool CSG_MetaData::Del_Property ( int i)

Definition at line 601 of file metadata.cpp.

References Get_Property_Count().

◆ Destroy()

◆ Fmt_Content() [1/2]

void CSG_MetaData::Fmt_Content ( const char * Format,
... )

◆ Fmt_Content() [2/2]

void CSG_MetaData::Fmt_Content ( const wchar_t * Format,
... )

Definition at line 529 of file metadata.cpp.

◆ from_JSON()

◆ from_XML() [1/2]

bool CSG_MetaData::from_XML ( const char * XML,
size_t Length,
const char * Encoding = "UTF-8" )

Definition at line 947 of file metadata.cpp.

References Destroy().

Referenced by CSG_HTTP.

◆ from_XML() [2/2]

bool CSG_MetaData::from_XML ( const CSG_String & XML)

Definition at line 968 of file metadata.cpp.

References CSG_String::b_str(), Destroy(), and CSG_String::Length().

◆ Get_Child() [1/2]

CSG_MetaData * CSG_MetaData::Get_Child ( const CSG_String & Name) const

◆ Get_Child() [2/2]

◆ Get_Children_Count()

◆ Get_Content() [1/7]

const SG_Char * CSG_MetaData::Get_Content ( const CSG_String & Name) const

◆ Get_Content() [2/7]

bool CSG_MetaData::Get_Content ( const CSG_String & Name,
CSG_String & Value ) const

Definition at line 485 of file metadata.cpp.

References CSG_String::c_str(), Get_Content(), CSG_String::is_Empty(), and SG_Char.

◆ Get_Content() [3/7]

bool CSG_MetaData::Get_Content ( const CSG_String & Name,
double & Value ) const

Definition at line 500 of file metadata.cpp.

References CSG_String::asDouble(), and Get_Content().

◆ Get_Content() [4/7]

bool CSG_MetaData::Get_Content ( const CSG_String & Name,
int & Value ) const

Definition at line 501 of file metadata.cpp.

References CSG_String::asInt(), and Get_Content().

◆ Get_Content() [5/7]

bool CSG_MetaData::Get_Content ( const CSG_String & Name,
sLong & Value ) const

Definition at line 502 of file metadata.cpp.

References CSG_String::asLongLong(), and Get_Content().

◆ Get_Content() [6/7]

const SG_Char * CSG_MetaData::Get_Content ( int Index) const
inline

Definition at line 134 of file metadata.h.

References Get_Child(), Get_Content(), and SG_Char.

Referenced by Get_Content().

◆ Get_Content() [7/7]

◆ Get_Count()

int CSG_MetaData::Get_Count ( void ) const
inline

Definition at line 147 of file metadata.h.

◆ Get_Name()

const CSG_String & CSG_MetaData::Get_Name ( void ) const
inline

◆ Get_Parent()

CSG_MetaData * CSG_MetaData::Get_Parent ( void ) const
inline

Definition at line 145 of file metadata.h.

References CSG_MetaData().

Referenced by from_JSON(), and to_JSON().

◆ Get_Property() [1/6]

const SG_Char * CSG_MetaData::Get_Property ( const CSG_String & Name) const
inline

Definition at line 182 of file metadata.h.

References Get_Property(), and SG_Char.

Referenced by Get_Property().

◆ Get_Property() [2/6]

bool CSG_MetaData::Get_Property ( const CSG_String & Name,
CSG_String & Value ) const

Definition at line 652 of file metadata.cpp.

References Get_Property(), and SG_Char.

◆ Get_Property() [3/6]

bool CSG_MetaData::Get_Property ( const CSG_String & Name,
double & Value ) const

Definition at line 666 of file metadata.cpp.

References CSG_String::asDouble(), and Get_Property().

◆ Get_Property() [4/6]

bool CSG_MetaData::Get_Property ( const CSG_String & Name,
int & Value ) const

Definition at line 667 of file metadata.cpp.

References CSG_String::asInt(), and Get_Property().

◆ Get_Property() [5/6]

bool CSG_MetaData::Get_Property ( const CSG_String & Name,
sLong & Value ) const

Definition at line 668 of file metadata.cpp.

References CSG_String::asLongLong(), and Get_Property().

◆ Get_Property() [6/6]

◆ Get_Property_Count()

int CSG_MetaData::Get_Property_Count ( void ) const
inline

Definition at line 179 of file metadata.h.

Referenced by Assign(), Del_Property(), and Del_Property().

◆ Get_Property_Name()

const CSG_String & CSG_MetaData::Get_Property_Name ( int Index) const
inline

Definition at line 180 of file metadata.h.

Referenced by Assign(), and Del_Property().

◆ Get_Table()

◆ Ins_Child() [1/7]

CSG_MetaData * CSG_MetaData::Ins_Child ( const CSG_MetaData & MetaData,
int Position,
bool bAddChildren = true )

Definition at line 263 of file metadata.cpp.

References Assign(), CSG_MetaData(), and Ins_Child().

◆ Ins_Child() [2/7]

CSG_MetaData * CSG_MetaData::Ins_Child ( const CSG_String & Name,
const CSG_String & Content,
int Position )

Definition at line 230 of file metadata.cpp.

References CSG_MetaData(), and Ins_Child().

◆ Ins_Child() [3/7]

CSG_MetaData * CSG_MetaData::Ins_Child ( const CSG_String & Name,
double Content,
int Position )

Definition at line 248 of file metadata.cpp.

References CSG_MetaData(), Ins_Child(), and SG_Get_String().

◆ Ins_Child() [4/7]

CSG_MetaData * CSG_MetaData::Ins_Child ( const CSG_String & Name,
int Content,
int Position )

Definition at line 253 of file metadata.cpp.

References CSG_MetaData(), CSG_String::Format(), Ins_Child(), and SG_T.

◆ Ins_Child() [5/7]

CSG_MetaData * CSG_MetaData::Ins_Child ( const CSG_String & Name,
int Position )

Definition at line 243 of file metadata.cpp.

References CSG_MetaData(), and Ins_Child().

◆ Ins_Child() [6/7]

CSG_MetaData * CSG_MetaData::Ins_Child ( const CSG_String & Name,
sLong Content,
int Position )

Definition at line 258 of file metadata.cpp.

References CSG_MetaData(), CSG_String::Format(), Ins_Child(), and SG_T.

◆ Ins_Child() [7/7]

CSG_MetaData * CSG_MetaData::Ins_Child ( int Position)

◆ Load() [1/2]

◆ Load() [2/2]

bool CSG_MetaData::Load ( CSG_File & Stream)

Definition at line 827 of file metadata.cpp.

References Destroy(), CSG_File::Get_Stream(), and CSG_File::is_Reading().

◆ Load_HTTP()

bool CSG_MetaData::Load_HTTP ( const CSG_String & Server,
const CSG_String & Path,
const SG_Char * Username = NULL,
const SG_Char * Password = NULL )

Definition at line 1015 of file metadata.cpp.

References CSG_String::c_str(), Destroy(), and SG_Char.

Referenced by CSG_HTTP, and Load().

◆ Load_JSON()

bool CSG_MetaData::Load_JSON ( const CSG_String & File)

Definition at line 1074 of file metadata.cpp.

References from_JSON(), JSON, CSG_File::Length(), CSG_File::Open(), CSG_File::Read(), and SG_FILE_R.

Referenced by CSG_HTTP, and Load().

◆ Mov_Child()

bool CSG_MetaData::Mov_Child ( int from_Index,
int to_Index )

Definition at line 281 of file metadata.cpp.

References CSG_MetaData(), and Get_Children_Count().

◆ operator()() [1/2]

CSG_MetaData * CSG_MetaData::operator() ( const CSG_String & Name) const
inline

Definition at line 173 of file metadata.h.

References CSG_MetaData(), and Get_Child().

◆ operator()() [2/2]

CSG_MetaData * CSG_MetaData::operator() ( int Index) const
inline

Definition at line 172 of file metadata.h.

References CSG_MetaData(), and Get_Child().

◆ operator+=()

CSG_MetaData & CSG_MetaData::operator+= ( const CSG_MetaData & MetaData)
inline

Definition at line 128 of file metadata.h.

References Add_Child(), and CSG_MetaData().

◆ operator=()

CSG_MetaData & CSG_MetaData::operator= ( const CSG_MetaData & MetaData)
inline

Definition at line 127 of file metadata.h.

References Assign(), and CSG_MetaData().

◆ operator[]() [1/4]

CSG_MetaData & CSG_MetaData::operator[] ( const CSG_String & Name)
inline

Definition at line 175 of file metadata.h.

References CSG_MetaData(), and Get_Child().

◆ operator[]() [2/4]

const CSG_MetaData & CSG_MetaData::operator[] ( const CSG_String & Name) const
inline

Definition at line 177 of file metadata.h.

References CSG_MetaData(), and Get_Child().

◆ operator[]() [3/4]

CSG_MetaData & CSG_MetaData::operator[] ( int Index)
inline

Definition at line 174 of file metadata.h.

References CSG_MetaData(), and Get_Child().

◆ operator[]() [4/4]

const CSG_MetaData & CSG_MetaData::operator[] ( int Index) const
inline

Definition at line 176 of file metadata.h.

References CSG_MetaData(), and Get_Child().

◆ Save() [1/2]

bool CSG_MetaData::Save ( const CSG_String & File,
const SG_Char * Extension = NULL ) const

◆ Save() [2/2]

bool CSG_MetaData::Save ( CSG_File & Stream) const

Definition at line 896 of file metadata.cpp.

References Get_Name(), CSG_File::Get_Stream(), and CSG_File::is_Writing().

◆ Save_JSON()

bool CSG_MetaData::Save_JSON ( const CSG_String & File) const

Definition at line 1087 of file metadata.cpp.

Referenced by CSG_HTTP.

◆ Set_Content()

◆ Set_Name()

◆ Set_Property() [1/4]

◆ Set_Property() [2/4]

bool CSG_MetaData::Set_Property ( const CSG_String & Name,
double Value,
bool bAddIfNotExists = true )

Definition at line 636 of file metadata.cpp.

References CSG_String::Format(), Set_Property(), and SG_T.

◆ Set_Property() [3/4]

bool CSG_MetaData::Set_Property ( const CSG_String & Name,
int Value,
bool bAddIfNotExists = true )

Definition at line 641 of file metadata.cpp.

References CSG_String::Format(), Set_Property(), and SG_T.

◆ Set_Property() [4/4]

bool CSG_MetaData::Set_Property ( const CSG_String & Name,
sLong Value,
bool bAddIfNotExists = true )

Definition at line 646 of file metadata.cpp.

References CSG_String::Format(), Set_Property(), and SG_T.

◆ to_JSON()

bool CSG_MetaData::to_JSON ( CSG_String & JSON) const

Definition at line 1198 of file metadata.cpp.

References Get_Child(), Get_Children_Count(), Get_Content(), Get_Name(), Get_Parent(), JSON, and to_JSON().

Referenced by CSG_HTTP, and to_JSON().

◆ to_XML()

bool CSG_MetaData::to_XML ( CSG_String & XML) const

Definition at line 985 of file metadata.cpp.

References CSG_Array::Get_Array(), Get_Name(), and CSG_Array::Get_Size().

Referenced by CSG_HTTP.

◆ CSG_HTTP

friend class CSG_HTTP
friend

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