// 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 XFA_SRC_FWL_CORE_FWL_THREADIMP_H_ #define XFA_SRC_FWL_CORE_FWL_THREADIMP_H_ #include "xfa/include/fwl/core/fwl_thread.h" // For FWL_HTHREAD. class CFWL_NoteDriver; class IFWL_NoteDriver; class CFWL_ThreadImp { public: virtual ~CFWL_ThreadImp() {} IFWL_Thread* GetInterface() const { return m_pIface; } virtual FWL_ERR Run(FWL_HTHREAD hThread); protected: CFWL_ThreadImp(IFWL_Thread* pIface) : m_pIface(pIface) {} private: IFWL_Thread* const m_pIface; }; class CFWL_NoteThreadImp : public CFWL_ThreadImp { public: CFWL_NoteThreadImp(IFWL_NoteThread* pIface); virtual ~CFWL_NoteThreadImp(); FWL_ERR Run(FWL_HTHREAD hThread) override; virtual IFWL_NoteDriver* GetNoteDriver(); protected: CFWL_NoteDriver* const m_pNoteDriver; }; #endif // XFA_SRC_FWL_CORE_FWL_THREADIMP_H_