cesium-native 0.43.0
Loading...
Searching...
No Matches
PropertyStatistics.h
1// This file was generated by generate-classes.
2// DO NOT EDIT THIS FILE!
3#pragma once
4
5#include <Cesium3DTiles/Library.h>
6#include <CesiumUtility/ExtensibleObject.h>
7#include <CesiumUtility/JsonValue.h>
8
9#include <optional>
10#include <string>
11#include <unordered_map>
12
13namespace Cesium3DTiles {
17struct CESIUM3DTILES_API PropertyStatistics final
22 static constexpr const char* TypeName = "PropertyStatistics";
23
30 std::optional<CesiumUtility::JsonValue> min;
31
38 std::optional<CesiumUtility::JsonValue> max;
39
46 std::optional<CesiumUtility::JsonValue> mean;
47
54 std::optional<CesiumUtility::JsonValue> median;
55
62 std::optional<CesiumUtility::JsonValue> standardDeviation;
63
70 std::optional<CesiumUtility::JsonValue> variance;
71
78 std::optional<CesiumUtility::JsonValue> sum;
79
86 std::unordered_map<std::string, CesiumUtility::JsonValue> occurrences;
87
94 int64_t getSizeBytes() const {
95 int64_t accum = 0;
96 accum += int64_t(sizeof(PropertyStatistics));
98 int64_t(sizeof(CesiumUtility::ExtensibleObject));
99 accum += int64_t(
100 this->occurrences.bucket_count() *
101 (sizeof(std::string) + sizeof(CesiumUtility::JsonValue)));
102 for (const auto& [k, v] : this->occurrences) {
103 accum += int64_t(k.capacity() * sizeof(char) - sizeof(std::string));
104 accum += int64_t(sizeof(CesiumUtility::JsonValue));
105 }
106 return accum;
107 }
108};
109} // namespace Cesium3DTiles
A generic implementation of a value in a JSON structure.
Definition JsonValue.h:75
Classes for using 3D Tiles.
Definition Buffer.h:7
Statistics about property values.
std::optional< CesiumUtility::JsonValue > max
The maximum property value occurring in the tileset. Only applicable to SCALAR, VECN,...
std::optional< CesiumUtility::JsonValue > mean
The arithmetic mean of property values occurring in the tileset. Only applicable to SCALAR,...
std::optional< CesiumUtility::JsonValue > standardDeviation
The standard deviation of property values occurring in the tileset. Only applicable to SCALAR,...
std::optional< CesiumUtility::JsonValue > median
The median of property values occurring in the tileset. Only applicable to SCALAR,...
std::optional< CesiumUtility::JsonValue > variance
The variance of property values occurring in the tileset. Only applicable to SCALAR,...
std::unordered_map< std::string, CesiumUtility::JsonValue > occurrences
A dictionary, where each key corresponds to an enum name and each value is the number of occurrences ...
std::optional< CesiumUtility::JsonValue > min
The minimum property value occurring in the tileset. Only applicable to SCALAR, VECN,...
int64_t getSizeBytes() const
Calculates the size in bytes of this object, including the contents of all collections,...
std::optional< CesiumUtility::JsonValue > sum
The sum of property values occurring in the tileset. Only applicable to SCALAR, VECN,...
The base class for objects that have extensions and extras.
int64_t getSizeBytes() const
Calculates the size in bytes of this ExtensibleObject, including all of its extras but NOT including ...