28#ifndef __OgrePVRTCCodec_H__
29#define __OgrePVRTCCodec_H__
51 static void flipEndian(
void * pData,
size_t size,
size_t count);
SharedPtr< CodecData > CodecDataPtr
std::pair< MemoryDataStreamPtr, CodecDataPtr > DecodeResult
Result of a decoding; both a decoded data stream and CodecData metadata.
Codec specialized in images.
DecodeResult decodeV2(DataStreamPtr &stream) const
Decode PVRTCV2 image format.
void encodeToFile(MemoryDataStreamPtr &input, const String &outFileName, CodecDataPtr &pData) const
Codes the data in the input chunk and saves the result in the output filename provided.
static void shutdown(void)
Static method to shutdown and unregister the PVRTC codec.
DataStreamPtr encode(MemoryDataStreamPtr &input, CodecDataPtr &pData) const
Codes the data in the input stream and saves the result in the output stream.
DecodeResult decode(DataStreamPtr &input) const
Codes the data from the input chunk into the output chunk.
virtual String getType() const
Returns the type of the codec as a String.
static void flipEndian(void *pData, size_t size, size_t count)
DecodeResult decodeV3(DataStreamPtr &stream) const
Decode PVRTCV3 image format.
String magicNumberToFileExt(const char *magicNumberPtr, size_t maxbytes) const
Maps a magic number header to a file extension, if this codec recognises it.
static void startup(void)
Static method to startup and register the PVRTC codec.
static PVRTCCodec * msInstance
Single registered codec instance.
static void flipEndian(void *pData, size_t size)
SharedPtr< DataStream > DataStreamPtr
Shared pointer to allow data streams to be passed around without worrying about deallocation.
SharedPtr< MemoryDataStream > MemoryDataStreamPtr
Shared pointer to allow memory data streams to be passed around without worrying about deallocation.