Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(208)

Side by Side Diff: mojo/public/platform/native/gles2_impl_chromium_map_sub_thunks.h

Issue 1307883004: Use C OpenGL interface in mojo::GLContext (Closed) Base URL: git@github.com:domokit/mojo.git@master
Patch Set: Created 5 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(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_NATIVE_GLES2_IMPL_CHROMIUM_MAP_SUB_THUNKS_H_
6 #define MOJO_PUBLIC_PLATFORM_NATIVE_GLES2_IMPL_CHROMIUM_MAP_SUB_THUNKS_H_
7
8 #include <stddef.h>
9
10 #include "mojo/public/c/gles2/chromium_map_sub.h"
11
12 // Specifies the frozen API for the GLES2 CHROMIUM_map_sub extension.
13 #pragma pack(push, 8)
14 struct MojoGLES2ImplChromiumMapSubThunks {
15 size_t size; // Should be set to sizeof(*this).
16
17 #define VISIT_GL_CALL(Function, ReturnType, PARAMETERS, ARGUMENTS) \
18 ReturnType(GL_APIENTRY* Function) PARAMETERS;
19 #include "mojo/public/c/gles2/gles2_call_visitor_chromium_map_sub_autogen.h"
20 #undef VISIT_GL_CALL
21 };
22 #pragma pack(pop)
23
24 // Intended to be called from the embedder to get the embedder's implementation
25 // of GLES2.
26 inline MojoGLES2ImplChromiumMapSubThunks
27 MojoMakeGLES2ImplChromiumMapSubThunks() {
28 MojoGLES2ImplChromiumMapSubThunks gles2_impl_chromium_map_sub_thunks = {
29 sizeof(MojoGLES2ImplChromiumMapSubThunks),
30 #define VISIT_GL_CALL(Function, ReturnType, PARAMETERS, ARGUMENTS) gl##Function,
31 #include "mojo/public/c/gles2/gles2_call_visitor_chromium_map_sub_autogen.h"
32 #undef VISIT_GL_CALL
33 };
34
35 return gles2_impl_chromium_map_sub_thunks;
36 }
37
38 // Use this type for the function found by dynamically discovering it in
39 // a DSO linked with mojo_system.
40 // The contents of |gles2_impl_chromium_map_sub_thunks| are copied.
41 typedef size_t (*MojoSetGLES2ImplChromiumMapSubThunksFn)(
42 const MojoGLES2ImplChromiumMapSubThunks* thunks);
43
44 #endif // MOJO_PUBLIC_PLATFORM_NATIVE_GLES2_IMPL_CHROMIUM_MAP_SUB_THUNKS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698