SAGA API  v9.5
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 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::CSG_MetaData ( void  )

Definition at line 68 of file metadata.cpp.

Referenced by Ins_Child().

◆ CSG_MetaData() [2/4]

CSG_MetaData::CSG_MetaData ( const CSG_MetaData MetaData)

Definition at line 79 of file metadata.cpp.

References Create().

◆ 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().

◆ 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 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 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 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 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_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_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().

◆ 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().

◆ 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(), 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)

◆ 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(), CSG_Array::Destroy(), Get_Child(), Get_Children_Count(), and Get_Name().

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

◆ Del_Property() [1/2]

bool CSG_MetaData::Del_Property ( const CSG_String Name)

Definition at line 588 of file metadata.cpp.

References CSG_String::CmpNoCase(), Get_Property_Count(), and Get_Property_Name().

◆ Del_Property() [2/2]

bool CSG_MetaData::Del_Property ( int  i)

Definition at line 601 of file metadata.cpp.

References CSG_Strings::Del(), and 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()

bool CSG_MetaData::from_XML ( const CSG_String XML)

Definition at line 944 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

Definition at line 472 of file metadata.cpp.

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

◆ 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 133 of file metadata.h.

References Get_Content().

Referenced by Get_Content().

◆ Get_Content() [7/7]

◆ Get_Count()

int CSG_MetaData::Get_Count ( void  ) const
inline

Definition at line 146 of file metadata.h.

◆ Get_Name()

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

Definition at line 131 of file metadata.h.

Referenced by Assign(), asText(), Del_Children(), Get_Table(), Save(), and to_XML().

◆ Get_Parent()

CSG_MetaData* CSG_MetaData::Get_Parent ( void  ) const
inline

Definition at line 144 of file metadata.h.

Referenced by from_JSON().

◆ Get_Property() [1/6]

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

Definition at line 181 of file metadata.h.

References Get_Property().

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 178 of file metadata.h.

Referenced by Assign(), and Del_Property().

◆ Get_Property_Name()

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

Definition at line 179 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(), 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 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 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_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 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_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 991 of file metadata.cpp.

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

Referenced by Load().

◆ Load_JSON()

bool CSG_MetaData::Load_JSON ( const CSG_String File)

Definition at line 1050 of file metadata.cpp.

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

Referenced by Load().

◆ Mov_Child()

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

Definition at line 281 of file metadata.cpp.

References CSG_Array::Get_Array(), and Get_Children_Count().

◆ operator()() [1/2]

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

Definition at line 172 of file metadata.h.

◆ operator()() [2/2]

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

Definition at line 171 of file metadata.h.

◆ operator+=()

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

Definition at line 127 of file metadata.h.

◆ operator=()

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

Definition at line 126 of file metadata.h.

◆ operator[]() [1/4]

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

Definition at line 174 of file metadata.h.

◆ operator[]() [2/4]

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

Definition at line 176 of file metadata.h.

◆ operator[]() [3/4]

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

Definition at line 173 of file metadata.h.

◆ operator[]() [4/4]

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

Definition at line 175 of file metadata.h.

◆ 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 1063 of file metadata.cpp.

◆ Set_Content()

◆ Set_Name()

◆ Set_Property() [1/4]

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

◆ 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 1156 of file metadata.cpp.

◆ to_XML()

bool CSG_MetaData::to_XML ( CSG_String XML) const

Definition at line 961 of file metadata.cpp.

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

Friends And Related Function Documentation

◆ CSG_HTTP

friend class CSG_HTTP
friend

Definition at line 89 of file metadata.h.


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