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

Side by Side Diff: core/src/fxge/dib/dib_int.h

Issue 1088733002: Kill CFX_Object. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: Rebase. Created 5 years, 8 months 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/src/fxge/apple/apple_int.h ('k') | core/src/fxge/dib/fx_dib_convert.cpp » ('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 _DIB_INT_H_ 7 #ifndef _DIB_INT_H_
8 #define _DIB_INT_H_ 8 #define _DIB_INT_H_
9 9
10 class CPDF_FixedMatrix : public CFX_Object 10 class CPDF_FixedMatrix
11 { 11 {
12 public: 12 public:
13 CPDF_FixedMatrix(const CFX_AffineMatrix& src, int bits) 13 CPDF_FixedMatrix(const CFX_AffineMatrix& src, int bits)
14 { 14 {
15 base = 1 << bits; 15 base = 1 << bits;
16 a = FXSYS_round(src.a * base); 16 a = FXSYS_round(src.a * base);
17 b = FXSYS_round(src.b * base); 17 b = FXSYS_round(src.b * base);
18 c = FXSYS_round(src.c * base); 18 c = FXSYS_round(src.c * base);
19 d = FXSYS_round(src.d * base); 19 d = FXSYS_round(src.d * base);
20 e = FXSYS_round(src.e * base); 20 e = FXSYS_round(src.e * base);
21 f = FXSYS_round(src.f * base); 21 f = FXSYS_round(src.f * base);
22 } 22 }
23 inline void Transform(int x, int y, int& x1, int& y1) 23 inline void Transform(int x, int y, int& x1, int& y1)
24 { 24 {
25 x1 = (a * x + c * y + e + base / 2) / base; 25 x1 = (a * x + c * y + e + base / 2) / base;
26 y1 = (b * x + d * y + f + base / 2) / base; 26 y1 = (b * x + d * y + f + base / 2) / base;
27 } 27 }
28 int a, b, c, d, e, f; 28 int a, b, c, d, e, f;
29 int base; 29 int base;
30 }; 30 };
31 #define FPDF_HUGE_IMAGE_SIZE 60000000 31 #define FPDF_HUGE_IMAGE_SIZE 60000000
32 struct PixelWeight { 32 struct PixelWeight {
33 int m_SrcStart; 33 int m_SrcStart;
34 int m_SrcEnd; 34 int m_SrcEnd;
35 int m_Weights[1]; 35 int m_Weights[1];
36 }; 36 };
37 class CWeightTable : public CFX_Object 37 class CWeightTable
38 { 38 {
39 public: 39 public:
40 CWeightTable() 40 CWeightTable()
41 { 41 {
42 m_pWeightTables = NULL; 42 m_pWeightTables = NULL;
43 } 43 }
44 ~CWeightTable() 44 ~CWeightTable()
45 { 45 {
46 if(m_pWeightTables) { 46 if(m_pWeightTables) {
47 FX_Free(m_pWeightTables); 47 FX_Free(m_pWeightTables);
48 } 48 }
49 m_pWeightTables = NULL; 49 m_pWeightTables = NULL;
50 } 50 }
51 void Calc(int dest_len, int dest_min, int dest_max, i nt src_len, int src_min, int src_max, int flags); 51 void Calc(int dest_len, int dest_min, int dest_max, i nt src_len, int src_min, int src_max, int flags);
52 PixelWeight* GetPixelWeight(int pixel) 52 PixelWeight* GetPixelWeight(int pixel)
53 { 53 {
54 return (PixelWeight*)(m_pWeightTables + (pixel - m_DestMin) * m_ItemSize ); 54 return (PixelWeight*)(m_pWeightTables + (pixel - m_DestMin) * m_ItemSize );
55 } 55 }
56 int m_DestMin, m_ItemSize; 56 int m_DestMin, m_ItemSize;
57 FX_LPBYTE m_pWeightTables; 57 FX_LPBYTE m_pWeightTables;
58 }; 58 };
59 class CStretchEngine : public CFX_Object 59 class CStretchEngine
60 { 60 {
61 public: 61 public:
62 CStretchEngine(IFX_ScanlineComposer* pDestBitmap, FXDIB_Format dest_format, 62 CStretchEngine(IFX_ScanlineComposer* pDestBitmap, FXDIB_Format dest_format,
63 int dest_width, int dest_height, const FX_RECT& clip_rect, 63 int dest_width, int dest_height, const FX_RECT& clip_rect,
64 const CFX_DIBSource* pSrcBitmap, int flags); 64 const CFX_DIBSource* pSrcBitmap, int flags);
65 ~CStretchEngine(); 65 ~CStretchEngine();
66 FX_BOOL Continue(IFX_Pause* pPause); 66 FX_BOOL Continue(IFX_Pause* pPause);
67 public: 67 public:
68 FXDIB_Format m_DestFormat; 68 FXDIB_Format m_DestFormat;
69 int m_DestBpp, m_SrcBpp, m_bHasAlpha; 69 int m_DestBpp, m_SrcBpp, m_bHasAlpha;
(...skipping 14 matching lines...) Expand all
84 int m_Flags; 84 int m_Flags;
85 CWeightTable m_WeightTable; 85 CWeightTable m_WeightTable;
86 int m_CurRow; 86 int m_CurRow;
87 FX_BOOL StartStretchHorz(); 87 FX_BOOL StartStretchHorz();
88 FX_BOOL ContinueStretchHorz(IFX_Pause* pPause); 88 FX_BOOL ContinueStretchHorz(IFX_Pause* pPause);
89 void StretchVert(); 89 void StretchVert();
90 int m_State; 90 int m_State;
91 }; 91 };
92 92
93 #endif // _DIB_INT_H_ 93 #endif // _DIB_INT_H_
OLDNEW
« no previous file with comments | « core/src/fxge/apple/apple_int.h ('k') | core/src/fxge/dib/fx_dib_convert.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698