OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 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 MOJO_PUBLIC_C_GLES2_GLES2_H_ | 5 #ifndef MOJO_PUBLIC_C_GLES2_GLES2_H_ |
6 #define MOJO_PUBLIC_C_GLES2_GLES2_H_ | 6 #define MOJO_PUBLIC_C_GLES2_GLES2_H_ |
7 | 7 |
8 // Note: This header should be compilable as C. | 8 // Note: This header should be compilable as C. |
9 | 9 |
10 #include <GLES2/gl2.h> | 10 #include <GLES2/gl2.h> |
11 #include <stdint.h> | 11 #include <stdint.h> |
12 | 12 |
13 #include "mojo/public/c/environment/async_waiter.h" | |
14 #include "mojo/public/c/gles2/gles2_export.h" | 13 #include "mojo/public/c/gles2/gles2_export.h" |
15 #include "mojo/public/c/gles2/gles2_types.h" | 14 #include "mojo/public/c/gles2/gles2_types.h" |
16 #include "mojo/public/c/system/types.h" | 15 #include "mojo/public/c/system/types.h" |
17 | 16 |
18 #ifdef __cplusplus | 17 #ifdef __cplusplus |
19 extern "C" { | 18 extern "C" { |
20 #endif | 19 #endif |
21 | 20 |
22 MOJO_GLES2_EXPORT MojoGLES2Context | 21 MOJO_GLES2_EXPORT MojoGLES2Context |
23 MojoGLES2CreateContext(MojoHandle handle, | 22 MojoGLES2CreateContext(MojoHandle handle, |
24 const int32_t* attrib_list, | 23 const int32_t* attrib_list, |
25 MojoGLES2ContextLost lost_callback, | 24 MojoGLES2ContextLost lost_callback, |
26 void* closure, | 25 void* closure); |
27 const MojoAsyncWaiter* async_waiter); | |
28 MOJO_GLES2_EXPORT void MojoGLES2DestroyContext(MojoGLES2Context context); | 26 MOJO_GLES2_EXPORT void MojoGLES2DestroyContext(MojoGLES2Context context); |
29 MOJO_GLES2_EXPORT void MojoGLES2MakeCurrent(MojoGLES2Context context); | 27 MOJO_GLES2_EXPORT void MojoGLES2MakeCurrent(MojoGLES2Context context); |
30 MOJO_GLES2_EXPORT void MojoGLES2SwapBuffers(void); | 28 MOJO_GLES2_EXPORT void MojoGLES2SwapBuffers(void); |
31 | 29 |
32 // TODO(piman): We shouldn't have to leak this interface, especially in a | 30 // TODO(piman): We shouldn't have to leak this interface, especially in a |
33 // type-unsafe way. | 31 // type-unsafe way. |
34 MOJO_GLES2_EXPORT void* MojoGLES2GetGLES2Interface(MojoGLES2Context context); | 32 MOJO_GLES2_EXPORT void* MojoGLES2GetGLES2Interface(MojoGLES2Context context); |
35 | 33 |
36 #define VISIT_GL_CALL(Function, ReturnType, PARAMETERS, ARGUMENTS) \ | 34 #define VISIT_GL_CALL(Function, ReturnType, PARAMETERS, ARGUMENTS) \ |
37 MOJO_GLES2_EXPORT ReturnType GL_APIENTRY gl##Function PARAMETERS; | 35 MOJO_GLES2_EXPORT ReturnType GL_APIENTRY gl##Function PARAMETERS; |
38 #include "mojo/public/c/gles2/gles2_call_visitor_autogen.h" | 36 #include "mojo/public/c/gles2/gles2_call_visitor_autogen.h" |
39 #undef VISIT_GL_CALL | 37 #undef VISIT_GL_CALL |
40 | 38 |
41 #ifdef __cplusplus | 39 #ifdef __cplusplus |
42 } // extern "C" | 40 } // extern "C" |
43 #endif | 41 #endif |
44 | 42 |
45 #endif // MOJO_PUBLIC_C_GLES2_GLES2_H_ | 43 #endif // MOJO_PUBLIC_C_GLES2_GLES2_H_ |
OLD | NEW |