21 #ifndef GF_SERIALIZATION_H    22 #define GF_SERIALIZATION_H    27 #include "BinaryFile.h"    28 #include "Portability.h"    31 #ifndef DOXYGEN_SHOULD_SKIP_THIS    64     void writeBoolean(
bool data);
    69     void writeSigned(int64_t data);
    74     void writeUnsigned(uint64_t data);
    79     void writeFloat(
float data);
    84     void writeDouble(
double data);
    89     void writeString(
const char *data, uint32_t size);
    94     void writeBinary(
const uint8_t *data, uint32_t size);
    99     void writeArrayHeader(uint32_t size);
   104     void writeMapHeader(uint32_t size);
   109     void writeExtension(int8_t type, 
const uint8_t *data, uint32_t size);
   112     void writeBigEndian64(uint64_t data);
   113     void writeBigEndian32(uint32_t data);
   114     void writeBigEndian16(uint16_t data);
   151     bool readBoolean(
bool& data);
   158     bool readSigned(int64_t& data);
   165     bool readUnsigned(uint64_t& data);
   172     bool readFloat(
float& data);
   179     bool readDouble(
double& data);
   186     bool readStringHeader(uint32_t& size);
   193     bool readString(
char *data, uint32_t size);
   200     bool readBinaryHeader(uint32_t& size);
   207     bool readBinary(uint8_t *data, uint32_t size);
   214     bool readArrayHeader(uint32_t& size);
   221     bool readMapHeader(uint32_t& size);
   228     bool readExtensionHeader(int8_t& type, uint32_t& size);
   235     bool readExtension(uint8_t *data, uint32_t size);
   246     bool readRawInt8(uint64_t& raw);
   247     bool readRawInt16(uint64_t& raw);
   248     bool readRawInt32(uint64_t& raw);
   249     bool readRawInt64(uint64_t& raw);
   251     bool readSize8(uint32_t& size);
   252     bool readSize16(uint32_t& size);
   253     bool readSize32(uint32_t& size);
   257     bool readDataObjectString(
DataObject& 
object);
   258     bool readDataObjectBinary(
DataObject& 
object);
   259     bool readDataObjectExtension(
DataObject& 
object);
   262     bool readBigEndian64(uint64_t& data);
   263     bool readBigEndian32(uint32_t& data);
   264     bool readBigEndian16(uint16_t& data);
   267     uint8_t getByte() 
const;
   277 #ifndef DOXYGEN_SHOULD_SKIP_THIS   282 #endif // GF_SERIALIZATION_H A deserializer from a binary file. 
Definition: Serialization.h:130
 
A serializer to a binary file. 
Definition: Serialization.h:47
 
The namespace for gf classes. 
Definition: Action.h:34
 
A binary file that can be read or written. 
Definition: BinaryFile.h:41
 
boost::filesystem::path Path
A path in the filesystem. 
Definition: Path.h:41
 
A data object. 
Definition: DataObject.h:200