OLD | NEW |
---|---|
1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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 CHROMECAST_OZONE_CAST_EGL_PLATFORM_H_ | 5 #ifndef CHROMECAST_PUBLIC_CAST_EGL_PLATFORM_H_ |
6 #define CHROMECAST_OZONE_CAST_EGL_PLATFORM_H_ | 6 #define CHROMECAST_PUBLIC_CAST_EGL_PLATFORM_H_ |
7 | 7 |
8 #include "ui/ozone/public/surface_factory_ozone.h" | 8 #include "ui/ozone/public/surface_factory_ozone.h" |
9 | 9 |
10 namespace gfx { | 10 namespace gfx { |
11 class Size; | 11 class Size; |
12 } | 12 } |
13 | 13 |
14 namespace chromecast { | 14 namespace chromecast { |
15 namespace ozone { | |
16 | 15 |
17 // Interface representing all the hardware-specific elements of an Ozone | 16 // Interface representing all the hardware-specific elements of an Ozone |
18 // implementation for Cast. Supply an implementation of this interface | 17 // implementation for Cast. Supply an implementation of this interface |
19 // to OzonePlatformCast to create a complete Ozone implementation. | 18 // to OzonePlatformCast to create a complete Ozone implementation. |
20 class CastEglPlatform { | 19 class CastEglPlatform { |
21 public: | 20 public: |
22 typedef ui::SurfaceFactoryOzone::AddGLLibraryCallback AddGLLibraryCallback; | 21 typedef ui::SurfaceFactoryOzone::AddGLLibraryCallback AddGLLibraryCallback; |
23 typedef ui::SurfaceFactoryOzone::SetGLGetProcAddressProcCallback | 22 typedef ui::SurfaceFactoryOzone::SetGLGetProcAddressProcCallback |
gunsch
2015/04/02 22:44:36
A thought: these typedefs seem to be the only depe
halliwell
2015/04/02 22:50:07
Yes, I think that would be good - although note it
gunsch
2015/04/02 22:56:47
I was thinking more along the lines of potentially
| |
24 SetGLGetProcAddressProcCallback; | 23 SetGLGetProcAddressProcCallback; |
25 | 24 |
26 virtual ~CastEglPlatform() {} | 25 virtual ~CastEglPlatform() {} |
27 | 26 |
28 // Default display size is used for initial display and also as a minimum | 27 // Default display size is used for initial display and also as a minimum |
29 // resolution for applications. | 28 // resolution for applications. |
30 virtual gfx::Size GetDefaultDisplaySize() const = 0; | 29 virtual gfx::Size GetDefaultDisplaySize() const = 0; |
31 | 30 |
32 // Returns an array of EGL properties, which can be used in any EGL function | 31 // Returns an array of EGL properties, which can be used in any EGL function |
33 // used to select a display configuration. Note that all properties should be | 32 // used to select a display configuration. Note that all properties should be |
(...skipping 22 matching lines...) Expand all Loading... | |
56 virtual intptr_t CreateDisplayType(const gfx::Size& size) = 0; | 55 virtual intptr_t CreateDisplayType(const gfx::Size& size) = 0; |
57 virtual void DestroyDisplayType(intptr_t display_type) = 0; | 56 virtual void DestroyDisplayType(intptr_t display_type) = 0; |
58 | 57 |
59 // Create/destroy an EGLNativeWindow. There will be at most one window at a | 58 // Create/destroy an EGLNativeWindow. There will be at most one window at a |
60 // time, created within a valid display type. | 59 // time, created within a valid display type. |
61 virtual intptr_t CreateWindow(intptr_t display_type, | 60 virtual intptr_t CreateWindow(intptr_t display_type, |
62 const gfx::Size& size) = 0; | 61 const gfx::Size& size) = 0; |
63 virtual void DestroyWindow(intptr_t window) = 0; | 62 virtual void DestroyWindow(intptr_t window) = 0; |
64 }; | 63 }; |
65 | 64 |
66 } // namespace ozone | |
67 } // namespace chromecast | 65 } // namespace chromecast |
68 | 66 |
69 #endif // CHROMECAST_OZONE_CAST_EGL_PLATFORM_H_ | 67 #endif // CHROMECAST_PUBLIC_CAST_EGL_PLATFORM_H_ |
OLD | NEW |