Merge to XFA: Remove FX_BSTR and FX_WSTR typedefs.
[pdfium.git] / xfa / src / fwl / src / core / include / fwl_targetimp.h
1 // Copyright 2014 PDFium Authors. All rights reserved.\r
2 // Use of this source code is governed by a BSD-style license that can be\r
3 // found in the LICENSE file.\r
4 \r
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com\r
6 \r
7 #ifndef _FWL_TARGET_IMP_H\r
8 #define _FWL_TARGET_IMP_H\r
9 class IFWL_Target;\r
10 class CFWL_Target\r
11 {\r
12 public:\r
13     virtual FX_DWORD            Release();\r
14     virtual IFWL_Target*        Retain();\r
15     virtual     FX_DWORD                GetRefCount() const;\r
16     virtual FWL_ERR                     GetClassName(CFX_WideString &wsClass) const;\r
17     virtual FX_DWORD            GetClassID() const;\r
18     virtual FX_BOOL                     IsInstance(const CFX_WideStringC& wsClass) const;\r
19     virtual FWL_ERR                     Initialize();\r
20     virtual FWL_ERR                     Finalize();\r
21 protected:\r
22     CFWL_Target();\r
23     virtual ~CFWL_Target();\r
24     FX_DWORD    m_dwRefCount;\r
25 };\r
26 class IFWL_TargetData : public IFWL_Target\r
27 {\r
28 public:\r
29     void* GetData();\r
30     void          SetData(void* pData);\r
31 };\r
32 #endif\r