CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::BinarySerializer Class Reference

A Serializer that writes the serialized content as a binary encoded CBOR object stream. More...

#include <CeresEngine/Serialization/BinarySerialization.hpp>

Inheritance diagram for CeresEngine::BinarySerializer:
CeresEngine::Serializer CeresEngine::ISerializer

Public Member Functions

 BinarySerializer (OutputStream outputStream, const SerializationContext &context=SerializationContext::getDefault())
 Creates a new binary serializer backed by an output stream.
 
 ~BinarySerializer () noexcept override
 Destroys the binary serializer.
 
void beginObject (const SerializedObjectMetadata &metadata) final
 
void endObject () final
 
void beginObjectProperty (const SerializedPropertyMetadata &metadata) final
 
void endObjectProperty () final
 
void encodeObjectReference (UInt32 referenceID) final
 
void beginCustomObject (const SerializedCustomObjectMetadata &metadata) final
 
void endCustomObject () final
 
void beginArray (const SerializedArrayMetadata &metadata) final
 
void endArray () final
 
void beginMap (const SerializedMapMetadata &metadata) final
 
void endMap () final
 
void encodeString (StringView string) final
 
void encodeBinary (MemoryView< const Byte > data) final
 
void encodeFloat (float value) final
 
void encodeDouble (double value) final
 
void encodeUInt8 (UInt8 value) final
 
void encodeUInt16 (UInt16 value) final
 
void encodeUInt32 (UInt32 value) final
 
void encodeUInt64 (UInt64 value) final
 
void encodeInt8 (Int8 value) final
 
void encodeInt16 (Int16 value) final
 
void encodeInt32 (Int32 value) final
 
void encodeInt64 (Int64 value) final
 
void encodeBoolean (bool value) final
 
void encodeUndefined () final
 
void encodeNull () final
 
- Public Member Functions inherited from CeresEngine::Serializer
 Serializer (const SerializationContext &context=SerializationContext::getDefault())
 Creates a new serializer instance.
 
 ~Serializer () noexcept override
 Destroys the serializer.
 
void serialize (const Box &value) final
 Serializes the given value into a stream of bytes written to dataStream. ISerializer::serialize
 
virtual void resetState ()
 Resets the deserializer state.
 
- Public Member Functions inherited from CeresEngine::ISerializer
virtual ~ISerializer () noexcept=default
 

Private Attributes

CBOR::Encoder mEncoder
 The CBOR encoder for the binary serializer.
 

Additional Inherited Members

- Public Attributes inherited from CeresEngine::Serializer
const SerializationContextcontext
 A shared context that contains a context for the deserializer.
 
SerializerState state
 An object that stores context for the serializer.
 

Detailed Description

A Serializer that writes the serialized content as a binary encoded CBOR object stream.

Constructor & Destructor Documentation

◆ BinarySerializer()

CeresEngine::BinarySerializer::BinarySerializer ( OutputStream  outputStream,
const SerializationContext context = SerializationContext::getDefault() 
)
explicit

Creates a new binary serializer backed by an output stream.

Parameters
outputStreamThe output stream to write serialized objects to.
contextA context for the serializer to operate on.

◆ ~BinarySerializer()

CeresEngine::BinarySerializer::~BinarySerializer ( )
overridenoexcept

Destroys the binary serializer.

Member Function Documentation

◆ beginArray()

void CeresEngine::BinarySerializer::beginArray ( const SerializedArrayMetadata metadata)
finalvirtual

◆ beginCustomObject()

void CeresEngine::BinarySerializer::beginCustomObject ( const SerializedCustomObjectMetadata metadata)
finalvirtual

◆ beginMap()

void CeresEngine::BinarySerializer::beginMap ( const SerializedMapMetadata metadata)
finalvirtual

◆ beginObject()

void CeresEngine::BinarySerializer::beginObject ( const SerializedObjectMetadata metadata)
finalvirtual

◆ beginObjectProperty()

void CeresEngine::BinarySerializer::beginObjectProperty ( const SerializedPropertyMetadata metadata)
finalvirtual

◆ encodeBinary()

void CeresEngine::BinarySerializer::encodeBinary ( MemoryView< const Byte data)
finalvirtual

◆ encodeBoolean()

void CeresEngine::BinarySerializer::encodeBoolean ( bool  value)
finalvirtual

◆ encodeDouble()

void CeresEngine::BinarySerializer::encodeDouble ( double  value)
finalvirtual

◆ encodeFloat()

void CeresEngine::BinarySerializer::encodeFloat ( float  value)
finalvirtual

◆ encodeInt16()

void CeresEngine::BinarySerializer::encodeInt16 ( Int16  value)
finalvirtual

◆ encodeInt32()

void CeresEngine::BinarySerializer::encodeInt32 ( Int32  value)
finalvirtual

◆ encodeInt64()

void CeresEngine::BinarySerializer::encodeInt64 ( Int64  value)
finalvirtual

◆ encodeInt8()

void CeresEngine::BinarySerializer::encodeInt8 ( Int8  value)
finalvirtual

◆ encodeNull()

void CeresEngine::BinarySerializer::encodeNull ( )
finalvirtual

◆ encodeObjectReference()

void CeresEngine::BinarySerializer::encodeObjectReference ( UInt32  referenceID)
finalvirtual

◆ encodeString()

void CeresEngine::BinarySerializer::encodeString ( StringView  string)
finalvirtual

◆ encodeUInt16()

void CeresEngine::BinarySerializer::encodeUInt16 ( UInt16  value)
finalvirtual

◆ encodeUInt32()

void CeresEngine::BinarySerializer::encodeUInt32 ( UInt32  value)
finalvirtual

◆ encodeUInt64()

void CeresEngine::BinarySerializer::encodeUInt64 ( UInt64  value)
finalvirtual

◆ encodeUInt8()

void CeresEngine::BinarySerializer::encodeUInt8 ( UInt8  value)
finalvirtual

◆ encodeUndefined()

void CeresEngine::BinarySerializer::encodeUndefined ( )
finalvirtual

◆ endArray()

void CeresEngine::BinarySerializer::endArray ( )
finalvirtual

◆ endCustomObject()

void CeresEngine::BinarySerializer::endCustomObject ( )
finalvirtual

◆ endMap()

void CeresEngine::BinarySerializer::endMap ( )
finalvirtual

◆ endObject()

void CeresEngine::BinarySerializer::endObject ( )
finalvirtual

◆ endObjectProperty()

void CeresEngine::BinarySerializer::endObjectProperty ( )
finalvirtual

Member Data Documentation

◆ mEncoder

CBOR::Encoder CeresEngine::BinarySerializer::mEncoder
private

The CBOR encoder for the binary serializer.


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