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

Side by Side Diff: core/fpdfapi/fpdf_edit/editint.h

Issue 2386263003: Move core/fpdfapi/fpdf_edit to core/fpdfapi/edit (Closed)
Patch Set: Created 4 years, 2 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
OLDNEW
(Empty)
1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
7 #ifndef CORE_FPDFAPI_FPDF_EDIT_EDITINT_H_
8 #define CORE_FPDFAPI_FPDF_EDIT_EDITINT_H_
9
10 #include <vector>
11
12 #include "core/fxcrt/fx_basic.h"
13 #include "core/fxcrt/fx_stream.h"
14 #include "core/fxcrt/fx_system.h"
15
16 class CPDF_Creator;
17 class CPDF_Object;
18
19 class CPDF_ObjectStream {
20 public:
21 struct Item {
22 uint32_t objnum;
23 FX_STRSIZE offset;
24 };
25
26 CPDF_ObjectStream();
27 ~CPDF_ObjectStream();
28
29 void Start();
30 FX_FILESIZE End(CPDF_Creator* pCreator);
31 void CompressIndirectObject(uint32_t dwObjNum, const CPDF_Object* pObj);
32 void CompressIndirectObject(uint32_t dwObjNum,
33 const uint8_t* pBuffer,
34 uint32_t dwSize);
35
36 std::vector<Item> m_Items;
37 CFX_ByteTextBuf m_Buffer;
38 uint32_t m_dwObjNum;
39 int32_t m_index;
40 };
41
42 class CPDF_XRefStream {
43 public:
44 struct Index {
45 uint32_t objnum;
46 uint32_t count;
47 };
48
49 CPDF_XRefStream();
50 ~CPDF_XRefStream();
51
52 FX_BOOL Start();
53 int32_t CompressIndirectObject(uint32_t dwObjNum,
54 const CPDF_Object* pObj,
55 CPDF_Creator* pCreator);
56 int32_t CompressIndirectObject(uint32_t dwObjNum,
57 const uint8_t* pBuffer,
58 uint32_t dwSize,
59 CPDF_Creator* pCreator);
60 FX_BOOL End(CPDF_Creator* pCreator, FX_BOOL bEOF = FALSE);
61 void AddObjectNumberToIndexArray(uint32_t objnum);
62 FX_BOOL EndXRefStream(CPDF_Creator* pCreator);
63
64 std::vector<Index> m_IndexArray;
65 FX_FILESIZE m_PrevOffset;
66 uint32_t m_dwTempObjNum;
67
68 protected:
69 int32_t EndObjectStream(CPDF_Creator* pCreator, FX_BOOL bEOF = TRUE);
70 FX_BOOL GenerateXRefStream(CPDF_Creator* pCreator, FX_BOOL bEOF);
71
72 size_t m_iSeg;
73 CPDF_ObjectStream m_ObjStream;
74 CFX_ByteTextBuf m_Buffer;
75 };
76
77 #endif // CORE_FPDFAPI_FPDF_EDIT_EDITINT_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698