#include <Pt/SerializationInfo.h>
Represents arbitrary types during serialization.
Inherited by Settings [private].
Classes | |
| class | ConstIterator |
| Const forward iterator for child elements. More... | |
| class | Iterator |
| Forward Iterator for child elements. More... | |
Public Types | |
| enum | Type { Void = 0, Context = 1, Reference = 2, Boolean = 3, Char = 4, Str = 5, Int8 = 6, Int16 = 7, Int32 = 8, Int64 = 9, UInt8 = 10, UInt16 = 11, UInt32 = 12, UInt64 = 13, Float = 14, Double = 15, LongDouble = 16, Binary = 17, Struct = 18, Sequence = 19, Dict = 20, DictElement = 21 } |
| Type identifier. More... | |
Public Member Functions | |
| SerializationInfo () | |
| Default constructor. | |
| SerializationInfo (SerializationContext *context) | |
| Construct with context. | |
| ~SerializationInfo () | |
| Destructor. | |
| SerializationInfo & | addDictElement () |
| Add a dict element. | |
| SerializationInfo & | addDictKey () |
| Add a dict key. | |
| SerializationInfo & | addDictValue () |
| Add a dict value. | |
| SerializationInfo & | addElement () |
| Add a sequence element. | |
| SerializationInfo & | addMember (const std::string &name) |
| Add a struct member. | |
| SerializationInfo & | addMember (const char *name) |
| Add a struct member. | |
| SerializationInfo & | addMember (const char *name, std::size_t len) |
| Add a struct member. | |
| SerializationInfo & | addMember (const LiteralPtr< char > &name) |
| Add a struct member. | |
| Iterator | begin () |
| Returns an iterator to the begin of child elements. | |
| ConstIterator | begin () const |
| Returns an iterator to the begin of child elements. | |
| Iterator | beginFormat (Formatter &formatter) |
| Begin formatting. | |
| void | beginLoad (void *p, const std::type_info &ti) const |
| Begin loading. | |
| bool | beginSave (const void *p) |
| Begin saving. | |
| void | clear () |
| Clears all content. | |
| template<typename T > | |
| bool | compose (T &type) const |
| Returns true if the type could be composed with a surrogate. | |
| SerializationContext * | context () const |
| Returns the used context. | |
| template<typename T > | |
| bool | decompose (const T &type) |
| Returns true if the type could be decomposed with a surrogate. | |
| Iterator | end () |
| Returns an iterator to the end of child elements. | |
| ConstIterator | end () const |
| Returns an iterator to the end of child elements. | |
| void | endFormat (Formatter &formatter) |
| End formatting. | |
| const SerializationInfo * | findMember (const std::string &name) const |
| Find a struct member. More... | |
| const SerializationInfo * | findMember (const char *name) const |
| Find a struct member. More... | |
| SerializationInfo * | findMember (const std::string &name) |
| Find a struct member. More... | |
| SerializationInfo * | findMember (const char *name) |
| Find a struct member. More... | |
| void | finishLoad () const |
| Finish loading. | |
| void | finishSave () |
| Finish saving. | |
| void | format (Formatter &formatter) const |
| Format complete value or all members. | |
| const char * | getBinary (std::size_t &length) const |
| Get value as a binary object. | |
| void | getBool (bool &b) const |
| Get value as a bool. | |
| void | getChar (char c) const |
| Get value as a character. | |
| void | getChar (Pt::Char &c) const |
| Get value as a character. | |
| void | getDouble (double &f) const |
| Get value as a double. | |
| void | getFloat (float &f) const |
| Get value as a float. | |
| void | getInt16 (Pt::int16_t &n) const |
| Get value as a 16-bit integer. | |
| void | getInt32 (Pt::int32_t &i) const |
| Get value as a 32-bit integer. | |
| void | getInt64 (Pt::int64_t &l) const |
| Get value as a 64-bit integer. | |
| void | getInt8 (Pt::int8_t &n) const |
| Get value as a 8-bit integer. | |
| void | getLongDouble (long double &d) const |
| Get value as a long double. | |
| const SerializationInfo & | getMember (const std::string &name) const |
| Get a struct member. | |
| const SerializationInfo & | getMember (const char *name) const |
| Get a struct member. | |
| void | getString (std::string &s, const TextCodec< Pt::Char, char > &codec) const |
| Get value as a string. | |
| void | getString (std::string &s) const |
| Get value as a string. | |
| void | getString (Pt::String &s) const |
| Get value as a string. | |
| void | getUInt16 (Pt::uint16_t &n) const |
| Get value as a 16-bit unsigned integer. | |
| void | getUInt32 (Pt::uint32_t &n) const |
| Get value as a 32-bit unsigned integer. | |
| void | getUInt64 (Pt::uint64_t &n) const |
| Get value as a 64-bit unsigned integer. | |
| void | getUInt8 (Pt::uint8_t &n) const |
| Get value as a 8-bit unsigned integer. | |
| const char * | id () const |
| Returns the reference ID. | |
| bool | isDict () const |
| Returns true if dictionary type. | |
| bool | isReference () const |
| Returns true if reference. | |
| bool | isScalar () const |
| Returns true if scalar type. | |
| bool | isSequence () const |
| Returns true if sequence type. | |
| bool | isStruct () const |
| Returns true if struct type. | |
| bool | isVoid () const |
| Returns true if not set to a type. | |
| template<typename T > | |
| void | loadPointer (T *&fixme, unsigned mid=0) const |
| Load a reference during deserialization. | |
| template<typename T > | |
| void | loadReference (T &fixme, unsigned mid=0) const |
| Load a reference during deserialization. | |
| std::size_t | memberCount () const |
| Returns the number of members. | |
| const char * | name () const |
| Returns the instance name. | |
| SerializationInfo * | parent () |
| Returns the parent node. | |
| const SerializationInfo * | parent () const |
| Returns the parent node. | |
| void | rebind (void *obj) const |
| Rebind to new address. | |
| void | rebindFixup (void *obj) const |
| Rebind to new fixup address. | |
| void | removeMember (const std::string &name) |
| Remove a struct member. | |
| void | removeMember (const char *name) |
| Remove a struct member. | |
| void | setBinary (const char *data, std::size_t length) |
| Set to binary value. | |
| void | setBool (bool b) |
| Set to bool value. | |
| void | setChar (char c) |
| Set to character value. | |
| void | setChar (const Pt::Char &c) |
| Set to character value. | |
| void | setDict () |
| Set to dictionary type. | |
| void | setDouble (double f) |
| Set to double value. | |
| void | setFloat (float f) |
| Set to float value. | |
| void | setId (const std::string &id) |
| Sets the reference ID. | |
| void | setId (const char *id) |
| Sets the reference ID. | |
| void | setId (const char *id, std::size_t len) |
| Sets the reference ID. | |
| void | setInt16 (Pt::int16_t n) |
| Set to 16-bit integer value. | |
| void | setInt32 (Pt::int32_t n) |
| Set to 32-bit integer value. | |
| void | setInt64 (Pt::int64_t l) |
| Set to 64-bit integer value. | |
| void | setInt8 (Pt::int8_t n) |
| Set to 8-bit integer value. | |
| void | setLongDouble (long double d) |
| Set to long double value. | |
| void | setName (const std::string &name) |
| Sets the instance name. | |
| void | setName (const char *name) |
| Sets the instance name. | |
| void | setName (const char *type, std::size_t len) |
| Sets the instance name. | |
| void | setName (const LiteralPtr< char > &type) |
| Sets the instance name. | |
| void | setReference (const void *ref) |
| Set to reference for which to create an ID. | |
| void | setReference (const std::string &id) |
| Set to reference with ID to fixup. | |
| void | setReference (const char *id, std::size_t idlen) |
| Set to reference with ID to fixup. | |
| void | setSequence () |
| Set to sequence type. | |
| void | setString (const char *s) |
| Set to string value. | |
| void | setString (const char *s, std::size_t len, const TextCodec< Pt::Char, char > &codec) |
| Set to string value. | |
| void | setString (const std::string &s) |
| Set to string value. | |
| void | setString (const std::string &str, const TextCodec< Pt::Char, char > &codec) |
| Set to string value. | |
| void | setString (const Pt::String &s) |
| Set to string value. | |
| void | setString (const Pt::Char *s, std::size_t len) |
| Set to string value. | |
| void | setStruct () |
| Set to struct type. | |
| void | setTypeName (const std::string &type) |
| Sets the type name. | |
| void | setTypeName (const char *type) |
| Sets the type name. | |
| void | setTypeName (const char *type, std::size_t len) |
| Sets the type name. | |
| void | setTypeName (const LiteralPtr< char > &type) |
| Sets the type name. | |
| void | setUInt16 (Pt::uint16_t n) |
| Set to 16-bit unsigned integer value. | |
| void | setUInt32 (Pt::uint32_t n) |
| Set to 32-bit unsigned integer value. | |
| void | setUInt64 (Pt::uint64_t n) |
| Set to 64-bit unsigned integer value. | |
| void | setUInt8 (Pt::uint8_t n) |
| Set to 8-bit unsigned integer value. | |
| void | setVoid () |
| Set to void type. | |
| Type | type () const |
| Returns the type identifier. | |
| const char * | typeName () const |
| Returns the type name. | |
Related Functions | |
| template<typename T > | |
| void | operator<<= (SerializationInfo &si, const T *ptr) |
| Serializes a pointer reference. | |
| void | operator<<= (SerializationInfo &si, bool n) |
| Serializes a bool. | |
| void | operator<<= (SerializationInfo &si, Pt::int8_t n) |
| Serializes a 8-bit integer. | |
| void | operator<<= (SerializationInfo &si, Pt::int16_t n) |
| Serializes a 16-bit integer. | |
| void | operator<<= (SerializationInfo &si, Pt::int32_t n) |
| Serializes a 32-bit integer. | |
| void | operator<<= (SerializationInfo &si, Pt::int64_t n) |
| Serializes a 64-bit integer. | |
| void | operator<<= (SerializationInfo &si, Pt::uint8_t n) |
| Serializes a 8-bit unsigned integer. | |
| void | operator<<= (SerializationInfo &si, Pt::uint16_t n) |
| Serializes a 16-bit unsigned integer. | |
| void | operator<<= (SerializationInfo &si, Pt::uint32_t n) |
| Serializes a 32-bit unsigned integer. | |
| void | operator<<= (SerializationInfo &si, Pt::uint64_t n) |
| Serializes a 64-bit unsigned integer. | |
| void | operator<<= (SerializationInfo &si, float n) |
| Serializes a float value. | |
| void | operator<<= (SerializationInfo &si, double n) |
| Serializes a double value. | |
| void | operator<<= (SerializationInfo &si, long double n) |
| Serializes a long double value. | |
| void | operator<<= (SerializationInfo &si, char ch) |
| Serializes a character value. | |
| void | operator<<= (SerializationInfo &si, const char *str) |
| Serializes a string. | |
| void | operator<<= (SerializationInfo &si, const std::string &str) |
| Serializes a std::string. | |
| void | operator<<= (SerializationInfo &si, const Pt::String &str) |
| Serializes a string. | |
| template<typename T , typename A > | |
| void | operator<<= (SerializationInfo &si, const std::vector< T, A > &vec) |
| Serializes a std::vector. | |
| template<typename T , typename A > | |
| void | operator<<= (SerializationInfo &si, const std::list< T, A > &list) |
| Serializes a std::list. | |
| template<typename T , typename A > | |
| void | operator<<= (SerializationInfo &si, const std::deque< T, A > &deque) |
| Serializes a std::deque. | |
| template<typename T , typename C , typename A > | |
| void | operator<<= (SerializationInfo &si, const std::set< T, C, A > &set) |
| Serializes a std::set. | |
| template<typename T , typename C , typename A > | |
| void | operator<<= (SerializationInfo &si, const std::multiset< T, C, A > &multiset) |
| Serializes a std::multiset. | |
| template<typename K , typename V , typename P , typename A > | |
| void | operator<<= (SerializationInfo &si, const std::map< K, V, P, A > &map) |
| Serializes a std::map. | |
| template<typename T , typename C , typename P , typename A > | |
| void | operator<<= (SerializationInfo &si, const std::multimap< T, C, P, A > &multimap) |
| Serializes a std::multimap. | |
| template<typename T > | |
| void | operator>>= (const SerializationInfo &si, T *&ptr) |
| Deserializes a pointer reference. | |
| void | operator>>= (const SerializationInfo &si, bool &n) |
| Deserializes a bool. | |
| void | operator>>= (const SerializationInfo &si, Pt::int8_t &n) |
| Deserializes an 8-bit integer. | |
| void | operator>>= (const SerializationInfo &si, Pt::int16_t &n) |
| Deserializes a 16-bit integer. | |
| void | operator>>= (const SerializationInfo &si, Pt::int32_t &n) |
| Deserializes a 32-bit integer. | |
| void | operator>>= (const SerializationInfo &si, Pt::int64_t &n) |
| Deserializes a 64-bit integer. | |
| void | operator>>= (const SerializationInfo &si, Pt::uint8_t &n) |
| Deserializes a 8-bit unsigned integer. | |
| void | operator>>= (const SerializationInfo &si, Pt::uint16_t &n) |
| Deserializes a 16-bit unsigned integer. | |
| void | operator>>= (const SerializationInfo &si, Pt::uint32_t &n) |
| Deserializes a 32-bit unsigned integer. | |
| void | operator>>= (const SerializationInfo &si, Pt::uint64_t &n) |
| Deserializes a 64-bit unsigned integer. | |
| void | operator>>= (const SerializationInfo &si, float &n) |
| Deserializes a float value. | |
| void | operator>>= (const SerializationInfo &si, double &n) |
| Deserializes a double value. | |
| void | operator>>= (const SerializationInfo &si, long double &n) |
| Deserializes a long double value. | |
| void | operator>>= (const SerializationInfo &si, char &ch) |
| Deserializes a character value. | |
| void | operator>>= (const SerializationInfo &si, std::string &str) |
| Deserializes a std::string. | |
| void | operator>>= (const SerializationInfo &si, Pt::String &str) |
| Deserializes a string. | |
| template<typename T , typename A > | |
| void | operator>>= (const SerializationInfo &si, std::vector< T, A > &vec) |
| Deserializes a std::vector. | |
| template<typename T , typename A > | |
| void | operator>>= (const SerializationInfo &si, std::list< T, A > &list) |
| Deserializes a std::list. | |
| template<typename T , typename A > | |
| void | operator>>= (const SerializationInfo &si, std::deque< T, A > &deque) |
| Deserializes a std::deque. | |
| template<typename T , typename C , typename A > | |
| void | operator>>= (const SerializationInfo &si, std::set< T, C, A > &set) |
| Deserializes a std::set. More... | |
| template<typename T , typename C , typename A > | |
| void | operator>>= (const SerializationInfo &si, std::multiset< T, C, A > &multiset) |
| Deserializes a std::multiset. More... | |
| template<typename K , typename V , typename P , typename A > | |
| void | operator>>= (const SerializationInfo &si, std::map< K, V, P, A > &map) |
| Deserializes a std::map. | |
| template<typename K , typename V , typename P , typename A > | |
| void | operator>>= (const SerializationInfo &si, std::multimap< K, V, P, A > &multimap) |
| Deserializes a std::multimap. | |
| enum Type |
| Enumerator | |
|---|---|
| Void |
Void. |
| Context |
Contextual. |
| Reference |
Reference. |
| Boolean |
Boolean. |
| Char |
Char. |
| Str |
Str. |
| Int8 |
8-bit integer |
| Int16 |
16-bit integer |
| Int32 |
32-bit integer |
| Int64 |
64-bit integer |
| UInt8 |
8-bit unsigned integer |
| UInt16 |
16-bit unsigned integer |
| UInt32 |
32-bit unsigned integer |
| UInt64 |
64-bit unsigned integer |
| Float |
Floating point. |
| Double |
Double floating point. |
| LongDouble |
Long double floating point. |
| Binary |
Binary. |
| Struct |
Structural compound type. |
| Sequence |
Sequence compound type. |
| Dict |
Dictionary compound type. |
| DictElement |
Dictionary element. |
| const SerializationInfo* findMember | ( | const std::string & | name | ) | const |
This method returns the data for a member with the name name. or null if it is not present.
| const SerializationInfo* findMember | ( | const char * | name | ) | const |
This method returns the data for a member with the name name. or null if it is not present.
| SerializationInfo* findMember | ( | const std::string & | name | ) |
This method returns the data for a member with the name name. or null if it is not present.
| SerializationInfo* findMember | ( | const char * | name | ) |
This method returns the data for a member with the name name. or null if it is not present.
|
related |
Deserialization of references to or from set elements is not reliably possible, due to some of std::set's constraints. However you may overload this operator for your type.
|
related |
Deserialization of references to or from set elements is not reliably possible, due to some of std::set's constraints. However you may overload this operator for your type.