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

Side by Side Diff: src/shared/ppapi_proxy/browser_globals.h

Issue 3391010: Update the PPAPI DEPS revision. This change included parameter profile chang... (Closed) Base URL: svn://svn.chromium.org/native_client/trunk/src/native_client/
Patch Set: Created 10 years, 3 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
« no previous file with comments | « DEPS ('k') | src/shared/ppapi_proxy/browser_globals.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2010 The Native Client Authors. All rights reserved. 1 // Copyright (c) 2010 The Native Client 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 NATIVE_CLIENT_SRC_SHARED_PPAPI_PROXY_BROWSER_GLOBALS_H_ 5 #ifndef NATIVE_CLIENT_SRC_SHARED_PPAPI_PROXY_BROWSER_GLOBALS_H_
6 #define NATIVE_CLIENT_SRC_SHARED_PPAPI_PROXY_BROWSER_GLOBALS_H_ 6 #define NATIVE_CLIENT_SRC_SHARED_PPAPI_PROXY_BROWSER_GLOBALS_H_
7 7
8 #include "ppapi/c/pp_instance.h" 8 #include "ppapi/c/pp_instance.h"
9 #include "ppapi/c/pp_module.h"
9 #include "ppapi/c/ppb.h" 10 #include "ppapi/c/ppb.h"
10 #include "ppapi/c/ppb_core.h" 11 #include "ppapi/c/ppb_core.h"
11 #include "ppapi/c/ppb_var.h" 12 #include "ppapi/c/ppb_var.h"
12 13
14 struct NaClSrpcChannel;
15
13 namespace ppapi_proxy { 16 namespace ppapi_proxy {
14 17
15 // These functions handle the browser-side (trusted code) mapping of a browser 18 // These functions handle the browser-side (trusted code) mapping of a browser
16 // Instance to instance-specific data, such as the SRPC communication channel. 19 // Instance to instance-specific data, such as the SRPC communication channel.
17 // These functions are called by the in-browser (trusted) plugin code, and are 20 // These functions are called by the in-browser (trusted) plugin code, and are
18 // always called from the main (foreground, UI, ...) thread. As such, they are 21 // always called from the main (foreground, UI, ...) thread. As such, they are
19 // not thread-safe (they do not need to be). 22 // not thread-safe (they do not need to be).
20 23
21 // BrowserPpp keeps browser side PPP_Instance specific information, such as the 24 // BrowserPpp keeps browser side PPP_Instance specific information, such as the
22 // channel used to talk to the instance. 25 // channel used to talk to the instance.
23 class BrowserPpp; 26 class BrowserPpp;
24 27
25 // Associate a particular BrowserPpp with a PP_Instance value. This allows the 28 // Associate a particular BrowserPpp with a PP_Instance value. This allows the
26 // browser side to look up information it needs to communicate with the stub. 29 // browser side to look up information it needs to communicate with the stub.
27 void SetBrowserPppForInstance(PP_Instance instance, 30 void SetBrowserPppForInstance(PP_Instance instance,
28 BrowserPpp* browser_ppp); 31 BrowserPpp* browser_ppp);
29 // When an instance is destroyed, this is called to remove the association, as 32 // When an instance is destroyed, this is called to remove the association, as
30 // the stub will be destroyed by a call to Shutdown. 33 // the stub will be destroyed by a call to Shutdown.
31 void UnsetBrowserPppForInstance(PP_Instance instance); 34 void UnsetBrowserPppForInstance(PP_Instance instance);
32 // Gets the BrowserPpp information remembered for a particular instance. 35 // Gets the BrowserPpp information remembered for a particular instance.
33 BrowserPpp* LookupBrowserPppForInstance(PP_Instance instance); 36 BrowserPpp* LookupBrowserPppForInstance(PP_Instance instance);
34 37
38 // To keep track of memory allocated by a particular module, we need to remember
39 // the PP_Module corresponding to a particular NaClSrpcChannel*.
40 void SetModuleIdForSrpcChannel(NaClSrpcChannel* channel, PP_Module module_id);
41 // Removes the association with a given channel.
42 void UnsetModuleIdForSrpcChannel(NaClSrpcChannel* channel);
43 // Looks up the association with a given channel.
44 PP_Module LookupModuleIdForSrpcChannel(NaClSrpcChannel* channel);
45
35 // We need to keep the browser GetInterface function pointer, as parts of the 46 // We need to keep the browser GetInterface function pointer, as parts of the
36 // proxy will need to invoke interfaces such as the 2D and 3D APIs. 47 // proxy will need to invoke interfaces such as the 2D and 3D APIs.
37 void SetBrowserGetInterface(PPB_GetInterface get_interface_function); 48 void SetBrowserGetInterface(PPB_GetInterface get_interface_function);
38 const void* GetBrowserInterface(const char* interface_name); 49 const void* GetBrowserInterface(const char* interface_name);
39 50
40 // We need an interface to get PPB_Core that is spelled the same way for 51 // We need an interface to get PPB_Core that is spelled the same way for
41 // both plugins and the browser side of the proxy. 52 // both plugins and the browser side of the proxy.
42 // Set by SetBrowserGetInterface. 53 // Set by SetBrowserGetInterface.
43 const PPB_Core* CoreInterface(); 54 const PPB_Core* CoreInterface();
44 55
45 // We need an interface to get PPB_Var that is spelled the same way for 56 // We need an interface to get PPB_Var that is spelled the same way for
46 // both plugins and the browser side of the proxy. 57 // both plugins and the browser side of the proxy.
47 // Set by SetBrowserGetInterface. 58 // Set by SetBrowserGetInterface.
48 const PPB_Var* VarInterface(); 59 const PPB_Var* VarInterface();
49 60
50 } // namespace ppapi_proxy 61 } // namespace ppapi_proxy
51 62
52 #endif // NATIVE_CLIENT_SRC_SHARED_PPAPI_PROXY_BROWSER_GLOBALS_H_ 63 #endif // NATIVE_CLIENT_SRC_SHARED_PPAPI_PROXY_BROWSER_GLOBALS_H_
OLDNEW
« no previous file with comments | « DEPS ('k') | src/shared/ppapi_proxy/browser_globals.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698