| OLD | NEW |
| 1 // Copyright 2014 The Chromium Authors. All rights reserved. | 1 // Copyright 2014 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 #include "media/mojo/services/mojo_renderer_factory.h" | 5 #include "media/mojo/services/mojo_renderer_factory.h" |
| 6 | 6 |
| 7 #include "base/single_thread_task_runner.h" | 7 #include "media/mojo/interfaces/renderer.mojom.h" |
| 8 #include "media/mojo/interfaces/service_factory.mojom.h" | |
| 9 #include "media/mojo/services/mojo_renderer_impl.h" | 8 #include "media/mojo/services/mojo_renderer_impl.h" |
| 10 #include "mojo/public/cpp/bindings/interface_request.h" | 9 #include "mojo/application/public/cpp/connect.h" |
| 11 | 10 |
| 12 namespace media { | 11 namespace media { |
| 13 | 12 |
| 14 MojoRendererFactory::MojoRendererFactory( | 13 MojoRendererFactory::MojoRendererFactory( |
| 15 interfaces::ServiceFactory* service_factory) | 14 mojo::ServiceProvider* service_provider) |
| 16 : service_factory_(service_factory) { | 15 : service_provider_(service_provider) { |
| 17 DCHECK(service_factory_); | 16 DCHECK(service_provider_); |
| 18 } | 17 } |
| 19 | 18 |
| 20 MojoRendererFactory::~MojoRendererFactory() { | 19 MojoRendererFactory::~MojoRendererFactory() { |
| 21 } | 20 } |
| 22 | 21 |
| 23 scoped_ptr<Renderer> MojoRendererFactory::CreateRenderer( | 22 scoped_ptr<Renderer> MojoRendererFactory::CreateRenderer( |
| 24 const scoped_refptr<base::SingleThreadTaskRunner>& media_task_runner, | 23 const scoped_refptr<base::SingleThreadTaskRunner>& media_task_runner, |
| 25 const scoped_refptr<base::TaskRunner>& /* worker_task_runner */, | 24 const scoped_refptr<base::TaskRunner>& /* worker_task_runner */, |
| 26 AudioRendererSink* /* audio_renderer_sink */, | 25 AudioRendererSink* /* audio_renderer_sink */, |
| 27 VideoRendererSink* /* video_renderer_sink */) { | 26 VideoRendererSink* /* video_renderer_sink */) { |
| 28 DCHECK(service_factory_); | 27 DCHECK(service_provider_); |
| 29 | 28 |
| 30 interfaces::RendererPtr mojo_renderer; | 29 interfaces::RendererPtr mojo_renderer; |
| 31 service_factory_->CreateRenderer(mojo::GetProxy(&mojo_renderer)); | 30 mojo::ConnectToService(service_provider_, &mojo_renderer); |
| 32 | |
| 33 return scoped_ptr<Renderer>( | 31 return scoped_ptr<Renderer>( |
| 34 new MojoRendererImpl(media_task_runner, mojo_renderer.Pass())); | 32 new MojoRendererImpl(media_task_runner, mojo_renderer.Pass())); |
| 35 } | 33 } |
| 36 | 34 |
| 37 } // namespace media | 35 } // namespace media |
| OLD | NEW |