Cogs.Rendering
|
#include <TextureData.h>
Public Member Functions | |
TextureData ()=default | |
TextureData (TextureExtent extent, size_t layers, size_t faces, size_t levels, TextureFormat format, Memory::Allocator *allocator=Memory::Allocator::defaultAllocator()) | |
TextureData (const void *data, TextureExtent extent, size_t layers, size_t faces, size_t levels, TextureFormat format) | |
TextureData (TextureData &&)=default | |
TextureData & | operator= (TextureData &&)=default |
void | init (TextureExtent extent, size_t layers, size_t faces, size_t levels, TextureFormat format, Memory::Allocator *allocator=Memory::Allocator::defaultAllocator()) |
void | initExternal (intptr_t external) |
void | initExternal (const void **data, size_t layers, size_t faces, size_t levels) |
void | clearData () |
void * | getData (size_t layer, size_t face, size_t level) |
const void * | getData (size_t layer, size_t face, size_t level) const |
void * | getData () |
const void * | getData () const |
size_t | getPitch (size_t level) const |
size_t | getLevelSize (size_t level) const |
size_t | getFaceSize (size_t baseLevel, size_t maxLevel) const |
size_t | getLayerSize (size_t baseFace, size_t maxFace, size_t baseLevel, size_t maxLevel) const |
size_t | getSize () const |
TextureExtent | getExtent (size_t level) const |
TextureExtent | getBlockCount (size_t level) const |
size_t | getOffset (size_t layer, size_t face, size_t level) const |
void | initOffsets (const void *data) |
Public Attributes | |
TextureFormat | format = Cogs::TextureFormat::Unknown |
size_t | layers = 0 |
size_t | faces = 0 |
size_t | levels = 0 |
size_t | blockSize = 0 |
TextureExtent | blockExtent |
TextureExtent | blockCount |
TextureExtent | extent |
Collections::SmallVector< const void *, 16 > | offsets |
Memory::MemoryBuffer | data |
intptr_t | externalHandle = 0 |
|
default |
Cogs::TextureData::TextureData | ( | TextureExtent | extent, |
size_t | layers, | ||
size_t | faces, | ||
size_t | levels, | ||
TextureFormat | format, | ||
Memory::Allocator * | allocator = Memory::Allocator::defaultAllocator() |
||
) |
Cogs::TextureData::TextureData | ( | const void * | data, |
TextureExtent | extent, | ||
size_t | layers, | ||
size_t | faces, | ||
size_t | levels, | ||
TextureFormat | format | ||
) |
References data, and initOffsets().
|
default |
void Cogs::TextureData::clearData | ( | ) |
References blockCount, blockExtent, blockSize, data, extent, externalHandle, faces, format, layers, levels, offsets, and Cogs::Unknown.
TextureExtent Cogs::TextureData::getBlockCount | ( | size_t | level | ) | const |
References blockCount, Cogs::TextureExtent::depth, Cogs::TextureExtent::height, and Cogs::TextureExtent::width.
Referenced by getLevelSize(), and getPitch().
|
inline |
void * Cogs::TextureData::getData | ( | size_t | layer, |
size_t | face, | ||
size_t | level | ||
) |
References data, and getOffset().
const void * Cogs::TextureData::getData | ( | size_t | layer, |
size_t | face, | ||
size_t | level | ||
) | const |
TextureExtent Cogs::TextureData::getExtent | ( | size_t | level | ) | const |
References Cogs::TextureExtent::depth, extent, Cogs::TextureExtent::height, and Cogs::TextureExtent::width.
size_t Cogs::TextureData::getFaceSize | ( | size_t | baseLevel, |
size_t | maxLevel | ||
) | const |
References getLevelSize().
Referenced by getLayerSize(), and getOffset().
size_t Cogs::TextureData::getLayerSize | ( | size_t | baseFace, |
size_t | maxFace, | ||
size_t | baseLevel, | ||
size_t | maxLevel | ||
) | const |
References getFaceSize().
Referenced by getOffset(), and getSize().
size_t Cogs::TextureData::getLevelSize | ( | size_t | level | ) | const |
References blockSize, and getBlockCount().
Referenced by getFaceSize(), and getOffset().
size_t Cogs::TextureData::getOffset | ( | size_t | layer, |
size_t | face, | ||
size_t | level | ||
) | const |
References faces, getFaceSize(), getLayerSize(), getLevelSize(), and levels.
Referenced by getData(), and initOffsets().
size_t Cogs::TextureData::getPitch | ( | size_t | level | ) | const |
References blockSize, getBlockCount(), and Cogs::TextureExtent::width.
size_t Cogs::TextureData::getSize | ( | ) | const |
References faces, getLayerSize(), layers, and levels.
Referenced by init().
void Cogs::TextureData::init | ( | TextureExtent | extent, |
size_t | layers, | ||
size_t | faces, | ||
size_t | levels, | ||
TextureFormat | format, | ||
Memory::Allocator * | allocator = Memory::Allocator::defaultAllocator() |
||
) |
void Cogs::TextureData::initExternal | ( | const void ** | data, |
size_t | layers, | ||
size_t | faces, | ||
size_t | levels | ||
) |
void Cogs::TextureData::initExternal | ( | intptr_t | external | ) |
References externalHandle.
void Cogs::TextureData::initOffsets | ( | const void * | data | ) |
References data, faces, getOffset(), layers, levels, and offsets.
Referenced by init(), and TextureData().
|
default |
TextureExtent Cogs::TextureData::blockCount |
Referenced by clearData(), getBlockCount(), and init().
TextureExtent Cogs::TextureData::blockExtent |
Referenced by clearData(), and init().
size_t Cogs::TextureData::blockSize = 0 |
Referenced by clearData(), getLevelSize(), getPitch(), and init().
Memory::MemoryBuffer Cogs::TextureData::data |
Referenced by clearData(), getData(), init(), initExternal(), initOffsets(), and TextureData().
TextureExtent Cogs::TextureData::extent |
Referenced by clearData(), getExtent(), and init().
intptr_t Cogs::TextureData::externalHandle = 0 |
Referenced by clearData(), and initExternal().
size_t Cogs::TextureData::faces = 0 |
Referenced by clearData(), getData(), getOffset(), getSize(), init(), initExternal(), and initOffsets().
TextureFormat Cogs::TextureData::format = Cogs::TextureFormat::Unknown |
Referenced by clearData(), and init().
size_t Cogs::TextureData::layers = 0 |
Referenced by clearData(), getSize(), init(), initExternal(), and initOffsets().
size_t Cogs::TextureData::levels = 0 |
Referenced by clearData(), getData(), getOffset(), getSize(), init(), initExternal(), and initOffsets().
Collections::SmallVector<const void *, 16> Cogs::TextureData::offsets |
Referenced by clearData(), getData(), initExternal(), and initOffsets().