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 CONTENT_BROWSER_ANDROID_BROWSER_SURFACE_TEXTURE_MANAGER_H_ | 5 #ifndef CONTENT_BROWSER_ANDROID_BROWSER_SURFACE_TEXTURE_MANAGER_H_ |
6 #define CONTENT_BROWSER_ANDROID_BROWSER_SURFACE_TEXTURE_MANAGER_H_ | 6 #define CONTENT_BROWSER_ANDROID_BROWSER_SURFACE_TEXTURE_MANAGER_H_ |
7 | 7 |
8 #include "content/common/android/surface_texture_manager.h" | 8 #include "content/common/android/surface_texture_manager.h" |
9 | 9 |
10 #include "base/memory/singleton.h" | |
11 #include "content/common/android/surface_texture_peer.h" | 10 #include "content/common/android/surface_texture_peer.h" |
12 #include "content/common/content_export.h" | |
13 | 11 |
14 namespace content { | 12 namespace content { |
15 | 13 |
16 class CONTENT_EXPORT BrowserSurfaceTextureManager | 14 class BrowserSurfaceTextureManager : public SurfaceTextureManager, |
17 : public SurfaceTextureManager, | 15 public SurfaceTexturePeer { |
18 public SurfaceTexturePeer { | |
19 public: | 16 public: |
20 static BrowserSurfaceTextureManager* GetInstance(); | 17 BrowserSurfaceTextureManager(); |
| 18 ~BrowserSurfaceTextureManager() override; |
21 | 19 |
22 // Overridden from SurfaceTextureManager: | 20 // Overridden from SurfaceTextureManager: |
23 void RegisterSurfaceTexture(int surface_texture_id, | 21 void RegisterSurfaceTexture(int surface_texture_id, |
24 int client_id, | 22 int client_id, |
25 gfx::SurfaceTexture* surface_texture) override; | 23 gfx::SurfaceTexture* surface_texture) override; |
26 void UnregisterSurfaceTexture(int surface_texture_id, int client_id) override; | 24 void UnregisterSurfaceTexture(int surface_texture_id, int client_id) override; |
27 gfx::AcceleratedWidget AcquireNativeWidgetForSurfaceTexture( | 25 gfx::AcceleratedWidget AcquireNativeWidgetForSurfaceTexture( |
28 int surface_texture_id) override; | 26 int surface_texture_id) override; |
29 | 27 |
30 // Overridden from SurfaceTexturePeer: | 28 // Overridden from SurfaceTexturePeer: |
31 void EstablishSurfaceTexturePeer( | 29 void EstablishSurfaceTexturePeer( |
32 base::ProcessHandle render_process_handle, | 30 base::ProcessHandle render_process_handle, |
33 scoped_refptr<gfx::SurfaceTexture> surface_texture, | 31 scoped_refptr<gfx::SurfaceTexture> surface_texture, |
34 int render_frame_id, | 32 int render_frame_id, |
35 int player_id) override; | 33 int player_id) override; |
36 | 34 |
37 private: | 35 private: |
38 friend struct DefaultSingletonTraits<BrowserSurfaceTextureManager>; | |
39 | |
40 BrowserSurfaceTextureManager(); | |
41 ~BrowserSurfaceTextureManager() override; | |
42 | |
43 DISALLOW_COPY_AND_ASSIGN(BrowserSurfaceTextureManager); | 36 DISALLOW_COPY_AND_ASSIGN(BrowserSurfaceTextureManager); |
44 }; | 37 }; |
45 | 38 |
46 } // namespace content | 39 } // namespace content |
47 | 40 |
48 #endif // CONTENT_BROWSER_ANDROID_BROWSER_SURFACE_TEXTURE_MANAGER_H_ | 41 #endif // CONTENT_BROWSER_ANDROID_BROWSER_SURFACE_TEXTURE_MANAGER_H_ |
OLD | NEW |