7#ifndef CORE_FXCODEC_JPEG_JPEG_PROGRESSIVE_DECODER_H_
8#define CORE_FXCODEC_JPEG_JPEG_PROGRESSIVE_DECODER_H_
14#include "core/fxcodec/progressive_decoder_iface.h"
18class CFX_DIBAttribute;
35 CFX_DIBAttribute* pAttribute);
43 RetainPtr<CFX_CodecMemory> codec_memory)
override;
46 JpegProgressiveDecoder();
52using JpegProgressiveDecoder =
fxcodec::JpegProgressiveDecoder;
jpeg_decompress_struct m_Info
~JpegProgressiveDecoder() override
static void InitializeGlobals()
static bool ReadScanline(Context *pContext, uint8_t *dest_buf)
static jmp_buf & GetJumpMark(Context *pContext)
static int ReadHeader(Context *pContext, int *width, int *height, int *nComps, CFX_DIBAttribute *pAttribute)
static JpegProgressiveDecoder * GetInstance()
static std::unique_ptr< Context > Start()
static void DestroyGlobals()
FX_FILESIZE GetAvailInput(Context *pContext) const override
bool Input(Context *pContext, RetainPtr< CFX_CodecMemory > codec_memory) override
static bool StartScanline(Context *pContext, int down_scale)
static void JpegLoadAttribute(const jpeg_decompress_struct &info, CFX_DIBAttribute *pAttribute)
static void src_skip_data(jpeg_decompress_struct *cinfo, long num)
static void error_fatal(j_common_ptr cinfo)