OLD | NEW |
| (Empty) |
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 | |
3 // found in the LICENSE file. | |
4 | |
5 #ifndef MOJO_PUBLIC_PLATFORM_NACL_MGL_IRT_H_ | |
6 #define MOJO_PUBLIC_PLATFORM_NACL_MGL_IRT_H_ | |
7 | |
8 #include <MGL/mgl.h> | |
9 #include <MGL/mgl_onscreen.h> | |
10 #include <MGL/mgl_signal_sync_point.h> | |
11 | |
12 #define NACL_IRT_MGL_v0_1 "nacl-irt-mgl-0.1" | |
13 | |
14 // See mojo/public/c/include/MGL/mgl.h for documentation. | |
15 struct nacl_irt_mgl { | |
16 MGLContext (*MGLCreateContext)(MGLOpenGLAPIVersion version, | |
17 MojoHandle command_buffer_handle, | |
18 MGLContext share_group, | |
19 MGLContextLostCallback lost_callback, | |
20 void* lost_callback_closure, | |
21 const struct MojoAsyncWaiter* async_waiter); | |
22 void (*MGLDestroyContext)(MGLContext context); | |
23 void (*MGLMakeCurrent)(MGLContext context); | |
24 MGLContext (*MGLGetCurrentContext)(void); | |
25 MGLMustCastToProperFunctionPointerType (*MGLGetProcAddress)(const char* name); | |
26 }; | |
27 | |
28 #define NACL_IRT_MGL_ONSCREEN_v0_1 "nacl-irt-mgl-onscreen-0.1" | |
29 | |
30 // See mojo/public/c/include/MGL/mgl_onscreen.h for documentation. | |
31 struct nacl_irt_mgl_onscreen { | |
32 void (*MGLResizeSurface)(uint32_t width, uint32_t height); | |
33 void (*MGLSwapBuffers)(void); | |
34 }; | |
35 | |
36 #define NACL_IRT_MGL_SIGNAL_SYNC_POINT_v0_1 "nacl-irt-mgl-signal-sync-point-0.1" | |
37 | |
38 // See mojo/public/c/include/MGL/mgl_signal_sync_point.h for documentation. | |
39 struct nacl_irt_mgl_signal_sync_point { | |
40 void (*MGLSignalSyncPoint)(uint32_t sync_point, | |
41 MGLSignalSyncPointCallback callback, | |
42 void* closure); | |
43 }; | |
44 | |
45 #endif // MOJO_PUBLIC_PLATFORM_NACL_MGL_IRT_H_ | |
OLD | NEW |