// Copyright (c) 2012 The Chromium Authors. All rights reserved. // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef PPAPI_CPP_PRIVATE_INSTANCE_PRIVATE_H_ #define PPAPI_CPP_PRIVATE_INSTANCE_PRIVATE_H_ /** * @file * Defines the API ... * * @addtogroup CPP * @{ */ #include "ppapi/c/ppb_console.h" #include "ppapi/cpp/instance.h" /** The C++ interface to the Pepper API. */ namespace pp { class Var; class VarPrivate; class InstancePrivate : public Instance { public: explicit InstancePrivate(PP_Instance instance); virtual ~InstancePrivate(); // @{ /// @name PPP_Instance_Private methods for the plugin to override: /// See PPP_Instance_Private.GetInstanceObject. virtual Var GetInstanceObject(); // @} // @{ /// @name PPB_Instance_Private methods for querying the browser: /// See PPB_Instance_Private.GetWindowObject. VarPrivate GetWindowObject(); /// See PPB_Instance_Private.GetOwnerElementObject. VarPrivate GetOwnerElementObject(); /// See PPB_Instance.ExecuteScript. VarPrivate ExecuteScript(const Var& script, Var* exception = NULL); // @} }; } // namespace pp /** * @} * End addtogroup CPP */ #endif // PPAPI_CPP_PRIVATE_INSTANCE_PRIVATE_H_