Sleeping Wombat Common Library  0.50.0
swCommonLibrary
Public Member Functions | Private Attributes | List of all members
IDeserializer Class Reference

Interface for deserializers. More...

#include <Deserializer.h>

Public Member Functions

 IDeserializer (ISerializationContextPtr serContext)
 
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 () const
 Zwraca nazwę węzła, w którym znajduje się serializator.
 
bool EnterObject (const std::string &name) const
 Wyszukuje obiekt o podanej nazwie i wchodzi w głąb drzewa. More...
 
bool EnterArray (const std::string &name) const
 Wyszukuje tablicę o podanej nazwie i wchodzi w głąb drzewa. More...
 
bool EnterObject (const char *name) const
 Wyszukuje obiekt o podanej nazwie i wchodzi w głąb drzewa. More...
 
bool EnterArray (const char *name) const
 Wyszukuje tablicę o podanej nazwie i wchodzi w głąb drzewa. More...
 
void Exit () const
 Wychodzi z tablicy albo obiektu, w którym znaleziono się przy pomocy funkcji EnterObject lub EnterArray.
 
bool FirstElement () const
 Wchodzi do pierwszego elementu tablicy lub obiektu. More...
 
bool NextElement () const
 Przechodzi do następnego elementu w tablicy lub w obiekcie. More...
 
bool PrevElement () const
 Przechodzi do poprzedniego elementu w tablicy lub w obiekcie.
 
bool LastElement () const
 Wchodzi do ostatniego elementu tablicy lub obiektu. More...
 
std::string GetAttribute (const std::string &name, std::string &defaultValue) const
 Pobiera parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
const char * GetAttribute (const std::string &name, const char *defaultValue) const
 Zwraca atrybut o podanej nazwie. More...
 
uint32 GetAttribute (const std::string &name, uint32 defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
uint64 GetAttribute (const std::string &name, uint64 defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
int32 GetAttribute (const std::string &name, int32 defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
int64 GetAttribute (const std::string &name, int64 defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
bool GetAttribute (const std::string &name, bool defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
double GetAttribute (const std::string &name, double defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
std::string GetAttribute (const char *name, std::string &defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
const char * GetAttribute (const char *name, const char *defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
uint32 GetAttribute (const char *name, uint32 defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
uint64 GetAttribute (const char *name, uint64 defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
int32 GetAttribute (const char *name, int32 defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
int64 GetAttribute (const char *name, int64 defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
bool GetAttribute (const char *name, bool defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
double GetAttribute (const char *name, double defaultValue) const
 Ustawia parę ( nazwa, wartość ) w aktualnym obiekcie. More...
 
std::string GetError () const
 Returns parsing error if it occured. More...
 
sw::FilePosition CurrentLineNumber () const
 
template<typename ContextType >
ContextType * GetContext () const
 Zwraca kontekst serializacji. More...
 

Private Attributes

DeserializerImplimpl
 
ISerializationContextPtr context
 

Detailed Description

Interface for deserializers.

Member Function Documentation

sw::FilePosition IDeserializer::CurrentLineNumber ( ) const
Todo:
Think how to do this in AllocStrings mode.
bool IDeserializer::EnterArray ( const std::string &  name) const

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) const

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) const

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) const

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::FirstElement ( ) const

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 
) const

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 
) const

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 
) const

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 
) const

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 
) const

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 
) const

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 
) const

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 
) const

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 
) const

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 
) const

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 
) const

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 
) const

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 
) const

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 
) const

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 
) const

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 
) const

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 ( ) const
inline

Zwraca kontekst serializacji.

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

std::string IDeserializer::GetError ( ) const

Returns parsing error if it occured.

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

bool IDeserializer::LastElement ( ) const

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 ( ) const

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ść.

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