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
3 // found in the LICENSE file.
5 #include "content/browser/renderer_host/render_view_host_factory.h"
7 #include "base/logging.h"
8 #include "content/browser/renderer_host/render_view_host_impl.h"
13 RenderViewHostFactory
* RenderViewHostFactory::factory_
= NULL
;
16 RenderViewHost
* RenderViewHostFactory::Create(
17 SiteInstance
* instance
,
18 RenderViewHostDelegate
* delegate
,
19 RenderWidgetHostDelegate
* widget_delegate
,
21 int main_frame_routing_id
,
25 return factory_
->CreateRenderViewHost(instance
, delegate
, widget_delegate
,
26 routing_id
, main_frame_routing_id
,
29 return new RenderViewHostImpl(instance
,
33 main_frame_routing_id
,
36 true /* has_initialized_audio_host */);
40 void RenderViewHostFactory::RegisterFactory(RenderViewHostFactory
* factory
) {
41 DCHECK(!factory_
) << "Can't register two factories at once.";
46 void RenderViewHostFactory::UnregisterFactory() {
47 DCHECK(factory_
) << "No factory to unregister.";
51 } // namespace content