cesium-native 0.51.0
Loading...
Searching...
No Matches
Cesium3DTilesSelection::TilesetMetadata Class Reference

Holds the metadata associated with a Tileset or an external tileset. This holds all of the fields of Cesium3DTiles::Tileset except for the root tile. More...

#include <Cesium3DTilesSelection/TilesetMetadata.h>

Inheritance diagram for Cesium3DTilesSelection::TilesetMetadata:
CesiumUtility::ExtensibleObject

Public Member Functions

CesiumAsync::SharedFuture< void > & loadSchemaUri (const CesiumAsync::AsyncSystem &asyncSystem, const std::shared_ptr< CesiumAsync::IAssetAccessor > &pAssetAccessor)
 Asynchronously loads the schema from the schemaUri. If the schemaUri does not contain a value, this method does nothing and returns an already-resolved future.
 
- 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

Cesium3DTiles::Asset asset
 Metadata about the entire tileset.
 
std::unordered_map< std::string, Cesium3DTiles::Propertiesproperties
 A dictionary object of metadata about per-feature properties.
 
std::optional< Cesium3DTiles::Schemaschema
 An object defining the structure of metadata classes and enums. When this is defined, then schemaUri shall be undefined.
 
std::optional< std::string > schemaUri
 The URI (or IRI) of the external schema file. When this is defined, then schema shall be undefined.
 
std::optional< Cesium3DTiles::Statisticsstatistics
 An object containing statistics about metadata entities.
 
std::vector< Cesium3DTiles::GroupMetadatagroups
 An array of groups that tile content may belong to. Each element of this array is a metadata entity that describes the group. The tile content group property is an index into this array.
 
std::optional< Cesium3DTiles::MetadataEntitymetadata
 A metadata entity that is associated with this tileset.
 
std::optional< double > geometricError
 The error, in meters, introduced if this tileset is not rendered. At runtime, the geometric error is used to compute screen space error (SSE), i.e., the error measured in pixels.
 
std::vector< std::string > extensionsUsed
 Names of 3D Tiles extensions used somewhere in this tileset.
 
std::vector< std::string > extensionsRequired
 Names of 3D Tiles extensions required to properly load this tileset. Each element of this array shall also be contained in extensionsUsed.
 
- 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

Holds the metadata associated with a Tileset or an external tileset. This holds all of the fields of Cesium3DTiles::Tileset except for the root tile.

Definition at line 29 of file TilesetMetadata.h.

Member Function Documentation

◆ loadSchemaUri()

CesiumAsync::SharedFuture< void > & Cesium3DTilesSelection::TilesetMetadata::loadSchemaUri ( const CesiumAsync::AsyncSystem & asyncSystem,
const std::shared_ptr< CesiumAsync::IAssetAccessor > & pAssetAccessor )

Asynchronously loads the schema from the schemaUri. If the schemaUri does not contain a value, this method does nothing and returns an already-resolved future.

Calling this method multiple times will return the same shared future each time, unless the schemaUri is changed. In that case, when this method is called, the previous load is canceled and the new one begins.

Parameters
asyncSystemThe async system used to do work in threads.
pAssetAccessorThe asset accessor used to request the schema from the schemaUri.
Returns
A future that resolves when the schema has been loaded from the schemaUri.

Member Data Documentation

◆ asset

Cesium3DTiles::Asset Cesium3DTilesSelection::TilesetMetadata::asset

Metadata about the entire tileset.

Definition at line 37 of file TilesetMetadata.h.

◆ extensionsRequired

std::vector<std::string> Cesium3DTilesSelection::TilesetMetadata::extensionsRequired

Names of 3D Tiles extensions required to properly load this tileset. Each element of this array shall also be contained in extensionsUsed.

Definition at line 89 of file TilesetMetadata.h.

◆ extensionsUsed

std::vector<std::string> Cesium3DTilesSelection::TilesetMetadata::extensionsUsed

Names of 3D Tiles extensions used somewhere in this tileset.

Definition at line 83 of file TilesetMetadata.h.

◆ geometricError

std::optional<double> Cesium3DTilesSelection::TilesetMetadata::geometricError

The error, in meters, introduced if this tileset is not rendered. At runtime, the geometric error is used to compute screen space error (SSE), i.e., the error measured in pixels.

Definition at line 78 of file TilesetMetadata.h.

◆ groups

std::vector<Cesium3DTiles::GroupMetadata> Cesium3DTilesSelection::TilesetMetadata::groups

An array of groups that tile content may belong to. Each element of this array is a metadata entity that describes the group. The tile content group property is an index into this array.

Definition at line 66 of file TilesetMetadata.h.

◆ metadata

std::optional<Cesium3DTiles::MetadataEntity> Cesium3DTilesSelection::TilesetMetadata::metadata

A metadata entity that is associated with this tileset.

Definition at line 71 of file TilesetMetadata.h.

◆ properties

std::unordered_map<std::string, Cesium3DTiles::Properties> Cesium3DTilesSelection::TilesetMetadata::properties

A dictionary object of metadata about per-feature properties.

Definition at line 42 of file TilesetMetadata.h.

◆ schema

std::optional<Cesium3DTiles::Schema> Cesium3DTilesSelection::TilesetMetadata::schema

An object defining the structure of metadata classes and enums. When this is defined, then schemaUri shall be undefined.

Definition at line 48 of file TilesetMetadata.h.

◆ schemaUri

std::optional<std::string> Cesium3DTilesSelection::TilesetMetadata::schemaUri

The URI (or IRI) of the external schema file. When this is defined, then schema shall be undefined.

Definition at line 54 of file TilesetMetadata.h.

◆ statistics

std::optional<Cesium3DTiles::Statistics> Cesium3DTilesSelection::TilesetMetadata::statistics

An object containing statistics about metadata entities.

Definition at line 59 of file TilesetMetadata.h.


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