59 return (
rawValue & 0x8000'0000U) != 0;
145 std::vector<std::uint8_t>
rgba;
155 [[
nodiscard]]
static std::expected<LegacyMeshData, MeshDataError>
159 [[
nodiscard]] std::span<const std::optional<std::size_t>>
161 [[
nodiscard]] std::span<const HmdPrimitiveHeader>
194 std::uint32_t versionId_{};
195 std::vector<std::optional<std::size_t>> blockRoots_;
196 std::vector<HmdPrimitiveHeader> headers_;
197 std::vector<HmdPrimitive> primitives_;
202 [[
nodiscard]] std::expected<LegacyMeshData, MeshDataError>
std::shared_ptr< const data::HmdTextureImage > source
std::span< const HmdPrimitive > primitives() const noexcept
std::expected< std::vector< HmdTextureImage >, MeshDataError > textureImages() const
std::expected< std::span< const std::byte >, MeshDataError > sectionBytes(std::size_t primitiveIndex, std::size_t sectionIndex) const
std::span< const std::optional< std::size_t > > blockRoots() const noexcept
std::span< const HmdPrimitiveHeader > headers() const noexcept
std::expected< std::vector< HmdMimePose >, MeshDataError > mimePoses(HmdMimeLimits limits={}) const
std::uint32_t versionId() const noexcept
std::expected< HmdTriangle, MeshDataError > triangle(std::size_t primitiveIndex, std::size_t sectionIndex, std::size_t triangleIndex) const
std::span< const std::byte > bytes() const noexcept
static std::expected< LegacyMeshData, MeshDataError > parse(SharedDataBytes bytes, MeshParseLimits limits={})
std::expected< LegacyMeshData, MeshDataError > openLegacyMeshData(const DataSource &source, DataId id, MeshParseLimits limits)
std::shared_ptr< const DataBytes > SharedDataBytes
std::string_view meshDataErrorCodeName(MeshDataErrorCode code) noexcept
std::uint16_t elementCount
std::vector< HmdShortVector > diffs
std::size_t maximumVectors
std::size_t maximumDiffBlocks
std::optional< HmdMimeDiffBlock > normal
std::optional< HmdMimeDiffBlock > vertex
std::optional< std::size_t > nextOffset
std::vector< HmdDataSection > sections
std::uint16_t texturePage
std::vector< std::uint8_t > rgba
std::array< HmdTexturePoint, 3 > texturePoints
std::array< std::uint16_t, 3 > normalIndices
std::array< HmdShortVector, 3 > normals
std::array< std::uint32_t, 3 > colours
std::array< HmdShortVector, 3 > vertices
std::uint16_t texturePage
std::array< std::uint16_t, 3 > vertexIndices
std::optional< DataError > dataError
std::size_t maximumHeaderFields
std::size_t maximumSections
std::size_t maximumPrimitives