Sleeping Wombat GUI  0.100
swGUI
Public Member Functions | Private Attributes | List of all members
IDeserializer Class Reference

Interface for deserializers. More...

#include <Deserializer.h>

Public Member Functions

 IDeserializer ()
 
 IDeserializer (std::unique_ptr< SerializationContext > serContext)
 
 ~IDeserializer ()
 
bool LoadFromFile (const std::string &fileName, ParsingMode mode)
 Wczytuje i parsuje podany plik. More...
 
bool LoadFromString (const std::string &contentString)
 Parsuje XMLa z podanego stringa. More...
 
const char * GetName ()
 Zwraca nazwę węzła, w którym znajduje się serializator. More...
 
bool EnterObject (const std::string &name)
 Wyszukuje obiekt o podanej nazwie i wchodzi w głąb drzewa. More...
 
bool EnterArray (const std::string &name)
 Wyszukuje tablicę o podanej nazwie i wchodzi w głąb drzewa. More...
 
bool EnterObject (const char *name)
 Wyszukuje obiekt o podanej nazwie i wchodzi w głąb drzewa. More...
 
bool EnterArray (const char *name)
 Wyszukuje tablicę o podanej nazwie i wchodzi w głąb drzewa. More...
 
void Exit ()
 Wychodzi z tablicy albo obiektu, w którym znaleziono się przy pomocy funkcji EnterObject lub EnterArray. More...
 
bool FirstElement ()
 Wchodzi do pierwszego elementu tablicy lub obiektu. More...
 
bool NextElement ()
 Przechodzi do następnego elementu w tablicy lub w obiekcie. More...
 
bool PrevElement ()
 Przechodzi do poprzedniego elementu w tablicy lub w obiekcie. More...
 
bool LastElement ()
 Wchodzi do ostatniego elementu tablicy lub obiektu. More...
 
std::string GetAttribute (const std::string &name, std::string &defaultValue)
 Pobiera parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
const char * GetAttribute (const std::string &name, const char *defaultValue)
 Zwraca atrybut o podanej nazwie. More...
 
