OLD | NEW |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2013 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 UI_OZONE_PUBLIC_SURFACE_FACTORY_OZONE_H_ | 5 #ifndef UI_OZONE_PUBLIC_SURFACE_FACTORY_OZONE_H_ |
6 #define UI_OZONE_PUBLIC_SURFACE_FACTORY_OZONE_H_ | 6 #define UI_OZONE_PUBLIC_SURFACE_FACTORY_OZONE_H_ |
7 | 7 |
8 #include "base/callback.h" | 8 #include "base/callback.h" |
9 #include "base/memory/scoped_ptr.h" | 9 #include "base/memory/scoped_ptr.h" |
10 #include "base/native_library.h" | 10 #include "base/native_library.h" |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
113 // that allow Ozone to register the GL bindings. | 113 // that allow Ozone to register the GL bindings. |
114 virtual bool LoadEGLGLES2Bindings( | 114 virtual bool LoadEGLGLES2Bindings( |
115 AddGLLibraryCallback add_gl_library, | 115 AddGLLibraryCallback add_gl_library, |
116 SetGLGetProcAddressProcCallback set_gl_get_proc_address) = 0; | 116 SetGLGetProcAddressProcCallback set_gl_get_proc_address) = 0; |
117 | 117 |
118 // Returns an array of EGL properties, which can be used in any EGL function | 118 // Returns an array of EGL properties, which can be used in any EGL function |
119 // used to select a display configuration. Note that all properties should be | 119 // used to select a display configuration. Note that all properties should be |
120 // immediately followed by the corresponding desired value and array should be | 120 // immediately followed by the corresponding desired value and array should be |
121 // terminated with EGL_NONE. Ownership of the array is not transferred to | 121 // terminated with EGL_NONE. Ownership of the array is not transferred to |
122 // caller. desired_list contains list of desired EGL properties and values. | 122 // caller. desired_list contains list of desired EGL properties and values. |
123 virtual const int32* GetEGLSurfaceProperties(const int32* desired_list); | 123 // If |surface| is valid, then return a configuration for that surface. |
| 124 virtual const int32* GetEGLSurfaceProperties(const int32* desired_list, |
| 125 SurfaceOzoneEGL* surface); |
124 | 126 |
125 // Get the hal struct to check for overlay support. | 127 // Get the hal struct to check for overlay support. |
126 virtual OverlayCandidatesOzone* GetOverlayCandidates( | 128 virtual OverlayCandidatesOzone* GetOverlayCandidates( |
127 gfx::AcceleratedWidget w); | 129 gfx::AcceleratedWidget w); |
128 | 130 |
129 // Create a single native buffer to be used for overlay planes or zero copy | 131 // Create a single native buffer to be used for overlay planes or zero copy |
130 // for |widget| representing a particular display controller or default | 132 // for |widget| representing a particular display controller or default |
131 // display controller for kNullAcceleratedWidget. | 133 // display controller for kNullAcceleratedWidget. |
132 virtual scoped_refptr<NativePixmap> CreateNativePixmap( | 134 virtual scoped_refptr<NativePixmap> CreateNativePixmap( |
133 gfx::AcceleratedWidget widget, | 135 gfx::AcceleratedWidget widget, |
(...skipping 28 matching lines...) Expand all Loading... |
162 // such as MAP for zero copy or SCANOUT for display controller. | 164 // such as MAP for zero copy or SCANOUT for display controller. |
163 virtual bool CanCreateNativePixmap(BufferUsage usage); | 165 virtual bool CanCreateNativePixmap(BufferUsage usage); |
164 | 166 |
165 private: | 167 private: |
166 static SurfaceFactoryOzone* impl_; // not owned | 168 static SurfaceFactoryOzone* impl_; // not owned |
167 }; | 169 }; |
168 | 170 |
169 } // namespace ui | 171 } // namespace ui |
170 | 172 |
171 #endif // UI_OZONE_PUBLIC_SURFACE_FACTORY_OZONE_H_ | 173 #endif // UI_OZONE_PUBLIC_SURFACE_FACTORY_OZONE_H_ |
OLD | NEW |