An object defining classes and enums.
More...
#include <Cesium3DTiles/Schema.h>
|
int64_t | getSizeBytes () const |
| Calculates the size in bytes of this object, including the contents of all collections, pointers, and strings. This will NOT include the size of any extensions attached to the object. Calling this method may be slow as it requires traversing the object's entire structure.
|
|
template<typename T > |
bool | hasExtension () const noexcept |
| Checks if an extension exists given its static type.
|
|
template<typename T > |
const T * | getExtension () const noexcept |
| Gets an extension given its static type.
|
|
template<typename T > |
T * | getExtension () noexcept |
| Gets an extension given its static type.
|
|
const JsonValue * | getGenericExtension (const std::string &extensionName) const noexcept |
| Gets a generic extension with the given name as a CesiumUtility::JsonValue .
|
|
JsonValue * | getGenericExtension (const std::string &extensionName) noexcept |
| Gets a generic extension with the given name as a CesiumUtility::JsonValue .
|
|
template<typename T , typename... ConstructorArgumentTypes> |
T & | addExtension (ConstructorArgumentTypes &&... constructorArguments) |
| Adds a statically-typed extension to this object.
|
|
template<typename T > |
void | removeExtension () |
| Removes a statically-typed extension from this object.
|
|
int64_t | getSizeBytes () const |
| Calculates the size in bytes of this ExtensibleObject, including all of its extras but NOT including its extensions. Calling this method may be slow as it requires traversing the entire object.
|
|
|
std::string | id |
| Unique identifier for the schema. Schema IDs shall be alphanumeric identifiers matching the regular expression ^[a-zA-Z_][a-zA-Z0-9_]*$ .
|
|
std::optional< std::string > | name |
| The name of the schema, e.g. for display purposes.
|
|
std::optional< std::string > | description |
| The description of the schema.
|
|
std::optional< std::string > | version |
| Application-specific version of the schema.
|
|
std::unordered_map< std::string, Cesium3DTiles::Class > | classes |
| A dictionary, where each key is a class ID and each value is an object defining the class. Class IDs shall be alphanumeric identifiers matching the regular expression ^[a-zA-Z_][a-zA-Z0-9_]*$ .
|
|
std::unordered_map< std::string, Cesium3DTiles::Enum > | enums |
| A dictionary, where each key is an enum ID and each value is an object defining the values for the enum. Enum IDs shall be alphanumeric identifiers matching the regular expression ^[a-zA-Z_][a-zA-Z0-9_]*$ .
|
|
std::unordered_map< std::string, std::any > | extensions |
| The extensions attached to this object.
|
|
JsonValue::Object | extras |
| Application-specific data.
|
|
JsonValue::Object | unknownProperties |
| Unknown properties that exist on this object but do not have any representation in the statically-typed classes.
|
|
|
static constexpr const char * | TypeName = "Schema" |
| The original name of this type.
|
|
An object defining classes and enums.
Definition at line 18 of file Schema.h.
◆ getSizeBytes()
int64_t Cesium3DTiles::Schema::getSizeBytes |
( |
| ) |
const |
|
inline |
Calculates the size in bytes of this object, including the contents of all collections, pointers, and strings. This will NOT include the size of any extensions attached to the object. Calling this method may be slow as it requires traversing the object's entire structure.
Definition at line 65 of file Schema.h.
◆ classes
A dictionary, where each key is a class ID and each value is an object defining the class. Class IDs shall be alphanumeric identifiers matching the regular expression ^[a-zA-Z_][a-zA-Z0-9_]*$
.
Definition at line 50 of file Schema.h.
◆ description
std::optional<std::string> Cesium3DTiles::Schema::description |
The description of the schema.
Definition at line 38 of file Schema.h.
◆ enums
A dictionary, where each key is an enum ID and each value is an object defining the values for the enum. Enum IDs shall be alphanumeric identifiers matching the regular expression ^[a-zA-Z_][a-zA-Z0-9_]*$
.
Definition at line 57 of file Schema.h.
◆ id
std::string Cesium3DTiles::Schema::id |
Unique identifier for the schema. Schema IDs shall be alphanumeric identifiers matching the regular expression ^[a-zA-Z_][a-zA-Z0-9_]*$
.
Definition at line 28 of file Schema.h.
◆ name
std::optional<std::string> Cesium3DTiles::Schema::name |
The name of the schema, e.g. for display purposes.
Definition at line 33 of file Schema.h.
◆ TypeName
const char* Cesium3DTiles::Schema::TypeName = "Schema" |
|
staticconstexpr |
The original name of this type.
Definition at line 22 of file Schema.h.
◆ version
std::optional<std::string> Cesium3DTiles::Schema::version |
Application-specific version of the schema.
Definition at line 43 of file Schema.h.
The documentation for this struct was generated from the following file:
- /home/runner/work/cesium-native/cesium-native/Cesium3DTiles/generated/include/Cesium3DTiles/Schema.h