6#include <CesiumGltf/Enum.h>
7#include <CesiumGltf/PropertyArrayView.h>
8#include <CesiumGltf/PropertyType.h>
9#include <CesiumGltf/PropertyTypeTraits.h>
11#include "CesiumMetadataValueType.generated.h"
63static_assert(int(CesiumGltf::PropertyType::Invalid) == 0);
64static_assert(int(CesiumGltf::PropertyComponentType::None) == 0);
104 Scalar = int(CesiumGltf::PropertyType::Scalar),
105 Vec2 = int(CesiumGltf::PropertyType::Vec2),
106 Vec3 = int(CesiumGltf::PropertyType::Vec3),
107 Vec4 = int(CesiumGltf::PropertyType::Vec4),
108 Mat2 = int(CesiumGltf::PropertyType::Mat2),
109 Mat3 = int(CesiumGltf::PropertyType::Mat3),
110 Mat4 = int(CesiumGltf::PropertyType::Mat4),
111 Boolean = int(CesiumGltf::PropertyType::Boolean),
112 String = int(CesiumGltf::PropertyType::String),
113 Enum = int(CesiumGltf::PropertyType::Enum)
123 Int8 = int(CesiumGltf::PropertyComponentType::Int8),
124 Uint8 = int(CesiumGltf::PropertyComponentType::Uint8),
125 Int16 = int(CesiumGltf::PropertyComponentType::Int16),
126 Uint16 = int(CesiumGltf::PropertyComponentType::Uint16),
127 Int32 = int(CesiumGltf::PropertyComponentType::Int32),
128 Uint32 = int(CesiumGltf::PropertyComponentType::Uint32),
129 Int64 = int(CesiumGltf::PropertyComponentType::Int64),
130 Uint64 = int(CesiumGltf::PropertyComponentType::Uint64),
131 Float32 = int(CesiumGltf::PropertyComponentType::Float32),
132 Float64 = int(CesiumGltf::PropertyComponentType::Float64),
139USTRUCT(BlueprintType)
141 GENERATED_USTRUCT_BODY()
148 bool IsArray = false);
153 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"Cesium")
167 "Type != ECesiumMetadataType::Invalid && Type != ECesiumMetadataType::Boolean && Type != ECesiumMetadataType::String"))
174 UPROPERTY(EditAnywhere, BlueprintReadWrite, Category =
"Cesium")
196TypeToMetadataValueType(TSharedPtr<FCesiumMetadataEnum> pEnumDefinition) {
204 pEnumDefinition !=
nullptr) {
224 return {type, componentType, isArray};
231static size_t GetMetadataTypeByteSize(
234 size_t componentByteSize = 0;
239 size_t byteSize = componentByteSize;
242 byteSize =
sizeof(bool);
@ String
The feature's ID is a string.
@ Integer
The feature's ID is an integer.
size_t getSizeOfComponentType(PropertyComponentType componentType)