Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(947)

Side by Side Diff: ppapi/c/ppb_instance.h

Issue 6246117: Cleaning up and adding new docs (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: Created 9 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 /* Copyright (c) 2010 The Chromium Authors. All rights reserved. 1 /* Copyright (c) 2010 The Chromium Authors. All rights reserved.
2 * Use of this source code is governed by a BSD-style license that can be 2 * Use of this source code is governed by a BSD-style license that can be
3 * found in the LICENSE file. 3 * found in the LICENSE file.
4 */ 4 */
5 #ifndef PPAPI_C_PPB_INSTANCE_H_ 5 #ifndef PPAPI_C_PPB_INSTANCE_H_
6 #define PPAPI_C_PPB_INSTANCE_H_ 6 #define PPAPI_C_PPB_INSTANCE_H_
7 7
8 #include "ppapi/c/pp_bool.h" 8 #include "ppapi/c/pp_bool.h"
9 #include "ppapi/c/pp_instance.h" 9 #include "ppapi/c/pp_instance.h"
10 #include "ppapi/c/pp_resource.h" 10 #include "ppapi/c/pp_resource.h"
11 #include "ppapi/c/pp_var.h" 11 #include "ppapi/c/pp_var.h"
12 12
13 #define PPB_INSTANCE_INTERFACE "PPB_Instance;0.4" 13 #define PPB_INSTANCE_INTERFACE "PPB_Instance;0.4"
14 14
15 /** 15 /**
16 * @file 16 * @file
17 * Defines the API ... 17 * This file defines the PPB_Instance interface defined by the
18 * browser and containing pointers to functions related to
19 * the module instance on a web page.
18 * 20 *
19 * @addtogroup Interfaces 21 * @addtogroup Interfaces
20 * @{ 22 * @{
21 */ 23 */
22 24
25 /**
26 * The PPB_Instance interface contains pointers to functions
27 * related to the module instance on a web page.
28 *
29 */
23 struct PPB_Instance { 30 struct PPB_Instance {
24 /** Returns a reference to the DOM window containing this instance. */ 31 /**
32 * This value represents a pointer to a function that determines
dmichael(do not use this one) 2011/02/08 21:51:17 This is not a value, it's a function pointer type.
jond 2011/02/09 16:42:04 I queried the group and we're going to go with thi
33 * the DOM window containing this module instance.
34 *
35 * @param[in] instance A PP_Instance indentifying one instance of a module.
dmichael(do not use this one) 2011/02/08 21:51:17 'A PP_Instance identifying one instance of a modul
jond 2011/02/09 16:42:04 Is this not implied? That is, wouldn't developers
dmichael(do not use this one) 2011/02/11 16:42:04 True, but I also think 'identifying on instance of
jond 2011/02/15 17:02:47 Done.
36 * @return PP_Var containing window object on success.
37 */
25 struct PP_Var (*GetWindowObject)(PP_Instance instance); 38 struct PP_Var (*GetWindowObject)(PP_Instance instance);
26 39
27 /** Returns a reference to the DOM element containing this instance. */ 40 /**
41 * This value represents a pointer to a function that determines
42 * the DOM element containing this module instance.
43 *
44 * @param[in] instance A PP_Instance indentifying one instance of a module.
45 * @return PP_Var containing DOM element on success.
46 */
28 struct PP_Var (*GetOwnerElementObject)(PP_Instance instance); 47 struct PP_Var (*GetOwnerElementObject)(PP_Instance instance);
29 48
30 /** 49 /**
31 * Binds the given graphics device as the current drawing surface. The 50 * This value represents a pointer to a function that binds the given
51 * graphics as the current drawing surface. The
32 * contents of this device is what will be displayed in the plugin's area 52 * contents of this device is what will be displayed in the plugin's area
33 * on the web page. The device must be a 2D or a 3D device. 53 * on the web page. The device must be a 2D or a 3D device.
34 * 54 *
35 * You can pass a NULL resource as the device parameter to unbind all 55 * You can pass a NULL resource as the device parameter to unbind all
36 * devices from the given instance. The instance will then appear 56 * devices from the given instance. The instance will then appear
37 * transparent. Re-binding the same device will return PP_TRUE and will do 57 * transparent. Re-binding the same device will return PP_TRUE and will do
38 * nothing. Unbinding a device will drop any pending flush callbacks. 58 * nothing. Unbinding a device will drop any pending flush callbacks.
39 * 59 *
40 * Any previously-bound device will be Release()d. It is an error to bind 60 * Any previously-bound device will be Release()d. It is an error to bind
41 * a device when it is already bound to another plugin instance. If you want 61 * a device when it is already bound to another plugin instance. If you want
42 * to move a device between instances, first unbind it from the old one, and 62 * to move a device between instances, first unbind it from the old one, and
43 * then rebind it to the new one. 63 * then rebind it to the new one.
44 * 64 *
45 * Returns PP_TRUE if the bind was successful. False means the device was not
46 * the correct type. On success, a reference to the device will be held by
47 * the plugin instance, so the caller can release its reference if it
48 * chooses.
49 *
50 * Binding a device will invalidate that portion of the web page to flush the 65 * Binding a device will invalidate that portion of the web page to flush the
51 * contents of the new device to the screen. 66 * contents of the new device to the screen.
67 *
68 * @param[in] instance A PP_Instance indentifying one instance of a module.
69 * @param[in] device A PP_Resourse representing the graphics device.
70 * @return PP_Bool containing PP_TRUE if bind was successful or PP_FALSE if
71 * the device was not the correct type. On success, a reference to the
72 * device will be held by the plugin instance, so the caller can release
73 * its reference if it chooses.
52 */ 74 */
53 PP_Bool (*BindGraphics)(PP_Instance instance, PP_Resource device); 75 PP_Bool (*BindGraphics)(PP_Instance instance, PP_Resource device);
54 76
55 /** 77 /**
56 * Returns PP_TRUE if the instance is full-frame. Such a plugin represents 78 * This value represents a pointer to a function that determines if the
79 * module instance is full-frame (repr). Such a module represents
57 * the entire document in a frame rather than an embedded resource. This can 80 * the entire document in a frame rather than an embedded resource. This can
58 * happen if the user does a top level navigation or the page specifies an 81 * happen if the user does a top level navigation or the page specifies an
59 * iframe to a resource with a MIME type registered by the plugin. 82 * iframe to a resource with a MIME type registered by the plugin.
83 *
84 * @param[in] instance A PP_Instance indentifying one instance of a module.
85 * @return PP_Var containing PP_TRUE if the instance is full-frame.
60 */ 86 */
61 PP_Bool (*IsFullFrame)(PP_Instance instance); 87 PP_Bool (*IsFullFrame)(PP_Instance instance);
62 88
63 /** 89 /**
64 * Executes the given script in the context of the frame containing the 90 * This value represents a pointer to a function that executes the given
65 * plugin. 91 * script in the context of the frame containing the module.
66 * 92 *
67 * The exception, if any, will be returned in *exception. As 93 * The exception, if any, will be returned in *exception. As with the PPB_Var
68 * with the PPB_Var interface, the exception parameter, 94 * interface, the exception parameter, if non-NULL, must be initialized
69 * if non-NULL, must be initialized
70 * to a void exception or the function will immediately return. On success, 95 * to a void exception or the function will immediately return. On success,
71 * the exception parameter will be set to a "void" var. On failure, the return 96 * the exception parameter will be set to a "void" var. On failure, the return
72 * value will be a "void" var. 97 * value will be a "void" var.
73 * 98 *
74 * @param script A string containing the JavaScript to execute. 99 * @param[in] script A string containing the JavaScript to execute.
75 * @param exception Initialize this to NULL if you don't want exception info; 100 * @param[in/out] exception PP_Var containing the exception. Initialize
76 * initialize this to a void exception if you do. 101 * this to NULL if you don't want exception info; initialize this to a void
77 * See the function description for details. 102 * exception if want exception info.
78 * 103 *
79 * @return The result of the script execution, 104 * @return The result of the script execution, or a "void" var
80 * or a "void" var if execution failed. 105 * if execution failed.
81 */ 106 */
82 struct PP_Var (*ExecuteScript)(PP_Instance instance, 107 struct PP_Var (*ExecuteScript)(PP_Instance instance,
83 struct PP_Var script, 108 struct PP_Var script,
84 struct PP_Var* exception); 109 struct PP_Var* exception);
85 }; 110 };
86 /** 111 /**
87 * @} 112 * @}
88 */ 113 */
89 114
90 #endif /* PPAPI_C_PPB_INSTANCE_H_ */ 115 #endif /* PPAPI_C_PPB_INSTANCE_H_ */
91 116
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698