![]() |
Pixel Dust Game Engine
v0.9.5
|
Public Member Functions | |
virtual uint64 | deserialize_8u () |
Deserialize an 8 byte (64 bit) value. | |
virtual uint32 | deserialize_4u () |
Deserialize a 4 byte (32 bit) value. | |
virtual uint32 | deserialize_3u () |
Deserialize a 3 byte (24 bit) value. | |
virtual uint16 | deserialize_2u () |
Deserialize a 2 byte (16 bit) value. | |
virtual uint8 | deserialize_1u () |
Deserialize an 1 byte (8 bit) value. | |
virtual bool | deserialize_bool () |
Deserialize a boolean (1 bit) value. | |
virtual uint32 | deserialize_uint () |
Deserialize an unsigned value. | |
virtual Color | deserialize_color () MAY_THROW(out_of_data) |
Deserialize a pdg::Color value. | |
virtual Offset | deserialize_offset () MAY_THROW(out_of_data) |
Deserialize a pdg::Offset value. | |
virtual Rect | deserialize_rect () MAY_THROW(out_of_data) |
Deserialize a pdg::Rect. | |
virtual RotatedRect | deserialize_rotr () MAY_THROW(out_of_data) |
Deserialize a pdg::RotatedRect. | |
virtual Quad | deserialize_quad () MAY_THROW(out_of_data) |
Deserialize a pdg::Quad. | |
virtual uint32 | deserialize_str (char *outStr, uint32 strMaxLen) |
Deserialize a string value. | |
virtual uint32 | deserialize_strGetLen () |
get length of a string value, as if it were deserialized | |
virtual uint32 | deserialize_mem (void *outMem, uint32 memMaxLen) |
Deserialize an arbitrary block of memory. | |
virtual uint32 | deserialize_memGetLen () |
Deserialize a string value. | |
virtual ISerializable * | deserialize_obj () |
Deserialize a serializable object. | |
void | setDataPtr (void *ptr, uint32 ptrSize) |
Deserializer () | |
Deserializer (void *ptr, uint32 ptrSize) | |
virtual | ~Deserializer () |
![]() | |
int64 | deserialize_8 () MAY_THROW(out_of_data) |
int32 | deserialize_4 () MAY_THROW(out_of_data) |
int16 | deserialize_2 () MAY_THROW(out_of_data) |
int8 | deserialize_1 () MAY_THROW(out_of_data) |
float | deserialize_f () MAY_THROW(out_of_data) |
Serialize a floating point value into a buffer. | |
double | deserialize_d () MAY_THROW(out_of_data) |
Serialize a double precision floating point value into a buffer. | |
Point | deserialize_point () MAY_THROW(out_of_data) |
Deserialize a pdg::Point value. | |
Vector | deserialize_vector () MAY_THROW(out_of_data) |
Deserialize a pdg::Vector value. | |
void | deserialize_string (std::string &outStr) MAY_THROW((out_of_data |
Deserialize a string value into a std::string. | |
template<typename T > | |
T * | deserialize_ref () MAY_THROW((out_of_data |
Deserialize a reference to a non-serializable object. | |
Protected Member Functions | |
virtual char * | statusDump (int hiliteBytes=0) |
virtual void * | deserialize_ptr () |
Protected Attributes | |
uint8 * | mDataPtr |
uint8 * | mDataEnd |
uint8 * | p |
uint32 | mDataSize |
uint8 | mLastBoolByte |
int | mBoolBitOffset |
bool | mUsingTags |
std::vector< ISerializable * > | mDeserializedInstances |
![]() | |
virtual void | bad_tag |
virtual void | sync_error |
virtual void | unknown_object = 0 |
Additional Inherited Members | |
![]() | |
typedef ISerializable *(* | CreateSerializableFunc )() |
![]() | |
template<class T > | |
static void | registerClass () |
Register a class that is derived from Serializable. | |
static void | registerClass (uint32 classTag, CreateSerializableFunc classNewFunc) |
Register a class that is derived from ISerializable. | |
static void | registerObject (void *obj, uint32 uniqueId) |
Register object that is not serializable for use with |de|serialize_ref() | |
![]() | |
virtual uint32 | bad_tag = 0 |
void | bad_tag |
virtual ISerializable | bad_tag |
virtual ISerializable | sync_error |
virtual ISerializable | unknown_object = 0 |
T | bad_tag |
T | sync_error |
T | unknown_object |
![]() | |
static int | s_TraceDepth |
A class to serialize data into memory
Deserializer | ( | ) |
Deserializer | ( | void * | ptr, |
uint32 | ptrSize | ||
) |
|
virtual |
|
virtual |
Deserialize an 1 byte (8 bit) value.
internal pointer is advanced 1 btye
Implements IDeserializer.
|
virtual |
Deserialize a 2 byte (16 bit) value.
internal pointer is advanced 2 btyes
Implements IDeserializer.
|
virtual |
Deserialize a 3 byte (24 bit) value.
internal pointer is advanced 3 btyes
Implements IDeserializer.
|
virtual |
Deserialize a 4 byte (32 bit) value.
internal pointer is advanced 4 btyes
Implements IDeserializer.
|
virtual |
Deserialize an 8 byte (64 bit) value.
internal pointer is advanced 8 btyes
Implements IDeserializer.
|
virtual |
Deserialize a boolean (1 bit) value.
internal pointer gets advanced by 1 or 0 bytes, depending on bytes required to store the value
Implements IDeserializer.
|
virtual |
Deserialize a pdg::Color value.
internal pointer is advanced by ? bytes, depending on bytes required to store value
Implements IDeserializer.
|
virtual |
Deserialize an arbitrary block of memory.
p | a reference to a buffer pointer; pointer gets advanced past mem block to start of next entity in buffer |
outMem,a | buffer to hold the resulting block of memory |
memMaxLen,the | max length of the output block, that the buffer can accomodate If the serialized string is longer than outStrMaxLen, it will be truncated and the buffer pointer p will still be advanced past the string to the start of the next entity in the buffer. |
Reimplemented from IDeserializer.
|
virtual |
Deserialize a string value.
internal pointer is NOT advanced. Use this to pre-flight allocation for blocks of memory
Reimplemented from IDeserializer.
|
virtual |
Deserialize a serializable object.
internal pointer gets advanced past object to start of next entity in buffer
Reimplemented from IDeserializer.
|
virtual |
Deserialize a pdg::Offset value.
internal pointer is advanced by 1 to 9 bytes, depending on bytes required to store value
Implements IDeserializer.
|
protectedvirtual |
Reimplemented from IDeserializer.
|
virtual |
Deserialize a pdg::Quad.
internal pointer is advanced by 1, 3 or 5 bytes, depending on bytes required to store value
Implements IDeserializer.
|
virtual |
Deserialize a pdg::Rect.
internal pointer is advanced by ? bytes, depending on bytes required to store value
Implements IDeserializer.
|
virtual |
Deserialize a pdg::RotatedRect.
internal pointer is advanced by ? bytes, depending on bytes required to store value
Implements IDeserializer.
|
virtual |
Deserialize a string value.
outStr,a | buffer to hold the resulting string |
strMaxLen,the | max length of the output string, including the NUL terminator, that the buffer can accomodate If the serialized string is longer than outStrMaxLen, it will be truncated and the internal pointer p will still be advanced past the string to the start of the next entity in the internal buffer. |
Reimplemented from IDeserializer.
|
virtual |
get length of a string value, as if it were deserialized
internal pointer is NOT advanced. Use this to pre-flight allocation for longer strings
Reimplemented from IDeserializer.
|
virtual |
Deserialize an unsigned value.
internal pointer is advanced by 1, 3 or 5 bytes, depending on bytes required to store value
Implements IDeserializer.
void setDataPtr | ( | void * | ptr, |
uint32 | ptrSize | ||
) |
|
protectedvirtual |
Implements IDeserializer.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |