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 #ifndef GPU_IPC_COMMON_ANDROID_SURFACE_TEXTURE_MANAGER_H_ | 5 #ifndef GPU_IPC_COMMON_ANDROID_SURFACE_TEXTURE_MANAGER_H_ |
6 #define GPU_IPC_COMMON_ANDROID_SURFACE_TEXTURE_MANAGER_H_ | 6 #define GPU_IPC_COMMON_ANDROID_SURFACE_TEXTURE_MANAGER_H_ |
7 | 7 |
8 #include "gpu/gpu_export.h" | 8 #include "gpu/gpu_export.h" |
9 #include "ui/gfx/native_widget_types.h" | 9 #include "ui/gfx/native_widget_types.h" |
10 | 10 |
11 namespace gfx { | 11 namespace gl { |
12 class SurfaceTexture; | 12 class SurfaceTexture; |
13 } | 13 } |
14 | 14 |
15 namespace gpu { | 15 namespace gpu { |
16 | 16 |
17 class GPU_EXPORT SurfaceTextureManager { | 17 class GPU_EXPORT SurfaceTextureManager { |
18 public: | 18 public: |
19 static SurfaceTextureManager* GetInstance(); | 19 static SurfaceTextureManager* GetInstance(); |
20 static void SetInstance(SurfaceTextureManager* instance); | 20 static void SetInstance(SurfaceTextureManager* instance); |
21 | 21 |
22 // Register a surface texture for use in another process. | 22 // Register a surface texture for use in another process. |
23 virtual void RegisterSurfaceTexture(int surface_texture_id, | 23 virtual void RegisterSurfaceTexture(int surface_texture_id, |
24 int client_id, | 24 int client_id, |
25 gfx::SurfaceTexture* surface_texture) = 0; | 25 gl::SurfaceTexture* surface_texture) = 0; |
26 | 26 |
27 // Unregister a surface texture previously registered for use in another | 27 // Unregister a surface texture previously registered for use in another |
28 // process. | 28 // process. |
29 virtual void UnregisterSurfaceTexture(int surface_texture_id, | 29 virtual void UnregisterSurfaceTexture(int surface_texture_id, |
30 int client_id) = 0; | 30 int client_id) = 0; |
31 | 31 |
32 // Acquire native widget for a registered surface texture. | 32 // Acquire native widget for a registered surface texture. |
33 virtual gfx::AcceleratedWidget AcquireNativeWidgetForSurfaceTexture( | 33 virtual gfx::AcceleratedWidget AcquireNativeWidgetForSurfaceTexture( |
34 int surface_texture_id) = 0; | 34 int surface_texture_id) = 0; |
35 | 35 |
36 protected: | 36 protected: |
37 virtual ~SurfaceTextureManager() {} | 37 virtual ~SurfaceTextureManager() {} |
38 }; | 38 }; |
39 | 39 |
40 } // namespace gpu | 40 } // namespace gpu |
41 | 41 |
42 #endif // GPU_IPC_COMMON_ANDROID_SURFACE_TEXTURE_MANAGER_H_ | 42 #endif // GPU_IPC_COMMON_ANDROID_SURFACE_TEXTURE_MANAGER_H_ |
OLD | NEW |