| /* 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. |
| */ |
| |
| /* From private/ppb_instance_private.idl modified Tue Jul 23 13:19:04 2013. */ |
| |
| #ifndef PPAPI_C_PRIVATE_PPB_INSTANCE_PRIVATE_H_ |
| #define PPAPI_C_PRIVATE_PPB_INSTANCE_PRIVATE_H_ |
| |
| #include "ppapi/c/pp_bool.h" |
| #include "ppapi/c/pp_instance.h" |
| #include "ppapi/c/pp_macros.h" |
| #include "ppapi/c/pp_stdint.h" |
| #include "ppapi/c/pp_var.h" |
| |
| #define PPB_INSTANCE_PRIVATE_INTERFACE_0_1 "PPB_Instance_Private;0.1" |
| #define PPB_INSTANCE_PRIVATE_INTERFACE PPB_INSTANCE_PRIVATE_INTERFACE_0_1 |
| |
| /** |
| * @file |
| * This file defines the PPB_Instance_Private interface implemented by the |
| * browser and containing pointers to functions available only to trusted plugin |
| * instances. |
| */ |
| |
| |
| /** |
| * @addtogroup Enums |
| * @{ |
| */ |
| /** |
| * The <code>PP_ExternalPluginResult </code> enum contains result codes from |
| * launching an external plugin. |
| */ |
| typedef enum { |
| /** Successful external plugin call */ |
| PP_EXTERNAL_PLUGIN_OK = 0, |
| /** Unspecified external plugin error */ |
| PP_EXTERNAL_PLUGIN_FAILED = 1, |
| /** Error creating the module */ |
| PP_EXTERNAL_PLUGIN_ERROR_MODULE = 2, |
| /** Error creating and initializing the instance */ |
| PP_EXTERNAL_PLUGIN_ERROR_INSTANCE = 3 |
| } PP_ExternalPluginResult; |
| PP_COMPILE_ASSERT_SIZE_IN_BYTES(PP_ExternalPluginResult, 4); |
| /** |
| * @} |
| */ |
| |
| /** |
| * @addtogroup Interfaces |
| * @{ |
| */ |
| /** |
| * The PPB_Instance_Private interface contains functions available only to |
| * trusted plugin instances. |
| * |
| */ |
| struct PPB_Instance_Private_0_1 { |
| /** |
| * GetWindowObject is a pointer to a function that determines |
| * the DOM window containing this module instance. |
| * |
| * @param[in] instance A PP_Instance whose WindowObject should be retrieved. |
| * @return A PP_Var containing window object on success. |
| */ |
| struct PP_Var (*GetWindowObject)(PP_Instance instance); |
| /** |
| * GetOwnerElementObject is a pointer to a function that determines |
| * the DOM element containing this module instance. |
| * |
| * @param[in] instance A PP_Instance whose WindowObject should be retrieved. |
| * @return A PP_Var containing DOM element on success. |
| */ |
| struct PP_Var (*GetOwnerElementObject)(PP_Instance instance); |
| /** |
| * ExecuteScript is a pointer to a function that executes the given |
| * script in the context of the frame containing the module. |
| * |
| * The exception, if any, will be returned in *exception. As with the PPB_Var |
| * interface, the exception parameter, if non-NULL, must be initialized |
| * to a "void" var or the function will immediately return. On success, |
| * the exception parameter will be set to a "void" var. On failure, the |
| * return value will be a "void" var. |
| * |
| * @param[in] script A string containing the JavaScript to execute. |
| * @param[in/out] exception PP_Var containing the exception. Initialize |
| * this to NULL if you don't want exception info; initialize this to a void |
| * exception if want exception info. |
| * |
| * @return The result of the script execution, or a "void" var |
| * if execution failed. |
| */ |
| struct PP_Var (*ExecuteScript)(PP_Instance instance, |
| struct PP_Var script, |
| struct PP_Var* exception); |
| }; |
| |
| typedef struct PPB_Instance_Private_0_1 PPB_Instance_Private; |
| /** |
| * @} |
| */ |
| |
| #endif /* PPAPI_C_PRIVATE_PPB_INSTANCE_PRIVATE_H_ */ |
| |