OLD | NEW |
| (Empty) |
1 // Copyright 2016 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_INCLUDE_FPDFAPI_CPDF_STREAM_ACC_H_ | |
8 #define CORE_INCLUDE_FPDFAPI_CPDF_STREAM_ACC_H_ | |
9 | |
10 #include "core/include/fpdfapi/cpdf_stream.h" | |
11 #include "core/include/fpdfapi/cpdf_dictionary.h" | |
12 #include "core/include/fxcrt/fx_string.h" | |
13 #include "core/include/fxcrt/fx_system.h" | |
14 | |
15 class CPDF_StreamAcc { | |
16 public: | |
17 CPDF_StreamAcc(); | |
18 ~CPDF_StreamAcc(); | |
19 | |
20 void LoadAllData(const CPDF_Stream* pStream, | |
21 FX_BOOL bRawAccess = FALSE, | |
22 FX_DWORD estimated_size = 0, | |
23 FX_BOOL bImageAcc = FALSE); | |
24 | |
25 const CPDF_Stream* GetStream() const { return m_pStream; } | |
26 CPDF_Dictionary* GetDict() const { | |
27 return m_pStream ? m_pStream->GetDict() : nullptr; | |
28 } | |
29 | |
30 const uint8_t* GetData() const; | |
31 FX_DWORD GetSize() const; | |
32 const CFX_ByteString& GetImageDecoder() const { return m_ImageDecoder; } | |
33 const CPDF_Dictionary* GetImageParam() const { return m_pImageParam; } | |
34 uint8_t* DetachData(); | |
35 | |
36 protected: | |
37 uint8_t* m_pData; | |
38 FX_DWORD m_dwSize; | |
39 FX_BOOL m_bNewBuf; | |
40 CFX_ByteString m_ImageDecoder; | |
41 CPDF_Dictionary* m_pImageParam; | |
42 const CPDF_Stream* m_pStream; | |
43 uint8_t* m_pSrcData; | |
44 }; | |
45 | |
46 #endif // CORE_INCLUDE_FPDFAPI_CPDF_STREAM_ACC_H_ | |
OLD | NEW |