Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(97)

Unified Diff: core/src/fxcodec/codec/codec_int.h

Issue 1398383002: core/ difference with XFA (for information only). (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: 2015-11-24 version Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « core/src/fpdftext/text_int.h ('k') | core/src/fxcodec/codec/fx_codec.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: core/src/fxcodec/codec/codec_int.h
diff --git a/core/src/fxcodec/codec/codec_int.h b/core/src/fxcodec/codec/codec_int.h
index 1495f9e680f243e1b103df112192733d4aee0c65..5abe2e4a6ae2c84c5cff41b85583dc4b673309e8 100644
--- a/core/src/fxcodec/codec/codec_int.h
+++ b/core/src/fxcodec/codec/codec_int.h
@@ -187,11 +187,83 @@ class CCodec_JpegModule : public ICodec_JpegModule {
void Input(void* pContext,
const uint8_t* src_buf,
FX_DWORD src_size) override;
+#ifndef PDF_ENABLE_XFA
int ReadHeader(void* pContext, int* width, int* height, int* nComps) override;
+#else
+ int ReadHeader(void* pContext,
+ int* width,
+ int* height,
+ int* nComps,
+ CFX_DIBAttribute* pAttribute) override;
+#endif
int StartScanline(void* pContext, int down_scale) override;
FX_BOOL ReadScanline(void* pContext, uint8_t* dest_buf) override;
FX_DWORD GetAvailInput(void* pContext, uint8_t** avail_buf_ptr) override;
};
+#ifdef PDF_ENABLE_XFA
+#define PNG_ERROR_SIZE 256
+class CCodec_PngModule : public ICodec_PngModule {
+ public:
+ CCodec_PngModule() { FXSYS_memset(m_szLastError, '\0', PNG_ERROR_SIZE); }
+
+ virtual void* Start(void* pModule);
+ virtual void Finish(void* pContext);
+ virtual FX_BOOL Input(void* pContext,
+ const uint8_t* src_buf,
+ FX_DWORD src_size,
+ CFX_DIBAttribute* pAttribute);
+
+ protected:
+ FX_CHAR m_szLastError[PNG_ERROR_SIZE];
+};
+class CCodec_GifModule : public ICodec_GifModule {
+ public:
+ CCodec_GifModule() { FXSYS_memset(m_szLastError, '\0', 256); }
+ virtual void* Start(void* pModule);
+ virtual void Finish(void* pContext);
+ virtual FX_DWORD GetAvailInput(void* pContext, uint8_t** avail_buf_ptr);
+ virtual void Input(void* pContext, const uint8_t* src_buf, FX_DWORD src_size);
+
+ virtual int32_t ReadHeader(void* pContext,
+ int* width,
+ int* height,
+ int* pal_num,
+ void** pal_pp,
+ int* bg_index,
+ CFX_DIBAttribute* pAttribute);
+
+ virtual int32_t LoadFrameInfo(void* pContext, int* frame_num);
+
+ virtual int32_t LoadFrame(void* pContext,
+ int frame_num,
+ CFX_DIBAttribute* pAttribute);
+
+ protected:
+ FX_CHAR m_szLastError[256];
+};
+class CCodec_BmpModule : public ICodec_BmpModule {
+ public:
+ CCodec_BmpModule() { FXSYS_memset(m_szLastError, 0, sizeof(m_szLastError)); }
+ void* Start(void* pModule) override;
+ void Finish(void* pContext) override;
+ FX_DWORD GetAvailInput(void* pContext, uint8_t** avail_buf_ptr) override;
+ void Input(void* pContext,
+ const uint8_t* src_buf,
+ FX_DWORD src_size) override;
+ int32_t ReadHeader(void* pContext,
+ int32_t* width,
+ int32_t* height,
+ FX_BOOL* tb_flag,
+ int32_t* components,
+ int32_t* pal_num,
+ FX_DWORD** pal_pp,
+ CFX_DIBAttribute* pAttribute) override;
+ int32_t LoadImage(void* pContext) override;
+
+ protected:
+ FX_CHAR m_szLastError[256];
+};
+#endif
class CCodec_IccModule : public ICodec_IccModule {
public:
~CCodec_IccModule() override;
@@ -270,6 +342,27 @@ class CCodec_JpxModule : public ICodec_JpxModule {
void DestroyDecoder(CJPX_Decoder* pDecoder) override;
};
+#ifdef PDF_ENABLE_XFA
+class CCodec_TiffModule : public ICodec_TiffModule {
+ public:
+ // ICodec_TiffModule
+ void* CreateDecoder(IFX_FileRead* file_ptr) override;
+ void GetFrames(void* ctx, int32_t& frames) override;
+ FX_BOOL LoadFrameInfo(void* ctx,
+ int32_t frame,
+ FX_DWORD& width,
+ FX_DWORD& height,
+ FX_DWORD& comps,
+ FX_DWORD& bpc,
+ CFX_DIBAttribute* pAttribute) override;
+ FX_BOOL Decode(void* ctx, class CFX_DIBitmap* pDIBitmap) override;
+ void DestroyDecoder(void* ctx) override;
+
+ protected:
+ ~CCodec_TiffModule() override {}
+};
+
+#endif
class CCodec_Jbig2Context {
public:
CCodec_Jbig2Context();
« no previous file with comments | « core/src/fpdftext/text_int.h ('k') | core/src/fxcodec/codec/fx_codec.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698