Upstream version 10.39.225.0
[platform/framework/web/crosswalk.git] / src / content / renderer / media / renderer_gpu_video_accelerator_factories.h
index ffbc0ab..f75fedc 100644 (file)
@@ -22,6 +22,7 @@ class WaitableEvent;
 
 namespace content {
 class ContextProviderCommandBuffer;
+class GLHelper;
 class GpuChannelHost;
 class WebGraphicsContext3DCommandBufferImpl;
 
@@ -32,7 +33,7 @@ class WebGraphicsContext3DCommandBufferImpl;
 //
 // The RendererGpuVideoAcceleratorFactories can be constructed on any thread,
 // but subsequent calls to all public methods of the class must be called from
-// the |message_loop_proxy_|, as provided during construction.
+// the |task_runner_|, as provided during construction.
 class CONTENT_EXPORT RendererGpuVideoAcceleratorFactories
     : public media::GpuVideoAcceleratorFactories {
  public:
@@ -40,7 +41,7 @@ class CONTENT_EXPORT RendererGpuVideoAcceleratorFactories
   // use.  Safe to call from any thread.
   static scoped_refptr<RendererGpuVideoAcceleratorFactories> Create(
       GpuChannelHost* gpu_channel_host,
-      const scoped_refptr<base::MessageLoopProxy>& message_loop_proxy,
+      const scoped_refptr<base::SingleThreadTaskRunner>& task_runner,
       const scoped_refptr<ContextProviderCommandBuffer>& context_provider);
 
   // media::GpuVideoAcceleratorFactories implementation.
@@ -62,12 +63,14 @@ class CONTENT_EXPORT RendererGpuVideoAcceleratorFactories
                           const SkBitmap& pixels) OVERRIDE;
   virtual base::SharedMemory* CreateSharedMemory(size_t size) OVERRIDE;
   virtual scoped_refptr<base::SingleThreadTaskRunner> GetTaskRunner() OVERRIDE;
+  virtual std::vector<media::VideoEncodeAccelerator::SupportedProfile>
+      GetVideoEncodeAcceleratorSupportedProfiles() OVERRIDE;
 
  private:
   friend class base::RefCountedThreadSafe<RendererGpuVideoAcceleratorFactories>;
   RendererGpuVideoAcceleratorFactories(
       GpuChannelHost* gpu_channel_host,
-      const scoped_refptr<base::MessageLoopProxy>& message_loop_proxy,
+      const scoped_refptr<base::SingleThreadTaskRunner>& task_runner,
       const scoped_refptr<ContextProviderCommandBuffer>& context_provider);
   virtual ~RendererGpuVideoAcceleratorFactories();
 
@@ -78,10 +81,12 @@ class CONTENT_EXPORT RendererGpuVideoAcceleratorFactories
   // Helper to get a pointer to the WebGraphicsContext3DCommandBufferImpl,
   // if it has not been lost yet.
   WebGraphicsContext3DCommandBufferImpl* GetContext3d();
+  GLHelper* GetGLHelper();
 
   scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
   scoped_refptr<GpuChannelHost> gpu_channel_host_;
   scoped_refptr<ContextProviderCommandBuffer> context_provider_;
+  scoped_ptr<GLHelper> gl_helper_;
 
   // For sending requests to allocate shared memory in the Browser process.
   scoped_refptr<ThreadSafeSender> thread_safe_sender_;