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 FPDFSDK_INCLUDE_FSDK_RENDERCONTEXT_H_
8 #define FPDFSDK_INCLUDE_FSDK_RENDERCONTEXT_H_
9 
10 #include "../../public/fpdf_progressive.h"
11 #include "fsdk_define.h"
12 
13 // Everything about rendering is put here: for OOM recovery
14 class CRenderContext
15 {
16 public:
CRenderContext()17 	CRenderContext() { Clear(); }
18 	~CRenderContext();
19 
20 	void Clear();
21 
22 	CFX_RenderDevice*		m_pDevice;
23 	CPDF_RenderContext*		m_pContext;
24 	CPDF_ProgressiveRenderer*	m_pRenderer;
25 	CPDF_AnnotList*			m_pAnnots;
26 	CPDF_RenderOptions*		m_pOptions;
27 #ifdef _WIN32_WCE
28 	CFX_DIBitmap*	m_pBitmap;
29 	HBITMAP			m_hBitmap;
30 #endif
31 };
32 
33 class IFSDK_PAUSE_Adapter : public IFX_Pause
34 {
35 public:
36 	IFSDK_PAUSE_Adapter(IFSDK_PAUSE* IPause );
37 	FX_BOOL NeedToPauseNow();
38 
39 private:
40 	IFSDK_PAUSE* m_IPause;
41 };
42 
43 #endif  // FPDFSDK_INCLUDE_FSDK_RENDERCONTEXT_H_
44