blob: 2baa8a474f4e6cd610cd43fed4c528fe4c4621ed [file] [log] [blame]
Avi Drissman4e1b7bc32022-09-15 14:03:501// Copyright 2019 The Chromium Authors
Ken Rockot13051c932019-11-14 20:11:512// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CONTENT_RENDERER_BROWSER_EXPOSED_RENDERER_INTERFACES_H_
6#define CONTENT_RENDERER_BROWSER_EXPOSED_RENDERER_INTERFACES_H_
7
8#include "base/memory/weak_ptr.h"
9
10namespace mojo {
11class BinderMap;
12}
13
14namespace content {
15
16class RenderThreadImpl;
17
18// Populates |*binders| with callbacks to expose interfaces from every renderer
19// process to the browser process. These interfaces are scoped to the entire
20// render process rather than to a specific (e.g. frame) context and can be
21// acquired by the browser through |RenderProcessHost::BindReceiver()|.
22void ExposeRendererInterfacesToBrowser(
23 base::WeakPtr<RenderThreadImpl> render_thread,
24 mojo::BinderMap* binders);
25
26} // namespace content
27
28#endif // CONTENT_RENDERER_BROWSER_EXPOSED_RENDERER_INTERFACES_H_