MCPcopy Create free account
hub / github.com/crownengine/crown / imageWriteDds

Function imageWriteDds

3rdparty/bimg/src/image.cpp:5868–5902  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5866 }
5867
5868 int32_t imageWriteDds(bx::WriterI* _writer, ImageContainer& _imageContainer, const void* _data, uint32_t _size, bx::Error* _err)
5869 {
5870 BX_ERROR_SCOPE(_err);
5871
5872 int32_t total = 0;
5873 total += imageWriteDdsHeader(_writer
5874 , TextureFormat::Enum(_imageContainer.m_format)
5875 , _imageContainer.m_cubeMap
5876 , _imageContainer.m_width
5877 , _imageContainer.m_height
5878 , _imageContainer.m_depth
5879 , _imageContainer.m_numMips
5880 , _imageContainer.m_numLayers
5881 , _err
5882 );
5883
5884 if (!_err->isOk() )
5885 {
5886 return total;
5887 }
5888
5889 for (uint8_t side = 0, numSides = uint8_t(_imageContainer.m_numLayers * (_imageContainer.m_cubeMap ? 6 : 1) ); side < numSides && _err->isOk(); ++side)
5890 {
5891 for (uint8_t lod = 0, num = _imageContainer.m_numMips; lod < num && _err->isOk(); ++lod)
5892 {
5893 ImageMip mip;
5894 if (imageGetRawData(_imageContainer, side, lod, _data, _size, mip) )
5895 {
5896 total += bx::write(_writer, mip.m_data, mip.m_size, _err);
5897 }
5898 }
5899 }
5900
5901 return total;
5902 }
5903
5904 static int32_t imageWriteKtxHeader(bx::WriterI* _writer, TextureFormat::Enum _format, bool _cubeMap, uint32_t _width, uint32_t _height, uint32_t _depth, uint8_t _numMips, uint32_t _numLayers, bool _srgb, bx::Error* _err)
5905 {

Callers 1

mainFunction · 0.85

Calls 4

imageWriteDdsHeaderFunction · 0.85
imageGetRawDataFunction · 0.85
EnumEnum · 0.70
writeFunction · 0.50

Tested by

no test coverage detected