summaryrefslogtreecommitdiff
path: root/core/src/fxcodec/codec/fx_codec_jpeg.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/fxcodec/codec/fx_codec_jpeg.cpp')
-rw-r--r--core/src/fxcodec/codec/fx_codec_jpeg.cpp26
1 files changed, 18 insertions, 8 deletions
diff --git a/core/src/fxcodec/codec/fx_codec_jpeg.cpp b/core/src/fxcodec/codec/fx_codec_jpeg.cpp
index 681678c264..779e7f6b37 100644
--- a/core/src/fxcodec/codec/fx_codec_jpeg.cpp
+++ b/core/src/fxcodec/codec/fx_codec_jpeg.cpp
@@ -287,10 +287,12 @@ static FX_BOOL _JpegLoadInfo(const uint8_t* src_buf,
jpeg_destroy_decompress(&cinfo);
return TRUE;
}
+
class CCodec_JpegDecoder : public CCodec_ScanlineDecoder {
public:
CCodec_JpegDecoder();
- ~CCodec_JpegDecoder();
+ ~CCodec_JpegDecoder() override;
+
FX_BOOL Create(const uint8_t* src_buf,
FX_DWORD src_size,
int width,
@@ -298,11 +300,16 @@ class CCodec_JpegDecoder : public CCodec_ScanlineDecoder {
int nComps,
FX_BOOL ColorTransform,
IFX_JpegProvider* pJP);
- virtual void Destroy() { delete this; }
- virtual void v_DownScale(int dest_width, int dest_height);
- virtual FX_BOOL v_Rewind();
- virtual uint8_t* v_GetNextLine();
- virtual FX_DWORD GetSrcOffset();
+ void Destroy() { delete this; }
+
+ // CCodec_ScanlineDecoder
+ void v_DownScale(int dest_width, int dest_height) override;
+ FX_BOOL v_Rewind() override;
+ uint8_t* v_GetNextLine() override;
+ FX_DWORD GetSrcOffset() override;
+
+ FX_BOOL InitDecode();
+
jmp_buf m_JmpBuf;
struct jpeg_decompress_struct cinfo;
struct jpeg_error_mgr jerr;
@@ -310,14 +317,17 @@ class CCodec_JpegDecoder : public CCodec_ScanlineDecoder {
const uint8_t* m_SrcBuf;
FX_DWORD m_SrcSize;
uint8_t* m_pScanlineBuf;
- FX_BOOL InitDecode();
- FX_BOOL m_bInited, m_bStarted, m_bJpegTransform;
+
+ FX_BOOL m_bInited;
+ FX_BOOL m_bStarted;
+ FX_BOOL m_bJpegTransform;
protected:
IFX_JpegProvider* m_pExtProvider;
void* m_pExtContext;
FX_DWORD m_nDefaultScaleDenom;
};
+
CCodec_JpegDecoder::CCodec_JpegDecoder() {
m_pScanlineBuf = NULL;
m_DownScale = 1;