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

Side by Side Diff: core/include/fxcodec/fx_codec.h

Issue 1545563003: Cleanup: Remove unused CFX_PSRenderer and various encoders it used. (Closed) Base URL: https://pdfium.googlesource.com/pdfium@master
Patch Set: rebase Created 5 years 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 unified diff | Download patch
« no previous file with comments | « core/include/fpdfapi/fpdf_parser.h ('k') | core/include/fxge/fx_ge.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 PDFium Authors. All rights reserved. 1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 6
7 #ifndef CORE_INCLUDE_FXCODEC_FX_CODEC_H_ 7 #ifndef CORE_INCLUDE_FXCODEC_FX_CODEC_H_
8 #define CORE_INCLUDE_FXCODEC_FX_CODEC_H_ 8 #define CORE_INCLUDE_FXCODEC_FX_CODEC_H_
9 9
10 #include <vector> 10 #include <vector>
11 11
12 #include "core/include/fxcrt/fx_basic.h" 12 #include "core/include/fxcrt/fx_basic.h"
13 #include "fx_codec_def.h" 13 #include "fx_codec_def.h"
14 #include "third_party/base/nonstd_unique_ptr.h" 14 #include "third_party/base/nonstd_unique_ptr.h"
15 15
16 class CFX_DIBSource; 16 class CFX_DIBSource;
17 class CJPX_Decoder; 17 class CJPX_Decoder;
18 class CPDF_PrivateData; 18 class CPDF_PrivateData;
19 class CPDF_StreamAcc; 19 class CPDF_StreamAcc;
20 class ICodec_ScanlineDecoder; 20 class ICodec_ScanlineDecoder;
21 class ICodec_BasicModule; 21 class ICodec_BasicModule;
22 class ICodec_FaxModule; 22 class ICodec_FaxModule;
23 class ICodec_JpegModule; 23 class ICodec_JpegModule;
24 class ICodec_JpxModule; 24 class ICodec_JpxModule;
25 class ICodec_Jbig2Module; 25 class ICodec_Jbig2Module;
26 class ICodec_IccModule; 26 class ICodec_IccModule;
27 class ICodec_FlateModule; 27 class ICodec_FlateModule;
28 class ICodec_Jbig2Encoder;
29 class ICodec_ScanlineDecoder; 28 class ICodec_ScanlineDecoder;
30 29
31 class CCodec_ModuleMgr { 30 class CCodec_ModuleMgr {
32 public: 31 public:
33 CCodec_ModuleMgr(); 32 CCodec_ModuleMgr();
34 33
35 ICodec_BasicModule* GetBasicModule() const { return m_pBasicModule.get(); } 34 ICodec_BasicModule* GetBasicModule() const { return m_pBasicModule.get(); }
36 ICodec_FaxModule* GetFaxModule() const { return m_pFaxModule.get(); } 35 ICodec_FaxModule* GetFaxModule() const { return m_pFaxModule.get(); }
37 ICodec_JpegModule* GetJpegModule() const { return m_pJpegModule.get(); } 36 ICodec_JpegModule* GetJpegModule() const { return m_pJpegModule.get(); }
38 ICodec_JpxModule* GetJpxModule() const { return m_pJpxModule.get(); } 37 ICodec_JpxModule* GetJpxModule() const { return m_pJpxModule.get(); }
39 ICodec_Jbig2Module* GetJbig2Module() const { return m_pJbig2Module.get(); } 38 ICodec_Jbig2Module* GetJbig2Module() const { return m_pJbig2Module.get(); }
40 ICodec_IccModule* GetIccModule() const { return m_pIccModule.get(); } 39 ICodec_IccModule* GetIccModule() const { return m_pIccModule.get(); }
41 ICodec_FlateModule* GetFlateModule() const { return m_pFlateModule.get(); } 40 ICodec_FlateModule* GetFlateModule() const { return m_pFlateModule.get(); }
42 41
43 protected: 42 protected:
44 nonstd::unique_ptr<ICodec_BasicModule> m_pBasicModule; 43 nonstd::unique_ptr<ICodec_BasicModule> m_pBasicModule;
45 nonstd::unique_ptr<ICodec_FaxModule> m_pFaxModule; 44 nonstd::unique_ptr<ICodec_FaxModule> m_pFaxModule;
46 nonstd::unique_ptr<ICodec_JpegModule> m_pJpegModule; 45 nonstd::unique_ptr<ICodec_JpegModule> m_pJpegModule;
47 nonstd::unique_ptr<ICodec_JpxModule> m_pJpxModule; 46 nonstd::unique_ptr<ICodec_JpxModule> m_pJpxModule;
48 nonstd::unique_ptr<ICodec_Jbig2Module> m_pJbig2Module; 47 nonstd::unique_ptr<ICodec_Jbig2Module> m_pJbig2Module;
49 nonstd::unique_ptr<ICodec_IccModule> m_pIccModule; 48 nonstd::unique_ptr<ICodec_IccModule> m_pIccModule;
50 nonstd::unique_ptr<ICodec_FlateModule> m_pFlateModule; 49 nonstd::unique_ptr<ICodec_FlateModule> m_pFlateModule;
51 }; 50 };
52 class ICodec_BasicModule { 51 class ICodec_BasicModule {
53 public: 52 public:
54 virtual ~ICodec_BasicModule() {} 53 virtual ~ICodec_BasicModule() {}
55 virtual FX_BOOL RunLengthEncode(const uint8_t* src_buf,
56 FX_DWORD src_size,
57 uint8_t*& dest_buf,
58 FX_DWORD& dest_size) = 0;
59 virtual FX_BOOL A85Encode(const uint8_t* src_buf,
60 FX_DWORD src_size,
61 uint8_t*& dest_buf,
62 FX_DWORD& dest_size) = 0;
63 virtual ICodec_ScanlineDecoder* CreateRunLengthDecoder(const uint8_t* src_buf, 54 virtual ICodec_ScanlineDecoder* CreateRunLengthDecoder(const uint8_t* src_buf,
64 FX_DWORD src_size, 55 FX_DWORD src_size,
65 int width, 56 int width,
66 int height, 57 int height,
67 int nComps, 58 int nComps,
68 int bpc) = 0; 59 int bpc) = 0;
69 }; 60 };
70 61
71 class ICodec_ScanlineDecoder { 62 class ICodec_ScanlineDecoder {
72 public: 63 public:
(...skipping 37 matching lines...) Expand 10 before | Expand all | Expand 10 after
110 const uint8_t* src_buf, 101 const uint8_t* src_buf,
111 FX_DWORD src_size, 102 FX_DWORD src_size,
112 FX_BOOL bEarlyChange, 103 FX_BOOL bEarlyChange,
113 int predictor, 104 int predictor,
114 int Colors, 105 int Colors,
115 int BitsPerComponent, 106 int BitsPerComponent,
116 int Columns, 107 int Columns,
117 FX_DWORD estimated_size, 108 FX_DWORD estimated_size,
118 uint8_t*& dest_buf, 109 uint8_t*& dest_buf,
119 FX_DWORD& dest_size) = 0; 110 FX_DWORD& dest_size) = 0;
120 virtual FX_BOOL Encode(const uint8_t* src_buf, 111 virtual bool Encode(const uint8_t* src_buf,
112 FX_DWORD src_size,
113 uint8_t** dest_buf,
114 FX_DWORD* dest_size) = 0;
115 virtual bool PngEncode(const uint8_t* src_buf,
121 FX_DWORD src_size, 116 FX_DWORD src_size,
122 int predictor, 117 uint8_t** dest_buf,
123 int Colors, 118 FX_DWORD* dest_size) = 0;
124 int BitsPerComponent,
125 int Columns,
126 uint8_t*& dest_buf,
127 FX_DWORD& dest_size) = 0;
128 virtual FX_BOOL Encode(const uint8_t* src_buf,
129 FX_DWORD src_size,
130 uint8_t*& dest_buf,
131 FX_DWORD& dest_size) = 0;
132 }; 119 };
133 class ICodec_FaxModule { 120 class ICodec_FaxModule {
134 public: 121 public:
135 virtual ~ICodec_FaxModule() {} 122 virtual ~ICodec_FaxModule() {}
136 123
137 virtual ICodec_ScanlineDecoder* CreateDecoder(const uint8_t* src_buf, 124 virtual ICodec_ScanlineDecoder* CreateDecoder(const uint8_t* src_buf,
138 FX_DWORD src_size, 125 FX_DWORD src_size,
139 int width, 126 int width,
140 int height, 127 int height,
141 int K, 128 int K,
142 FX_BOOL EndOfLine, 129 FX_BOOL EndOfLine,
143 FX_BOOL EncodedByteAlign, 130 FX_BOOL EncodedByteAlign,
144 FX_BOOL BlackIs1, 131 FX_BOOL BlackIs1,
145 int Columns, 132 int Columns,
146 int Rows) = 0; 133 int Rows) = 0;
134 };
147 135
148 virtual FX_BOOL Encode(const uint8_t* src_buf,
149 int width,
150 int height,
151 int pitch,
152 uint8_t*& dest_buf,
153 FX_DWORD& dest_size) = 0;
154 };
155 class ICodec_JpegModule { 136 class ICodec_JpegModule {
156 public: 137 public:
157 virtual ~ICodec_JpegModule() {} 138 virtual ~ICodec_JpegModule() {}
158 139
159 virtual ICodec_ScanlineDecoder* CreateDecoder(const uint8_t* src_buf, 140 virtual ICodec_ScanlineDecoder* CreateDecoder(const uint8_t* src_buf,
160 FX_DWORD src_size, 141 FX_DWORD src_size,
161 int width, 142 int width,
162 int height, 143 int height,
163 int nComps, 144 int nComps,
164 FX_BOOL ColorTransform) = 0; 145 FX_BOOL ColorTransform) = 0;
165 146
166 virtual FX_BOOL LoadInfo(const uint8_t* src_buf, 147 virtual bool LoadInfo(const uint8_t* src_buf,
167 FX_DWORD src_size, 148 FX_DWORD src_size,
168 int& width, 149 int* width,
169 int& height, 150 int* height,
170 int& num_components, 151 int* num_components,
171 int& bits_per_components, 152 int* bits_per_components,
172 FX_BOOL& color_transform, 153 bool* color_transform) = 0;
173 uint8_t** icc_buf_ptr = NULL,
174 FX_DWORD* icc_length = NULL) = 0;
175
176 virtual FX_BOOL Encode(const class CFX_DIBSource* pSource,
177 uint8_t*& dest_buf,
178 FX_STRSIZE& dest_size,
179 int quality = 75,
180 const uint8_t* icc_buf = NULL,
181 FX_DWORD icc_length = 0) = 0;
182 154
183 virtual void* Start() = 0; 155 virtual void* Start() = 0;
184 156
185 virtual void Finish(void* pContext) = 0; 157 virtual void Finish(void* pContext) = 0;
186 158
187 virtual void Input(void* pContext, 159 virtual void Input(void* pContext,
188 const uint8_t* src_buf, 160 const uint8_t* src_buf,
189 FX_DWORD src_size) = 0; 161 FX_DWORD src_size) = 0;
190 162
191 virtual int ReadHeader(void* pContext, 163 virtual int ReadHeader(void* pContext,
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
235 CPDF_StreamAcc* src_stream, 207 CPDF_StreamAcc* src_stream,
236 CPDF_StreamAcc* global_stream, 208 CPDF_StreamAcc* global_stream,
237 uint8_t* dest_buf, 209 uint8_t* dest_buf,
238 FX_DWORD dest_pitch, 210 FX_DWORD dest_pitch,
239 IFX_Pause* pPause) = 0; 211 IFX_Pause* pPause) = 0;
240 212
241 virtual FXCODEC_STATUS ContinueDecode(void* pJbig2Content, 213 virtual FXCODEC_STATUS ContinueDecode(void* pJbig2Content,
242 IFX_Pause* pPause) = 0; 214 IFX_Pause* pPause) = 0;
243 virtual void DestroyJbig2Context(void* pJbig2Content) = 0; 215 virtual void DestroyJbig2Context(void* pJbig2Content) = 0;
244 }; 216 };
245 class ICodec_Jbig2Encoder { 217
246 public:
247 virtual ~ICodec_Jbig2Encoder() {}
248 };
249 class ICodec_IccModule { 218 class ICodec_IccModule {
250 public: 219 public:
251 typedef enum { 220 typedef enum {
252 IccCS_Unknown = 0, 221 IccCS_Unknown = 0,
253 IccCS_XYZ, 222 IccCS_XYZ,
254 IccCS_Lab, 223 IccCS_Lab,
255 IccCS_Luv, 224 IccCS_Luv,
256 IccCS_YCbCr, 225 IccCS_YCbCr,
257 IccCS_Yxy, 226 IccCS_Yxy,
258 IccCS_Hsv, 227 IccCS_Hsv,
(...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after
335 FX_BOOL MD5ComputeID(const void* buf, FX_DWORD dwSize, uint8_t ID[16]); 304 FX_BOOL MD5ComputeID(const void* buf, FX_DWORD dwSize, uint8_t ID[16]);
336 void FaxG4Decode(const uint8_t* src_buf, 305 void FaxG4Decode(const uint8_t* src_buf,
337 FX_DWORD src_size, 306 FX_DWORD src_size,
338 int* pbitpos, 307 int* pbitpos,
339 uint8_t* dest_buf, 308 uint8_t* dest_buf,
340 int width, 309 int width,
341 int height, 310 int height,
342 int pitch); 311 int pitch);
343 312
344 #endif // CORE_INCLUDE_FXCODEC_FX_CODEC_H_ 313 #endif // CORE_INCLUDE_FXCODEC_FX_CODEC_H_
OLDNEW
« no previous file with comments | « core/include/fpdfapi/fpdf_parser.h ('k') | core/include/fxge/fx_ge.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698