cesium-native 0.43.0
Loading...
Searching...
No Matches
CesiumGltf::ExtensionModelExtStructuralMetadata Struct Referencefinal

glTF extension that provides structural metadata about vertices, texels, and features in a glTF asset. More...

#include <CesiumGltf/ExtensionModelExtStructuralMetadata.h>

Inheritance diagram for CesiumGltf::ExtensionModelExtStructuralMetadata:
CesiumUtility::ExtensibleObject

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 JsonValuegetGenericExtension (const std::string &extensionName) const noexcept
 Gets a generic extension with the given name as a CesiumUtility::JsonValue.
 
JsonValuegetGenericExtension (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

CesiumUtility::IntrusivePointer< CesiumGltf::Schemaschema
 An object defining classes and enums.
 
std::optional< std::string > schemaUri
 The URI (or IRI) of the external schema file.
 
std::vector< CesiumGltf::PropertyTablepropertyTables
 An array of property table definitions, which may be referenced by index.
 
std::vector< CesiumGltf::PropertyTexturepropertyTextures
 An array of property texture definitions, which may be referenced by index.
 
std::vector< CesiumGltf::PropertyAttributepropertyAttributes
 An array of property attribute definitions, which may be referenced by index.
 
- 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 = "ExtensionModelExtStructuralMetadata"
 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.
 

Detailed Description

glTF extension that provides structural metadata about vertices, texels, and features in a glTF asset.

Definition at line 22 of file ExtensionModelExtStructuralMetadata.h.

Member Function Documentation

◆ getSizeBytes()

int64_t CesiumGltf::ExtensionModelExtStructuralMetadata::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 66 of file ExtensionModelExtStructuralMetadata.h.

Member Data Documentation

◆ ExtensionName

const char* CesiumGltf::ExtensionModelExtStructuralMetadata::ExtensionName = "EXT_structural_metadata"
staticconstexpr

The official name of the extension. This should be the same as its key in the extensions object.

Definition at line 30 of file ExtensionModelExtStructuralMetadata.h.

◆ propertyAttributes

std::vector<CesiumGltf::PropertyAttribute> CesiumGltf::ExtensionModelExtStructuralMetadata::propertyAttributes

An array of property attribute definitions, which may be referenced by index.

Definition at line 58 of file ExtensionModelExtStructuralMetadata.h.

◆ propertyTables

std::vector<CesiumGltf::PropertyTable> CesiumGltf::ExtensionModelExtStructuralMetadata::propertyTables

An array of property table definitions, which may be referenced by index.

Definition at line 46 of file ExtensionModelExtStructuralMetadata.h.

◆ propertyTextures

std::vector<CesiumGltf::PropertyTexture> CesiumGltf::ExtensionModelExtStructuralMetadata::propertyTextures

An array of property texture definitions, which may be referenced by index.

Definition at line 52 of file ExtensionModelExtStructuralMetadata.h.

◆ schema

CesiumUtility::IntrusivePointer<CesiumGltf::Schema> CesiumGltf::ExtensionModelExtStructuralMetadata::schema

An object defining classes and enums.

Definition at line 35 of file ExtensionModelExtStructuralMetadata.h.

◆ schemaUri

std::optional<std::string> CesiumGltf::ExtensionModelExtStructuralMetadata::schemaUri

The URI (or IRI) of the external schema file.

Definition at line 40 of file ExtensionModelExtStructuralMetadata.h.

◆ TypeName

const char* CesiumGltf::ExtensionModelExtStructuralMetadata::TypeName = "ExtensionModelExtStructuralMetadata"
staticconstexpr

The original name of this type.

Definition at line 27 of file ExtensionModelExtStructuralMetadata.h.


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