/* * Copyright 2011-2012 Branimir Karadzic. All rights reserved. * License: http://www.opensource.org/licenses/BSD-2-Clause */ #ifndef __DDS_H__ #define __DDS_H__ #include namespace bgfx { struct Dds { uint32_t m_width; uint32_t m_height; uint32_t m_depth; uint8_t m_blockSize; uint8_t m_numMips; uint8_t m_bpp; uint8_t m_type; bool m_hasAlpha; }; struct Mip { uint32_t m_width; uint32_t m_height; uint32_t m_blockSize; uint32_t m_size; uint8_t m_bpp; uint8_t m_type; bool m_hasAlpha; const uint8_t* m_data; uint32_t getDecodedSize() const; void decode(uint8_t* _dst); }; bool isDds(const Memory* _mem); bool parseDds(Dds& _dds, const Memory* _mem); bool getRawImageData(const Dds& _dds, uint8_t _index, const Memory* _mem, Mip& _mip); } // namespace bgfx #endif // __DDS_H__