1// Copyright (c) 2011 The Chromium Authors. All rights reserved.
2// 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_PUBLIC_BROWSER_RENDER_PROCESS_HOST_FACTORY_H_
6#define CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_FACTORY_H_
7
8#include "base/basictypes.h"
9#include "content/common/content_export.h"
10
11namespace content {
12class BrowserContext;
13class ContentBrowserClient;
14class RenderProcessHost;
15class SiteInstance;
16
17// Factory object for RenderProcessHosts. Using this factory allows tests to
18// swap out a different one to use a TestRenderProcessHost.
19class RenderProcessHostFactory {
20 public:
21  virtual ~RenderProcessHostFactory() {}
22  virtual RenderProcessHost* CreateRenderProcessHost(
23      BrowserContext* browser_context,
24      SiteInstance* site_instance) const = 0;
25};
26
27}  // namespace content
28
29#endif  // CONTENT_PUBLIC_BROWSER_RENDER_PROCESS_HOST_FACTORY_H_
30