• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2012 The Chromium 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 #ifndef PPAPI_CPP_PRIVATE_INSTANCE_PRIVATE_H_
6 #define PPAPI_CPP_PRIVATE_INSTANCE_PRIVATE_H_
7 
8 /**
9  * @file
10  * Defines the API ...
11  *
12  * @addtogroup CPP
13  * @{
14  */
15 
16 #include "ppapi/c/ppb_console.h"
17 #include "ppapi/cpp/instance.h"
18 
19 /** The C++ interface to the Pepper API. */
20 namespace pp {
21 
22 class Var;
23 class VarPrivate;
24 
25 class InstancePrivate : public Instance {
26  public:
27   explicit InstancePrivate(PP_Instance instance);
28   virtual ~InstancePrivate();
29 
30   // @{
31   /// @name PPP_Instance_Private methods for the plugin to override:
32 
33   /// See PPP_Instance_Private.GetInstanceObject.
34   virtual Var GetInstanceObject();
35 
36   // @}
37 
38   // @{
39   /// @name PPB_Instance_Private methods for querying the browser:
40 
41   /// See PPB_Instance_Private.GetWindowObject.
42   VarPrivate GetWindowObject();
43 
44   /// See PPB_Instance_Private.GetOwnerElementObject.
45   VarPrivate GetOwnerElementObject();
46 
47   /// See PPB_Instance.ExecuteScript.
48   VarPrivate ExecuteScript(const Var& script, Var* exception = NULL);
49 
50   // @}
51 };
52 
53 }  // namespace pp
54 
55 /**
56  * @}
57  * End addtogroup CPP
58  */
59 #endif  // PPAPI_CPP_PRIVATE_INSTANCE_PRIVATE_H_
60