blob: b2bc163b49a88a0566ff4b07bf6c54d3d7d5b56e [file] [log] [blame]
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -07001// 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.
Lei Zhanga6d9f0e2015-06-13 00:48:38 -07004
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -07005// Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6
Tom Sepez19922bb2015-05-28 13:23:12 -07007#ifndef FPDFSDK_INCLUDE_FSDK_RENDERCONTEXT_H_
8#define FPDFSDK_INCLUDE_FSDK_RENDERCONTEXT_H_
Tom Sepez1ed8a212015-05-11 15:25:39 -07009
10#include "../../public/fpdf_progressive.h"
Tom Sepez04db6532015-05-27 16:24:18 -070011#include "fsdk_define.h"
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -070012
13// Everything about rendering is put here: for OOM recovery
Lei Zhanga6d9f0e2015-06-13 00:48:38 -070014class CRenderContext
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -070015{
16public:
17 CRenderContext() { Clear(); }
18 ~CRenderContext();
Lei Zhanga6d9f0e2015-06-13 00:48:38 -070019
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -070020 void Clear();
Lei Zhanga6d9f0e2015-06-13 00:48:38 -070021
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -070022 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
33class IFSDK_PAUSE_Adapter : public IFX_Pause
34{
35public:
36 IFSDK_PAUSE_Adapter(IFSDK_PAUSE* IPause );
37 FX_BOOL NeedToPauseNow();
Lei Zhanga6d9f0e2015-06-13 00:48:38 -070038
John Abd-El-Malek3f3b45c2014-05-23 17:28:10 -070039private:
40 IFSDK_PAUSE* m_IPause;
41};
Tom Sepez04db6532015-05-27 16:24:18 -070042
Tom Sepez19922bb2015-05-28 13:23:12 -070043#endif // FPDFSDK_INCLUDE_FSDK_RENDERCONTEXT_H_