Open 3D Engine AzCore API Reference 23.10.0
O3DE is an open-source, fully-featured, high-fidelity, modular 3D engine for building games and simulations, available to every industry.
AZ::Serialize::IDataSerializer Class Referenceabstract

#include <SerializeContext.h>

Inherited by AZ::Internal::AZStdString< AZStd::basic_string >, AZ::AssetSerializer, AZ::FloatBasedContainerSerializer< T, CreateFromFloats, StoreToFloat, GetEpsilon, NumFloats >, AZ::Internal::AZBinaryData, AZ::Internal::AZStdString< T >, AZ::NameSerializer, AZ::SerializeContextEnumInternal::EnumSerializer< EnumType >, and AZ::UuidSerializer.

Public Member Functions

virtual size_t Save (const void *classPtr, IO::GenericStream &stream, bool isDataBigEndian=false)=0
 Store the class data into a stream.
 
virtual bool Load (void *classPtr, IO::GenericStream &stream, unsigned int version, bool isDataBigEndian=false)=0
 Load the class data from a stream.
 
virtual size_t DataToText (IO::GenericStream &in, IO::GenericStream &out, bool isDataBigEndian)=0
 Convert binary data to text.
 
virtual size_t TextToData (const char *text, unsigned int textVersion, IO::GenericStream &stream, bool isDataBigEndian=false)=0
 Convert text data to binary, to support loading old version formats. We must respect text version if the text->binary format has changed!
 
virtual bool CompareValueData (const void *lhs, const void *rhs)=0
 
virtual void PostClone (void *)
 Optional post processing of the cloned data to deal with members that are not serialize-reflected.
 

Static Public Member Functions

static IDataSerializerDeleter CreateDefaultDeleteDeleter ()
 
static IDataSerializerDeleter CreateNoDeleteDeleter ()
 

Detailed Description

Interface for data serialization. Should be implemented for lowest level of data. Once this implementation is detected, the class will not be drilled down. We will assume this implementation covers the full class.

Member Function Documentation

◆ CompareValueData()

virtual bool AZ::Serialize::IDataSerializer::CompareValueData ( const void *  lhs,
const void *  rhs 
)
pure virtual

Compares two instances of the type.

Returns
true if they match. Note: Input pointers are assumed to point to valid instances of the class.

Implemented in AZ::AssetSerializer, and AZ::NameSerializer.

◆ DataToText()

virtual size_t AZ::Serialize::IDataSerializer::DataToText ( IO::GenericStream in,
IO::GenericStream out,
bool  isDataBigEndian 
)
pure virtual

Convert binary data to text.

Implemented in AZ::AssetSerializer, and AZ::NameSerializer.

◆ Load()

virtual bool AZ::Serialize::IDataSerializer::Load ( void *  classPtr,
IO::GenericStream stream,
unsigned int  version,
bool  isDataBigEndian = false 
)
pure virtual

Load the class data from a stream.

Implemented in AZ::AssetSerializer, and AZ::NameSerializer.

◆ Save()

virtual size_t AZ::Serialize::IDataSerializer::Save ( const void *  classPtr,
IO::GenericStream stream,
bool  isDataBigEndian = false 
)
pure virtual

Store the class data into a stream.

Implemented in AZ::AssetSerializer, and AZ::NameSerializer.

◆ TextToData()

virtual size_t AZ::Serialize::IDataSerializer::TextToData ( const char *  text,
unsigned int  textVersion,
IO::GenericStream stream,
bool  isDataBigEndian = false 
)
pure virtual

Convert text data to binary, to support loading old version formats. We must respect text version if the text->binary format has changed!

Implemented in AZ::AssetSerializer, and AZ::NameSerializer.


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