10 #include <type_traits>
76 uint32_t outsizeCoded;
98 uint32_t optionalBytes;
143 Vector<FrameHeader> frameHeaders;
151 extents.initializeForExtension();
153 extents.extend(frame.extents);
161 14, 16, 20, 24, 26, 28, 30, 32};
164 StreamPtr stream =
nullptr;
172 Vector<uint32_t> framePointers;
174 size_t getDirectionSize(uint32_t dirIndex);
176 bool extractHeaderAndOffsets();
void reset()
Resets the decoder and frees resources.
static constexpr unsigned bitsWidthTable[16]
An array that maps an encoded 4-bit size to the real size in bits.
bool readDirection(Direction &outDir, uint32_t dirIndex, IImageProvider< uint8_t > &imgProvider)
Decodes a direction of the file into memory.
Decoder for the DCC image format.
Vector< uint32_t > directionsOffsets
Offset of each direction header in the file, follows the Header.
const Header & getHeader() const
Returns the header of the file read by extractHeaderAndOffsets.
Just a placeholder to use if we ever want to implement our own vector type.
Implements image manipulation helpers.
An interface of a class that can provide images views.
bool initDecoder(StreamPtr &&streamPtr)
Start decoding the stream and preparing data.