diff options
author | Lei Zhang <thestig@chromium.org> | 2015-12-22 14:37:03 -0800 |
---|---|---|
committer | Lei Zhang <thestig@chromium.org> | 2015-12-22 14:37:03 -0800 |
commit | be9095d0b2819cdc88785b0b4fdfccf837eb96a9 (patch) | |
tree | 8c81760b66d1e8da186bddc52d38f350f4e85bf1 /core/include/fxcodec/fx_codec.h | |
parent | 2d63eaaa39bb3d402c658b2a6e0eae50a30f1d89 (diff) | |
download | pdfium-be9095d0b2819cdc88785b0b4fdfccf837eb96a9.tar.xz |
Revert "Cleanup: Remove unused CFX_PSRenderer and various encoders it used."
This reverts commit 2d63eaaa39bb3d402c658b2a6e0eae50a30f1d89.
Broke the Windows build, though it is likely the code is unused on
Windows too.
Review URL: https://codereview.chromium.org/1540993004 .
Diffstat (limited to 'core/include/fxcodec/fx_codec.h')
-rw-r--r-- | core/include/fxcodec/fx_codec.h | 63 |
1 files changed, 47 insertions, 16 deletions
diff --git a/core/include/fxcodec/fx_codec.h b/core/include/fxcodec/fx_codec.h index 593940df84..c068a08025 100644 --- a/core/include/fxcodec/fx_codec.h +++ b/core/include/fxcodec/fx_codec.h @@ -25,6 +25,7 @@ class ICodec_JpxModule; class ICodec_Jbig2Module; class ICodec_IccModule; class ICodec_FlateModule; +class ICodec_Jbig2Encoder; class ICodec_ScanlineDecoder; class CCodec_ModuleMgr { @@ -51,6 +52,14 @@ class CCodec_ModuleMgr { class ICodec_BasicModule { public: virtual ~ICodec_BasicModule() {} + virtual FX_BOOL RunLengthEncode(const uint8_t* src_buf, + FX_DWORD src_size, + uint8_t*& dest_buf, + FX_DWORD& dest_size) = 0; + virtual FX_BOOL A85Encode(const uint8_t* src_buf, + FX_DWORD src_size, + uint8_t*& dest_buf, + FX_DWORD& dest_size) = 0; virtual ICodec_ScanlineDecoder* CreateRunLengthDecoder(const uint8_t* src_buf, FX_DWORD src_size, int width, @@ -108,14 +117,18 @@ class ICodec_FlateModule { FX_DWORD estimated_size, uint8_t*& dest_buf, FX_DWORD& dest_size) = 0; - virtual bool Encode(const uint8_t* src_buf, - FX_DWORD src_size, - uint8_t** dest_buf, - FX_DWORD* dest_size) = 0; - virtual bool PngEncode(const uint8_t* src_buf, + virtual FX_BOOL Encode(const uint8_t* src_buf, FX_DWORD src_size, - uint8_t** dest_buf, - FX_DWORD* dest_size) = 0; + int predictor, + int Colors, + int BitsPerComponent, + int Columns, + uint8_t*& dest_buf, + FX_DWORD& dest_size) = 0; + virtual FX_BOOL Encode(const uint8_t* src_buf, + FX_DWORD src_size, + uint8_t*& dest_buf, + FX_DWORD& dest_size) = 0; }; class ICodec_FaxModule { public: @@ -131,8 +144,14 @@ class ICodec_FaxModule { FX_BOOL BlackIs1, int Columns, int Rows) = 0; -}; + virtual FX_BOOL Encode(const uint8_t* src_buf, + int width, + int height, + int pitch, + uint8_t*& dest_buf, + FX_DWORD& dest_size) = 0; +}; class ICodec_JpegModule { public: virtual ~ICodec_JpegModule() {} @@ -144,13 +163,22 @@ class ICodec_JpegModule { int nComps, FX_BOOL ColorTransform) = 0; - virtual bool LoadInfo(const uint8_t* src_buf, - FX_DWORD src_size, - int* width, - int* height, - int* num_components, - int* bits_per_components, - bool* color_transform) = 0; + virtual FX_BOOL LoadInfo(const uint8_t* src_buf, + FX_DWORD src_size, + int& width, + int& height, + int& num_components, + int& bits_per_components, + FX_BOOL& color_transform, + uint8_t** icc_buf_ptr = NULL, + FX_DWORD* icc_length = NULL) = 0; + + virtual FX_BOOL Encode(const class CFX_DIBSource* pSource, + uint8_t*& dest_buf, + FX_STRSIZE& dest_size, + int quality = 75, + const uint8_t* icc_buf = NULL, + FX_DWORD icc_length = 0) = 0; virtual void* Start() = 0; @@ -214,7 +242,10 @@ class ICodec_Jbig2Module { IFX_Pause* pPause) = 0; virtual void DestroyJbig2Context(void* pJbig2Content) = 0; }; - +class ICodec_Jbig2Encoder { + public: + virtual ~ICodec_Jbig2Encoder() {} +}; class ICodec_IccModule { public: typedef enum { |