cesium-native 0.43.0
|
Structural metadata about a glTF element. More...
#include <CesiumGltf/ExtensionExtStructuralMetadata.h>
Public Member Functions | |
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. | |
Public Member Functions inherited from CesiumUtility::ExtensibleObject | |
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. | |
Public Attributes | |
std::optional< std::string > | classProperty |
The class that property values conform to. The value shall be a class ID declared in the classes dictionary of the metadata schema. | |
std::unordered_map< std::string, CesiumUtility::JsonValue > | properties |
A dictionary, where each key corresponds to a property ID in the class' properties dictionary and each value contains the property values. The type of the value shall match the property definition: For BOOLEAN use true or false . For STRING use a JSON string. For numeric types use a JSON number. For ENUM use a valid enum name , not an integer value. For ARRAY , VECN , and MATN types use a JSON array containing values matching the componentType . Required properties shall be included in this dictionary. | |
Public Attributes inherited from CesiumUtility::ExtensibleObject | |
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 Public Attributes | |
static constexpr const char * | TypeName = "ExtensionExtStructuralMetadata" |
The original name of this type. | |
static constexpr const char * | ExtensionName = "EXT_structural_metadata" |
The official name of the extension. This should be the same as its key in the extensions object. | |
Structural metadata about a glTF element.
Definition at line 17 of file ExtensionExtStructuralMetadata.h.
|
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 51 of file ExtensionExtStructuralMetadata.h.
std::optional<std::string> CesiumGltf::ExtensionExtStructuralMetadata::classProperty |
The class that property values conform to. The value shall be a class ID declared in the classes
dictionary of the metadata schema.
Definition at line 31 of file ExtensionExtStructuralMetadata.h.
|
staticconstexpr |
The official name of the extension. This should be the same as its key in the extensions
object.
Definition at line 25 of file ExtensionExtStructuralMetadata.h.
std::unordered_map<std::string, CesiumUtility::JsonValue> CesiumGltf::ExtensionExtStructuralMetadata::properties |
A dictionary, where each key corresponds to a property ID in the class' properties
dictionary and each value contains the property values. The type of the value shall match the property definition: For BOOLEAN
use true
or false
. For STRING
use a JSON string. For numeric types use a JSON number. For ENUM
use a valid enum name
, not an integer value. For ARRAY
, VECN
, and MATN
types use a JSON array containing values matching the componentType
. Required properties shall be included in this dictionary.
Definition at line 43 of file ExtensionExtStructuralMetadata.h.
|
staticconstexpr |
The original name of this type.
Definition at line 22 of file ExtensionExtStructuralMetadata.h.