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

Side by Side Diff: chrome/browser/renderer_host/render_process_host.h

Issue 3834003: On Windows, create a new TransportDIB::Handle struct which includes the file (Closed) Base URL: http://src.chromium.org/git/chromium.git
Patch Set: Rebase Created 10 years, 2 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
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 CHROME_BROWSER_RENDERER_HOST_RENDER_PROCESS_HOST_H_ 5 #ifndef CHROME_BROWSER_RENDERER_HOST_RENDER_PROCESS_HOST_H_
6 #define CHROME_BROWSER_RENDERER_HOST_RENDER_PROCESS_HOST_H_ 6 #define CHROME_BROWSER_RENDERER_HOST_RENDER_PROCESS_HOST_H_
7 #pragma once 7 #pragma once
8 8
9 #include <set> 9 #include <set>
10 10
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 // tests or single-process mode, this will actually represent the current 209 // tests or single-process mode, this will actually represent the current
210 // process. 210 // process.
211 // 211 //
212 // NOTE: this is not necessarily valid immediately after calling Init, as 212 // NOTE: this is not necessarily valid immediately after calling Init, as
213 // Init starts the process asynchronously. It's guaranteed to be valid after 213 // Init starts the process asynchronously. It's guaranteed to be valid after
214 // the first IPC arrives. 214 // the first IPC arrives.
215 virtual base::ProcessHandle GetHandle() = 0; 215 virtual base::ProcessHandle GetHandle() = 0;
216 216
217 // Transport DIB functions --------------------------------------------------- 217 // Transport DIB functions ---------------------------------------------------
218 218
219 // Return the TransportDIB for the given id. On Linux, this can involve 219 // Return the TransportDIB for the given id. On Windows and Linux, this may
220 // mapping shared memory. On Mac, the shared memory is created in the browser 220 // involve mapping the TransportDIB. On Mac, the shared memory is created in
221 // process and the cached metadata is returned. On Windows, this involves 221 // the browser process and the cached metadata is returned. The
222 // duplicating the handle from the remote process. The RenderProcessHost 222 // RenderProcessHost still owns the returned DIB.
223 // still owns the returned DIB. 223 virtual TransportDIB* GetTransportDIB(TransportDIB::Id dib_id,
224 virtual TransportDIB* GetTransportDIB(TransportDIB::Id dib_id) = 0; 224 TransportDIB::Handle dib_handle) = 0;
225 225
226 // Static management functions ----------------------------------------------- 226 // Static management functions -----------------------------------------------
227 227
228 // Flag to run the renderer in process. This is primarily 228 // Flag to run the renderer in process. This is primarily
229 // for debugging purposes. When running "in process", the 229 // for debugging purposes. When running "in process", the
230 // browser maintains a single RenderProcessHost which communicates 230 // browser maintains a single RenderProcessHost which communicates
231 // to a RenderProcess which is instantiated in the same process 231 // to a RenderProcess which is instantiated in the same process
232 // with the Browser. All IPC between the Browser and the 232 // with the Browser. All IPC between the Browser and the
233 // Renderer is the same, it's just not crossing a process boundary. 233 // Renderer is the same, it's just not crossing a process boundary.
234 static bool run_renderer_in_process() { 234 static bool run_renderer_in_process() {
(...skipping 78 matching lines...) Expand 10 before | Expand all | Expand 10 after
313 // Factory object for RenderProcessHosts. Using this factory allows tests to 313 // Factory object for RenderProcessHosts. Using this factory allows tests to
314 // swap out a different one to use a TestRenderProcessHost. 314 // swap out a different one to use a TestRenderProcessHost.
315 class RenderProcessHostFactory { 315 class RenderProcessHostFactory {
316 public: 316 public:
317 virtual ~RenderProcessHostFactory() {} 317 virtual ~RenderProcessHostFactory() {}
318 virtual RenderProcessHost* CreateRenderProcessHost( 318 virtual RenderProcessHost* CreateRenderProcessHost(
319 Profile* profile) const = 0; 319 Profile* profile) const = 0;
320 }; 320 };
321 321
322 #endif // CHROME_BROWSER_RENDERER_HOST_RENDER_PROCESS_HOST_H_ 322 #endif // CHROME_BROWSER_RENDERER_HOST_RENDER_PROCESS_HOST_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698