uint32 GetAttribute (const std::string &name, uint32 defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
uint64 GetAttribute (const std::string &name, uint64 defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
int32 GetAttribute (const std::string &name, int32 defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
int64 GetAttribute (const std::string &name, int64 defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
bool GetAttribute (const std::string &name, bool defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
double GetAttribute (const std::string &name, double defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
std::string GetAttribute (const char *name, std::string &defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
const char * GetAttribute (const char *name, const char *defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
uint32 GetAttribute (const char *name, uint32 defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
uint64 GetAttribute (const char *name, uint64 defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
int32 GetAttribute (const char *name, int32 defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
int64 GetAttribute (const char *name, int64 defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
bool GetAttribute (const char *name, bool defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
double GetAttribute (const char *name, double defaultValue)
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
std::string GetError ()
 Zwraca string zawierający błąd parsowania, jeżeli był. More...
 
template<typename ContextType >
ContextType * GetContext ()
 Zwraca kontekst serializacji. More...
 

Private Attributes

DeserializerImplimpl
 
std::unique_ptr< SerializationContextcontext
 

Detailed Description

Interface for deserializers.

Constructor & Destructor Documentation

IDeserializer::IDeserializer ( )
IDeserializer::IDeserializer ( std::unique_ptr< SerializationContext serContext)
IDeserializer::~IDeserializer ( )

Member Function Documentation

bool IDeserializer::EnterArray ( const std::string &  name)

Wyszukuje tablicę o podanej nazwie i wchodzi w głąb drzewa.

Parameters
[in]nameNazwa tablicy.
Returns
Zwraca false, jeżeli tablica o danej nazwie nie istnieje.
bool IDeserializer::EnterArray ( const char *  name)

Wyszukuje tablicę o podanej nazwie i wchodzi w głąb drzewa.

Parameters
[in]nameNazwa tablicy.
Returns
Zwraca false, jeżeli tablica o danej nazwie nie istnieje.
bool IDeserializer::EnterObject ( const std::string &  name)

Wyszukuje obiekt o podanej nazwie i wchodzi w głąb drzewa.

Parameters
[in]nameNazwa obiektu.
Returns
Zwraca false, jeżeli obiekt o danej nazwie nie istnieje.
bool IDeserializer::EnterObject ( const char *  name)

Wyszukuje obiekt o podanej nazwie i wchodzi w głąb drzewa.

Parameters
[in]nameNazwa obiektu.
Returns
Zwraca false, jeżeli obiekt o danej nazwie nie istnieje.
void IDeserializer::Exit ( )

Wychodzi z tablicy albo obiektu, w którym znaleziono się przy pomocy funkcji EnterObject lub EnterArray.

bool IDeserializer::FirstElement ( )

Wchodzi do pierwszego elementu tablicy lub obiektu.

Jeżeli węzeł, w którym jesteśmy, nie ma żadnych dzieci, pozostajemy w nim i stan serializatora nie zmienia się.

Returns
Zwaca false, jeżeli nie ma żadnego obiektu w tablicy (lub obiekcie).
std::string IDeserializer::GetAttribute ( const std::string &  name,
std::string &  defaultValue 
)

Pobiera parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
const char * IDeserializer::GetAttribute ( const std::string &  name,
const char *  defaultValue 
)

Zwraca atrybut o podanej nazwie.

Attention
Zwracany string przestanie istnieć w momencie usunięcia serializatora lub zmiany zawartości.
Parameters
[in]nameNazwa atrybutu
[in]defaultValueJeżeli element o podanej nazwie nie istnieje, zostanie zwrócona wartość domyślna.
uint32 IDeserializer::GetAttribute ( const std::string &  name,
uint32  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
uint64 IDeserializer::GetAttribute ( const std::string &  name,
uint64  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
int32 IDeserializer::GetAttribute ( const std::string &  name,
int32  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
int64 IDeserializer::GetAttribute ( const std::string &  name,
int64  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
bool IDeserializer::GetAttribute ( const std::string &  name,
bool  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
double IDeserializer::GetAttribute ( const std::string &  name,
double  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
std::string IDeserializer::GetAttribute ( const char *  name,
std::string &  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
const char * IDeserializer::GetAttribute ( const char *  name,
const char *  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
uint32 IDeserializer::GetAttribute ( const char *  name,
uint32  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
uint64 IDeserializer::GetAttribute ( const char *  name,
uint64  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
int32 IDeserializer::GetAttribute ( const char *  name,
int32  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
int64 IDeserializer::GetAttribute ( const char *  name,
int64  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
bool IDeserializer::GetAttribute ( const char *  name,
bool  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
double IDeserializer::GetAttribute ( const char *  name,
double  defaultValue 
)

Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie.

Parameters
[in]nameNazwa ustawianej zmiennej.
[in]defaultValueWartość, jaka zostanie wpisana do podanej zmiennej.
template<typename ContextType >
ContextType* IDeserializer::GetContext ( )
inline

Zwraca kontekst serializacji.

Funkcja sprawdza typ kontekstu jedynie w trybie debug (assert).

std::string IDeserializer::GetError ( )

Zwraca string zawierający błąd parsowania, jeżeli był.

Aby się dowiedzieć czy parsowanie powiodło się, sprawdź wartość zwracaną przez funkcje LoadFromString lub LoadFromFile.

const char * IDeserializer::GetName ( )

Zwraca nazwę węzła, w którym znajduje się serializator.

bool IDeserializer::LastElement ( )

Wchodzi do ostatniego elementu tablicy lub obiektu.

Jeżeli węzeł, w którym jesteśmy, nie ma żadnych dzieci, pozostajemy w nim i stan serializatora nie zmienia się.

Returns
Zwaca false, jeżeli nie ma żadnego obiektu w tablicy (lub obiekcie).
bool IDeserializer::LoadFromFile ( const std::string &  fileName,
ParsingMode  mode 
)

Wczytuje i parsuje podany plik.

Parameters
[in]fileNameNazwa pliku.
[in]modeTryb parsowania. Parser XMLowy wspiera tylko parsowanie insitu.
Returns
Zwraca informację czy parsowanie powiodło się.
bool IDeserializer::LoadFromString ( const std::string &  contentString)

Parsuje XMLa z podanego stringa.

Parameters
[in]contentStringString do sparsowania.
bool IDeserializer::NextElement ( )

Przechodzi do następnego elementu w tablicy lub w obiekcie.

Returns
Zwraca false, jeżeli nie istnieje już kolejny element, do którego można przejść.
bool IDeserializer::PrevElement ( )

Przechodzi do poprzedniego elementu w tablicy lub w obiekcie.

Member Data Documentation

std::unique_ptr< SerializationContext > IDeserializer::context
private
DeserializerImpl* IDeserializer::impl
private

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