ezEngine  Release 25.03
ezVariantType Struct Reference

This enum describes the type of data that is currently stored inside the variant. More...

#include <VariantType.h>

Inheritance diagram for ezVariantType:

Public Types

enum  Enum : ezUInt8 {
  Invalid = 0, FirstStandardType = 1, Bool, Int8,
  UInt8, Int16, UInt16, Int32,
  UInt32, Int64, UInt64, Float,
  Double, Color, Vector2, Vector3,
  Vector4, Vector2I, Vector3I, Vector4I,
  Vector2U, Vector3U, Vector4U, Quaternion,
  Matrix3, Matrix4, Transform, String,
  StringView, DataBuffer, Time, Uuid,
  Angle, ColorGamma, HashedString, TempHashedString,
  LastStandardType, FirstExtendedType = 64, VariantArray, VariantDictionary,
  TypedPointer, TypedObject, LastExtendedType, MAX_ENUM_VALUE = LastExtendedType,
  Default = Invalid
}
 This enum describes the type of data that is currently stored inside the variant. Note that changes to this enum require an increase of the reflection version and either patches to the serializer or a re-export of binary data that contains ezVariants. More...
 
using StorageType = ezUInt8
 

Detailed Description

This enum describes the type of data that is currently stored inside the variant.

Member Enumeration Documentation

◆ Enum

enum ezVariantType::Enum : ezUInt8

This enum describes the type of data that is currently stored inside the variant. Note that changes to this enum require an increase of the reflection version and either patches to the serializer or a re-export of binary data that contains ezVariants.

Enumerator
Invalid 

The variant stores no (valid) data at the moment.

FirstStandardType 

*** Types that are flagged as 'StandardTypes' (see DetermineTypeFlags) ***

Bool 

The variant stores a bool.

Int8 

The variant stores an ezInt8.

UInt8 

The variant stores an ezUInt8.

Int16 

The variant stores an ezInt16.

UInt16 

The variant stores an ezUInt16.

Int32 

The variant stores an ezInt32.

UInt32 

The variant stores an ezUInt32.

Int64 

The variant stores an ezInt64.

UInt64 

The variant stores an ezUInt64.

Float 

The variant stores a float.

Double 

The variant stores a double.

Color 

The variant stores an ezColor.

Vector2 

The variant stores an ezVec2.

Vector3 

The variant stores an ezVec3.

Vector4 

The variant stores an ezVec4.

Vector2I 

The variant stores an ezVec2I32.

Vector3I 

The variant stores an ezVec3I32.

Vector4I 

The variant stores an ezVec4I32.

Vector2U 

The variant stores an ezVec2U32.

Vector3U 

The variant stores an ezVec3U32.

Vector4U 

The variant stores an ezVec4U32.

Quaternion 

The variant stores an ezQuat.

Matrix3 

The variant stores an ezMat3. A heap allocation is required to store this data type.

Matrix4 

The variant stores an ezMat4. A heap allocation is required to store this data type.

Transform 

The variant stores an ezTransform. A heap allocation is required to store this data type.

String 

The variant stores a string. A heap allocation is required to store this data type.

StringView 

The variant stores an ezStringView.

DataBuffer 

The variant stores an ezDataBuffer, a typedef to DynamicArray<ezUInt8>. A heap allocation is required to store this data type.

Time 

The variant stores an ezTime value.

Uuid 

The variant stores an ezUuid value.

Angle 

The variant stores an ezAngle value.

ColorGamma 

The variant stores an ezColorGammaUB value.

HashedString 

The variant stores an ezHashedString value.

TempHashedString 

The variant stores an ezTempHashedString value.

FirstExtendedType 

*** Types that are flagged as 'StandardTypes' (see DetermineTypeFlags) ***

VariantArray 

The variant stores an array of ezVariant's. A heap allocation is required to store this data type.

VariantDictionary 

The variant stores a dictionary (hashmap) of ezVariant's. A heap allocation is required to store this type.

TypedPointer 

The variant stores an ezTypedPointer value. Reflected type and data queries will match the pointed to object.

TypedObject 

The variant stores an ezTypedObject value. Reflected type and data queries will match the object. A heap allocation is required to store this type if it is larger than 16 bytes or not POD.

LastExtendedType 

Number of values for ezVariant::Type.

Default 

Default value used by ezEnum.


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