Menu
Lumberyard
C++ API Reference (Version 1.10)

AZ::SerializeContext::ClassElement Struct Reference

Open 3D Engine (O3DE), the successor to Lumberyard, is now available in Developer Preview. Download O3DE or visit the AWS Game Tech blog to learn more.

A subelement of a class that is reflected to the serialize context. More...

Public Types

enum Flags
These flags provide additional details about a class element. More...

Public Attributes

const char * m_name
The name of the class element. More...
u32 m_nameCrc
The CRC32 of m_name . More...
Uuid m_typeId
The unique type ID of the class element. More...
size_t m_dataSize
The size of the class element, in bytes. More...
size_t m_offset
The placement of the class element within the class, in bytes. More...
IRttiHelper * m_azRtti
An interface that is used to support run-time type information. More...
GenericClassInfo * m_genericClassInfo
A pointer to a base class that provides common information about a class type. More...
Edit::ElementData * m_editData
A pointer to the EditContext data, if the class is reflected to the edit context. More...
int m_flags
Additional details about the class element specified using ClassElement::Flags . More...

Detailed Description

A subelement of a class that is reflected to the serialize context.

Each time you call ClassInfo::Field() , a ClassElement is added to the ClassData object. A class element can be data or a logical element (a class).

If a class has a direct serializer, it does not use class elements because in that case, the entire class is serialized as one stream.

You typically don't interact with this class directly.

Member Enumeration Documentation

Flags

These flags provide additional details about a class element.

Enumerator
FLG_POINTER

The element is stored as a pointer, not as a value.

FLG_BASE_CLASS

The element is a base class of the containing class.

FLG_NO_DEFAULT_VALUE

The element cannot have a default value.

FLG_DYNAMIC_FIELD

The element represents a dynamic field ( DynamicSerializableField::m_data ).

Member Data Documentation

m_azRtti

IRttiHelper* AZ::SerializeContext::ClassElement::m_azRtti

An interface that is used to support run-time type information.

m_dataSize

size_t AZ::SerializeContext::ClassElement::m_dataSize

The size of the class element, in bytes.

m_editData

Edit::ElementData * AZ::SerializeContext::ClassElement::m_editData

A pointer to the EditContext data, if the class is reflected to the edit context.

m_flags

int AZ::SerializeContext::ClassElement::m_flags

Additional details about the class element specified using ClassElement::Flags .

m_genericClassInfo

GenericClassInfo* AZ::SerializeContext::ClassElement::m_genericClassInfo

A pointer to a base class that provides common information about a class type.

This is valid only when a generic class is used.

m_name

const char* AZ::SerializeContext::ClassElement::m_name

The name of the class element.

This is used in XML output and for debugging purposes.

m_nameCrc

u32 AZ::SerializeContext::ClassElement::m_nameCrc

The CRC32 of m_name .

m_offset

size_t AZ::SerializeContext::ClassElement::m_offset

The placement of the class element within the class, in bytes.

m_typeId

Uuid AZ::SerializeContext::ClassElement::m_typeId

The unique type ID of the class element.


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