![]() |
Gamedev Framework (gf) 1.2.0
A C++17 framework for 2D games
|
A serializer to a binary file. More...
#include <gf/Serialization.h>
Public Member Functions | |
Serializer (OutputStream &stream, uint16_t version=0) | |
Constructor. More... | |
uint16_t | getVersion () const |
Get the version of the current archive format. More... | |
void | writeBoolean (bool data) |
Write a boolean object. More... | |
void | writeChar (char data) |
Write a char. More... | |
void | writeSigned8 (int8_t data) |
Write a signed integer object. More... | |
void | writeSigned16 (int16_t data) |
Write a signed integer object. More... | |
void | writeSigned32 (int32_t data) |
Write a signed integer object. More... | |
void | writeSigned64 (int64_t data) |
Write a signed integer object. More... | |
void | writeUnsigned8 (uint8_t data) |
Write an unsigned object. More... | |
void | writeUnsigned16 (uint16_t data) |
Write an unsigned object. More... | |
void | writeUnsigned32 (uint32_t data) |
Write an unsigned object. More... | |
void | writeUnsigned64 (uint64_t data) |
Write an unsigned object. More... | |
void | writeFloat (float data) |
Write a single precison float object. More... | |
void | writeDouble (double data) |
Write a double precison float object. More... | |
void | writeString (const char *data, std::size_t size) |
Write a string object. More... | |
void | writeSizeHeader (std::size_t size) |
Write a size header. More... | |
Related Functions | |
(Note that these are not member functions.) | |
GF_CORE_API Serializer & | operator| (Serializer &ar, const Path &path) |
Serialize a path. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, const PointSequence &sequence) |
Serialize a sequence. More... | |
Serializer & | operator| (Serializer &ar, const Polygon &polygon) |
Serialize a polygon. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, const Polyline &polyline) |
Serialize a polyline. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, bool data) |
Serialize a boolean object. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, char data) |
Serialize a char object. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, uint8_t data) |
Serialize an unsigned integer object. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, uint16_t data) |
Serialize an unsigned integer object. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, uint32_t data) |
Serialize an unsigned integer object. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, uint64_t data) |
Serialize an unsigned integer object. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, int8_t data) |
Serialize a signed integer object. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, int16_t data) |
Serialize a signed integer object. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, int32_t data) |
Serialize a signed integer object. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, int64_t data) |
Serialize a signed integer object. More... | |
template<typename T , typename E = typename std::enable_if<std::is_enum<T>::value, T>::type> | |
Serializer & | operator| (Serializer &ar, T data) |
Serialize an enum object. More... | |
template<typename E > | |
Serializer & | operator| (Serializer &ar, Flags< E > data) |
Serialize flags. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, float data) |
Serialize a single precision float object. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, double data) |
Serialize a double precision float object. More... | |
Serializer & | operator| (Serializer &ar, const char *str)=delete |
Do not serialize a string object via a pointer. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, const std::string &str) |
Serialize a string object. More... | |
template<typename T , std::size_t N> | |
Serializer & | operator| (Serializer &ar, const T(&array)[N]) |
Serialize an array object. More... | |
template<typename T > | |
Serializer & | operator| (Serializer &ar, const std::vector< T > &array) |
Serialize an array object. More... | |
template<typename T , std::size_t N> | |
Serializer & | operator| (Serializer &ar, const std::array< T, N > &array) |
Serialize an array object. More... | |
template<typename T > | |
Serializer & | operator| (Serializer &ar, const std::set< T > &set) |
Serialize a set object. More... | |
template<typename T > | |
Serializer & | operator| (Serializer &ar, const std::unordered_set< T > &set) |
Serialize a set object. More... | |
template<typename K , typename V > | |
Serializer & | operator| (Serializer &ar, const std::map< K, V > &map) |
Serialize a map object. More... | |
template<typename K , typename V > | |
Serializer & | operator| (Serializer &ar, const std::unordered_map< K, V > &map) |
Serialize a map object. More... | |
GF_CORE_API Serializer & | operator| (Serializer &ar, Time time) |
Serialize a time. More... | |
A serializer to a binary file.
You should not use the methods in this class. Prefer using and overloading operator |
.
gf::Serializer::Serializer | ( | OutputStream & | stream, |
uint16_t | version = 0 |
||
) |
Constructor.
stream | The output stream |
version | The version of the archive format |
|
inline |
Get the version of the current archive format.
void gf::Serializer::writeBoolean | ( | bool | data | ) |
Write a boolean object.
void gf::Serializer::writeChar | ( | char | data | ) |
Write a char.
void gf::Serializer::writeDouble | ( | double | data | ) |
Write a double precison float object.
void gf::Serializer::writeFloat | ( | float | data | ) |
Write a single precison float object.
void gf::Serializer::writeSigned16 | ( | int16_t | data | ) |
Write a signed integer object.
void gf::Serializer::writeSigned32 | ( | int32_t | data | ) |
Write a signed integer object.
void gf::Serializer::writeSigned64 | ( | int64_t | data | ) |
Write a signed integer object.
void gf::Serializer::writeSigned8 | ( | int8_t | data | ) |
Write a signed integer object.
void gf::Serializer::writeSizeHeader | ( | std::size_t | size | ) |
Write a size header.
void gf::Serializer::writeString | ( | const char * | data, |
std::size_t | size | ||
) |
Write a string object.
void gf::Serializer::writeUnsigned16 | ( | uint16_t | data | ) |
Write an unsigned object.
void gf::Serializer::writeUnsigned32 | ( | uint32_t | data | ) |
Write an unsigned object.
void gf::Serializer::writeUnsigned64 | ( | uint64_t | data | ) |
Write an unsigned object.
void gf::Serializer::writeUnsigned8 | ( | uint8_t | data | ) |
Write an unsigned object.
|
related |
Serialize a boolean object.
|
related |
Serialize a char object.
|
related |
Do not serialize a string object via a pointer.
|
related |
Serialize a path.
|
related |
Serialize a sequence.
|
related |
Serialize a polygon.
|
related |
Serialize a polyline.
|
related |
Serialize an array object.
|
related |
Serialize a map object.
|
related |
Serialize a set object.
|
related |
Serialize a string object.
|
related |
Serialize a map object.
|
related |
Serialize a set object.
|
related |
Serialize an array object.
|
related |
Serialize an array object.
|
related |
Serialize a double precision float object.
|
related |
Serialize flags.
|
related |
Serialize a single precision float object.
|
related |
Serialize a signed integer object.
|
related |
Serialize a signed integer object.
|
related |
Serialize a signed integer object.
|
related |
Serialize a signed integer object.
|
related |
Serialize an enum object.
|
related |
Serialize a time.
|
related |
Serialize an unsigned integer object.
|
related |
Serialize an unsigned integer object.
|
related |
Serialize an unsigned integer object.
|
related |
Serialize an unsigned integer object.