Cogs.Core
Classes | Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
Cogs::Core::MeshoptDecompressor Class Reference

Classes

struct  BufferViewDecomp
 

Public Types

enum class  Mode { UNKNOWN , ATTRIBUTES , TRIANGLES , INDICES }
 
enum class  Filter { NONE , OCTAHEDRAL , QUATERNION , EXPONENTIAL }
 

Public Member Functions

bool registerBufferViewCompression (uint32_t bufferViewIdx, const GltfLoader::Object &properties)
 Returns false if something failed.
 
bool isCompressed (GltfLoader::GltfModelDefinition &loadData, int accessorIdx) const
 
bool decompress (GltfLoader::GltfModelDefinition &loadData, uint32_t accessorIdx)
 

Private Member Functions

bool processAttributes (BufferViewDecomp &bvd, GltfLoader::GltfModelDefinition &loadData, int accessorIdx)
 
bool processIndices (BufferViewDecomp &bvd, GltfLoader::GltfModelDefinition &loadData, int accessorIdx)
 
bool processTriangles (BufferViewDecomp &bvd, GltfLoader::GltfModelDefinition &loadData, int accessorIdx)
 
int getBufferViewIdxFromAccessorIdx (GltfLoader::GltfModelDefinition &loadData, int accessorIdx) const
 
void normalizeBBoxValue (Cogs::Core::GltfLoader::GltfAccessor &accessor, int idx) const
 
void convertScalarAccessorBBoxToFloat (GltfLoader::GltfAccessor &accessor) const
 
template<typename T >
void convertVecAccessorBBoxToFloat (GltfLoader::GltfAccessor &accessor) const
 
template<typename T >
bool transformData (T data, int size, int stride, MeshoptDecompressor::Filter filter) const
 

Private Attributes

std::unordered_map< uint32_t, BufferViewDecompbufferViewDecomps
 
std::vector< Memory::MemoryBuffermemoryBuffers
 
std::unordered_set< uint32_t > decompressedBufferViews
 

Detailed Description

Definition at line 25 of file MeshoptDecompressor.h.

Member Enumeration Documentation

◆ Filter

enum class Cogs::Core::MeshoptDecompressor::Filter
strong

Definition at line 32 of file MeshoptDecompressor.h.

◆ Mode

enum class Cogs::Core::MeshoptDecompressor::Mode
strong

Definition at line 31 of file MeshoptDecompressor.h.

Member Function Documentation

◆ convertScalarAccessorBBoxToFloat()

void MeshoptDecompressor::convertScalarAccessorBBoxToFloat ( GltfLoader::GltfAccessor accessor) const
private

Definition at line 196 of file MeshoptDecompressor.cpp.

◆ convertVecAccessorBBoxToFloat()

template<typename T >
void Cogs::Core::MeshoptDecompressor::convertVecAccessorBBoxToFloat ( GltfLoader::GltfAccessor accessor) const
inlineprivate

Definition at line 62 of file MeshoptDecompressor.h.

◆ decompress()

bool MeshoptDecompressor::decompress ( GltfLoader::GltfModelDefinition loadData,
uint32_t  accessorIdx 
)

Definition at line 140 of file MeshoptDecompressor.cpp.

◆ getBufferViewIdxFromAccessorIdx()

int MeshoptDecompressor::getBufferViewIdxFromAccessorIdx ( GltfLoader::GltfModelDefinition loadData,
int  accessorIdx 
) const
private

Definition at line 159 of file MeshoptDecompressor.cpp.

◆ isCompressed()

bool MeshoptDecompressor::isCompressed ( GltfLoader::GltfModelDefinition loadData,
int  accessorIdx 
) const

Definition at line 133 of file MeshoptDecompressor.cpp.

◆ normalizeBBoxValue()

void MeshoptDecompressor::normalizeBBoxValue ( Cogs::Core::GltfLoader::GltfAccessor accessor,
int  idx 
) const
private

Definition at line 166 of file MeshoptDecompressor.cpp.

◆ processAttributes()

bool MeshoptDecompressor::processAttributes ( BufferViewDecomp bvd,
GltfLoader::GltfModelDefinition loadData,
int  accessorIdx 
)
private

Definition at line 224 of file MeshoptDecompressor.cpp.

◆ processIndices()

bool MeshoptDecompressor::processIndices ( BufferViewDecomp bvd,
GltfLoader::GltfModelDefinition loadData,
int  accessorIdx 
)
private

Definition at line 325 of file MeshoptDecompressor.cpp.

◆ processTriangles()

bool MeshoptDecompressor::processTriangles ( BufferViewDecomp bvd,
GltfLoader::GltfModelDefinition loadData,
int  accessorIdx 
)
private

Definition at line 379 of file MeshoptDecompressor.cpp.

◆ registerBufferViewCompression()

bool MeshoptDecompressor::registerBufferViewCompression ( uint32_t  bufferViewIdx,
const GltfLoader::Object &  properties 
)

Returns false if something failed.

Definition at line 18 of file MeshoptDecompressor.cpp.

◆ transformData()

template<typename T >
bool Cogs::Core::MeshoptDecompressor::transformData ( data,
int  size,
int  stride,
MeshoptDecompressor::Filter  filter 
) const
inlineprivate

Definition at line 98 of file MeshoptDecompressor.h.

Member Data Documentation

◆ bufferViewDecomps

std::unordered_map<uint32_t, BufferViewDecomp> Cogs::Core::MeshoptDecompressor::bufferViewDecomps
private

Definition at line 116 of file MeshoptDecompressor.h.

◆ decompressedBufferViews

std::unordered_set<uint32_t> Cogs::Core::MeshoptDecompressor::decompressedBufferViews
private

Definition at line 118 of file MeshoptDecompressor.h.

◆ memoryBuffers

std::vector<Memory::MemoryBuffer> Cogs::Core::MeshoptDecompressor::memoryBuffers
private

Definition at line 117 of file MeshoptDecompressor.h.


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