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 11 namespace content { 12 class BrowserContext; 13 class ContentBrowserClient; 14 class RenderProcessHost; 15 class SiteInstance; 16 17 // Factory object for RenderProcessHosts. Using this factory allows tests to 18 // swap out a different one to use a TestRenderProcessHost. 19 class 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