Index: media/mojo/services/media_service_factory.h |
diff --git a/media/mojo/services/media_service_factory.h b/media/mojo/services/media_service_factory.h |
index 8e89c20771090505c427d076a1f3c84b4165073a..40e34a34c8e3f1e0e5f7801c0068aa1d2db777ca 100644 |
--- a/media/mojo/services/media_service_factory.h |
+++ b/media/mojo/services/media_service_factory.h |
@@ -7,18 +7,30 @@ |
#include <memory> |
-#include "base/callback_forward.h" |
+#include "base/memory/ref_counted.h" |
+#include "base/memory/weak_ptr.h" |
+#include "base/single_thread_task_runner.h" |
#include "media/mojo/services/media_mojo_export.h" |
#include "services/service_manager/public/cpp/service.h" |
namespace media { |
+class MediaGpuChannelManager; |
+ |
// Creates a MediaService instance using the default MojoMediaClient on each |
// platform. Uses the TestMojoMediaClient if |enable_test_mojo_media_client| is |
// true. |
std::unique_ptr<service_manager::Service> MEDIA_MOJO_EXPORT |
CreateMediaService(); |
+// Creates a MediaService instance using the GpuMojoMediaClient. |
+// |media_gpu_channel_manager| must only be used on |task_runner|, which is |
+// expected to be the GPU main thread task runner. |
+std::unique_ptr<service_manager::Service> MEDIA_MOJO_EXPORT |
+CreateGpuMediaService( |
+ scoped_refptr<base::SingleThreadTaskRunner> task_runner, |
+ base::WeakPtr<MediaGpuChannelManager> media_gpu_channel_manager); |
+ |
// Creates a MediaService instance using the TestMojoMediaClient. |
std::unique_ptr<service_manager::Service> MEDIA_MOJO_EXPORT |
CreateMediaServiceForTesting(); |