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

Side by Side Diff: content/renderer/pepper/plugin_module.h

Issue 225903006: PPAPI: Run clang_format.py on content/renderer/pepper (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merge Created 6 years, 8 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) 2012 The Chromium Authors. All rights reserved. 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 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 CONTENT_RENDERER_PEPPER_PLUGIN_MODULE_H_ 5 #ifndef CONTENT_RENDERER_PEPPER_PLUGIN_MODULE_H_
6 #define CONTENT_RENDERER_PEPPER_PLUGIN_MODULE_H_ 6 #define CONTENT_RENDERER_PEPPER_PLUGIN_MODULE_H_
7 7
8 #include <map> 8 #include <map>
9 #include <set> 9 #include <set>
10 #include <string> 10 #include <string>
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
51 class PepperBroker; 51 class PepperBroker;
52 class RendererPpapiHostImpl; 52 class RendererPpapiHostImpl;
53 class RenderFrameImpl; 53 class RenderFrameImpl;
54 struct WebPluginInfo; 54 struct WebPluginInfo;
55 55
56 // Represents one plugin library loaded into one renderer. This library may 56 // Represents one plugin library loaded into one renderer. This library may
57 // have multiple instances. 57 // have multiple instances.
58 // 58 //
59 // Note: to get from a PP_Instance to a PepperPluginInstance*, use the 59 // Note: to get from a PP_Instance to a PepperPluginInstance*, use the
60 // ResourceTracker. 60 // ResourceTracker.
61 class CONTENT_EXPORT PluginModule : 61 class CONTENT_EXPORT PluginModule : public base::RefCounted<PluginModule>,
62 public base::RefCounted<PluginModule>, 62 public base::SupportsWeakPtr<PluginModule> {
63 public base::SupportsWeakPtr<PluginModule> {
64 public: 63 public:
65 typedef std::set<PepperPluginInstanceImpl*> PluginInstanceSet; 64 typedef std::set<PepperPluginInstanceImpl*> PluginInstanceSet;
66 65
67 // You must call one of the Init functions after the constructor to create a 66 // You must call one of the Init functions after the constructor to create a
68 // module of the type you desire. 67 // module of the type you desire.
69 // 68 //
70 // The module lifetime delegate is a non-owning pointer that must outlive 69 // The module lifetime delegate is a non-owning pointer that must outlive
71 // all plugin modules. In practice it will be a global singleton that 70 // all plugin modules. In practice it will be a global singleton that
72 // tracks which modules are alive. 71 // tracks which modules are alive.
73 PluginModule(const std::string& name, 72 PluginModule(const std::string& name,
(...skipping 57 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 } 130 }
132 131
133 // Returns the module handle. This may be used before Init() is called (the 132 // Returns the module handle. This may be used before Init() is called (the
134 // proxy needs this information to set itself up properly). 133 // proxy needs this information to set itself up properly).
135 PP_Module pp_module() const { return pp_module_; } 134 PP_Module pp_module() const { return pp_module_; }
136 135
137 const std::string& name() const { return name_; } 136 const std::string& name() const { return name_; }
138 const base::FilePath& path() const { return path_; } 137 const base::FilePath& path() const { return path_; }
139 const ppapi::PpapiPermissions& permissions() const { return permissions_; } 138 const ppapi::PpapiPermissions& permissions() const { return permissions_; }
140 139
141 PepperPluginInstanceImpl* CreateInstance( 140 PepperPluginInstanceImpl* CreateInstance(RenderFrameImpl* render_frame,
142 RenderFrameImpl* render_frame, 141 blink::WebPluginContainer* container,
143 blink::WebPluginContainer* container, 142 const GURL& plugin_url);
144 const GURL& plugin_url);
145 143
146 // Returns "some" plugin instance associated with this module. This is not 144 // Returns "some" plugin instance associated with this module. This is not
147 // guaranteed to be any one in particular. This is normally used to execute 145 // guaranteed to be any one in particular. This is normally used to execute
148 // callbacks up to the browser layer that are not inherently per-instance, 146 // callbacks up to the browser layer that are not inherently per-instance,
149 // but the helper lives only on the plugin instance so we need one of them. 147 // but the helper lives only on the plugin instance so we need one of them.
150 PepperPluginInstanceImpl* GetSomeInstance() const; 148 PepperPluginInstanceImpl* GetSomeInstance() const;
151 149
152 const PluginInstanceSet& GetAllInstances() const { return instances_; } 150 const PluginInstanceSet& GetAllInstances() const { return instances_; }
153 151
154 // Calls the plugin's GetInterface and returns the given interface pointer, 152 // Calls the plugin's GetInterface and returns the given interface pointer,
(...skipping 16 matching lines...) Expand all
171 bool is_crashed() const { return is_crashed_; } 169 bool is_crashed() const { return is_crashed_; }
172 170
173 // Reserves the given instance is unique within the plugin, checking for 171 // Reserves the given instance is unique within the plugin, checking for
174 // collisions. See PPB_Proxy_Private for more information. 172 // collisions. See PPB_Proxy_Private for more information.
175 // 173 //
176 // The setter will set the callback which is set up when the proxy 174 // The setter will set the callback which is set up when the proxy
177 // initializes. The Reserve function will call the previously set callback if 175 // initializes. The Reserve function will call the previously set callback if
178 // it exists to validate the ID. If the callback has not been set (such as 176 // it exists to validate the ID. If the callback has not been set (such as
179 // for in-process plugins), the Reserve function will assume that the ID is 177 // for in-process plugins), the Reserve function will assume that the ID is
180 // usable and will return true. 178 // usable and will return true.
181 void SetReserveInstanceIDCallback( 179 void SetReserveInstanceIDCallback(PP_Bool (*reserve)(PP_Module, PP_Instance));
182 PP_Bool (*reserve)(PP_Module, PP_Instance));
183 bool ReserveInstanceID(PP_Instance instance); 180 bool ReserveInstanceID(PP_Instance instance);
184 181
185 // These should only be called from the main thread. 182 // These should only be called from the main thread.
186 void SetBroker(PepperBroker* broker); 183 void SetBroker(PepperBroker* broker);
187 PepperBroker* GetBroker(); 184 PepperBroker* GetBroker();
188 185
189 // Create a new HostDispatcher for proxying, hook it to the PluginModule, 186 // Create a new HostDispatcher for proxying, hook it to the PluginModule,
190 // and perform other common initialization. 187 // and perform other common initialization.
191 RendererPpapiHostImpl* CreateOutOfProcessModule( 188 RendererPpapiHostImpl* CreateOutOfProcessModule(
192 RenderFrameImpl* render_frame, 189 RenderFrameImpl* render_frame,
(...skipping 77 matching lines...) Expand 10 before | Expand all | Expand 10 after
270 PluginInstanceSet instances_; 267 PluginInstanceSet instances_;
271 268
272 PP_Bool (*reserve_instance_id_)(PP_Module, PP_Instance); 269 PP_Bool (*reserve_instance_id_)(PP_Module, PP_Instance);
273 270
274 DISALLOW_COPY_AND_ASSIGN(PluginModule); 271 DISALLOW_COPY_AND_ASSIGN(PluginModule);
275 }; 272 };
276 273
277 } // namespace content 274 } // namespace content
278 275
279 #endif // CONTENT_RENDERER_PEPPER_PLUGIN_MODULE_H_ 276 #endif // CONTENT_RENDERER_PEPPER_PLUGIN_MODULE_H_
OLDNEW
« no previous file with comments | « content/renderer/pepper/pepper_websocket_host.cc ('k') | content/renderer/pepper/plugin_module.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698