5#include <Cesium3DTiles/EnumValue.h>
6#include <Cesium3DTiles/Library.h>
7#include <CesiumUtility/ExtensibleObject.h>
21 static constexpr const char*
TypeName =
"Enum";
28 inline static const std::string
INT8 =
"INT8";
31 inline static const std::string
UINT8 =
"UINT8";
34 inline static const std::string
INT16 =
"INT16";
37 inline static const std::string
UINT16 =
"UINT16";
40 inline static const std::string
INT32 =
"INT32";
43 inline static const std::string
UINT32 =
"UINT32";
46 inline static const std::string
INT64 =
"INT64";
49 inline static const std::string
UINT64 =
"UINT64";
55 std::optional<std::string>
name;
74 std::vector<Cesium3DTiles::EnumValue>
values;
84 accum += int64_t(
sizeof(
Enum));
88 accum += int64_t(this->name->capacity() *
sizeof(
char));
90 if (this->description) {
91 accum += int64_t(this->description->capacity() *
sizeof(
char));
Classes for using 3D Tiles.
Known values for The type of the integer enum value.
static const std::string INT8
INT8
static const std::string UINT8
UINT8
static const std::string INT32
INT32
static const std::string UINT64
UINT64
static const std::string UINT16
UINT16
static const std::string INT16
INT16
static const std::string INT64
INT64
static const std::string UINT32
UINT32
An object defining the values of an enum.
static constexpr const char * TypeName
The original name of this type.
std::string valueType
The type of the integer enum value.
std::vector< Cesium3DTiles::EnumValue > values
An array of enum values. Duplicate names or duplicate integer values are not allowed.
std::optional< std::string > description
The description of the enum.
std::optional< std::string > name
The name of the enum, e.g. for display purposes.
int64_t getSizeBytes() const
Calculates the size in bytes of this object, including the contents of all collections,...
The base class for objects that have extensions and extras.
int64_t getSizeBytes() const
Calculates the size in bytes of this ExtensibleObject, including all of its extras but NOT including ...