cesium-native 0.43.0
Loading...
Searching...
No Matches
CesiumGltf::NamedObject Struct Reference

The base class for objects in a glTF that have a name. More...

#include <CesiumGltf/NamedObject.h>

Inheritance diagram for CesiumGltf::NamedObject:
CesiumUtility::ExtensibleObject CesiumGltf::AccessorSpec CesiumGltf::Animation CesiumGltf::BufferSpec CesiumGltf::BufferView CesiumGltf::Camera CesiumGltf::ExtensionModelKhrMaterialsVariantsValue CesiumGltf::ExtensionModelMaxarMeshVariantsValue CesiumGltf::ImageSpec CesiumGltf::Material CesiumGltf::Mesh CesiumGltf::Node CesiumGltf::Sampler CesiumGltf::Scene CesiumGltf::Skin CesiumGltf::Texture

Public Member Functions

int64_t getSizeBytes () const
 Calculates the size in bytes of this object, including the contents of all collections, pointers, and strings. 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

std::string name
 The user-defined name of this object.
 
- 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.
 

Detailed Description

The base class for objects in a glTF that have a name.

A named object is also an CesiumUtility::ExtensibleObject.

Definition at line 15 of file NamedObject.h.

Member Function Documentation

◆ getSizeBytes()

int64_t CesiumGltf::NamedObject::getSizeBytes ( ) const
inline

Calculates the size in bytes of this object, including the contents of all collections, pointers, and strings. Calling this method may be slow as it requires traversing the object's entire structure.

Definition at line 29 of file NamedObject.h.

Member Data Documentation

◆ name

std::string CesiumGltf::NamedObject::name

The user-defined name of this object.

This is not necessarily unique, e.g., an accessor and a buffer could have the same name, or two accessors could even have the same name.

Definition at line 22 of file NamedObject.h.


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