// Copyright 2014 PDFium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com #ifndef FPDFSDK_INCLUDE_FSDK_RENDERCONTEXT_H_ #define FPDFSDK_INCLUDE_FSDK_RENDERCONTEXT_H_ #include "core/fpdfapi/fpdf_render/include/cpdf_progressiverenderer.h" #include "fpdfsdk/include/fsdk_define.h" #include "public/fpdf_progressive.h" // Everything about rendering is put here: for OOM recovery class CRenderContext { public: CRenderContext() { Clear(); } ~CRenderContext(); void Clear(); CFX_RenderDevice* m_pDevice; CPDF_RenderContext* m_pContext; CPDF_ProgressiveRenderer* m_pRenderer; CPDF_AnnotList* m_pAnnots; CPDF_RenderOptions* m_pOptions; #ifdef _WIN32_WCE CFX_DIBitmap* m_pBitmap; HBITMAP m_hBitmap; #endif }; class IFSDK_PAUSE_Adapter : public IFX_Pause { public: explicit IFSDK_PAUSE_Adapter(IFSDK_PAUSE* IPause); ~IFSDK_PAUSE_Adapter() override; FX_BOOL NeedToPauseNow() override; private: IFSDK_PAUSE* m_IPause; }; #endif // FPDFSDK_INCLUDE_FSDK_RENDERCONTEXT_H_