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::DataElement Struct Reference

#include <SerializeContext.h>

Public Types

enum  DataType { DT_TEXT , DT_BINARY , DT_BINARY_BE }
 

Public Member Functions

 DataElement (const DataElement &rhs)
 
DataElementoperator= (const DataElement &rhs)
 
 DataElement (DataElement &&rhs)
 
DataElementoperator= (DataElement &&rhs)
 

Public Attributes

const char * m_name
 Name of the parameter, they must be unique with in the scope of the class.
 
u32 m_nameCrc
 CRC32 of name.
 
DataType m_dataType
 What type of data, if we have any.
 
Uuid m_id = AZ::Uuid::CreateNull()
 Reference ID, the meaning can change depending on what are we referencing.
 
unsigned int m_version
 Version of data in the stream. This can be the current version or older. Newer version will be handled internally.
 
size_t m_dataSize
 Size of the data pointed by "data" in bytes.
 
AZStd::vector< char > m_buffer
 Local buffer used by the ByteContainerStream when the DataElement needs to own the data.
 
IO::ByteContainerStream< AZStd::vector< char > > m_byteStream
 Stream used when the DataElement needs to own the data.
 
IO::GenericStreamm_stream
 Pointer to the stream that holds the element's data, it may point to m_byteStream.
 

Detailed Description

Represents an element in the tree of serialization data. Each element contains metadata about itself and (possibly) a data value. An element representing an int will have a data value, but an element representing a vector or class will not (their contents are stored in sub-elements).

Member Enumeration Documentation

◆ DataType

Enumerator
DT_TEXT 

data points to a string representation of the data

DT_BINARY 

data points to a binary representation of the data in native endian

DT_BINARY_BE 

data points to a binary representation of the data in big endian


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