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

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

Issue 814543006: Move //mojo/{public, edk} underneath //third_party (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase Created 5 years, 11 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 2014 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_THUNKS_H_
6 #define MOJO_PUBLIC_PLATFORM_NATIVE_GLES2_IMPL_THUNKS_H_
7
8 #include <stddef.h>
9
10 #include "mojo/public/c/gles2/gles2.h"
11
12 // Like MojoGLES2ControlThunks, but specifies the frozen GLES2 API. Separated
13 // out as MojoGLES2ControlThunks may be modified and added to, but this
14 // interface is frozen.
15 #pragma pack(push, 8)
16 struct MojoGLES2ImplThunks {
17 size_t size; // Should be set to sizeof(MojoGLES2ImplThunks).
18
19 #define VISIT_GL_CALL(Function, ReturnType, PARAMETERS, ARGUMENTS) \
20 ReturnType(*Function) PARAMETERS;
21 #include "mojo/public/c/gles2/gles2_call_visitor_autogen.h"
22 #undef VISIT_GL_CALL
23 };
24 #pragma pack(pop)
25
26 // Intended to be called from the embedder to get the embedder's implementation
27 // of GLES2.
28 inline MojoGLES2ImplThunks MojoMakeGLES2ImplThunks() {
29 MojoGLES2ImplThunks gles2_impl_thunks = {
30 sizeof(MojoGLES2ImplThunks),
31 #define VISIT_GL_CALL(Function, ReturnType, PARAMETERS, ARGUMENTS) gl##Function,
32 #include "mojo/public/c/gles2/gles2_call_visitor_autogen.h"
33 #undef VISIT_GL_CALL
34 };
35
36 return gles2_impl_thunks;
37 }
38
39 // Use this type for the function found by dynamically discovering it in
40 // a DSO linked with mojo_system. For example:
41 // MojoSetGLES2ImplThunksFn mojo_set_gles2_impl_thunks_fn =
42 // reinterpret_cast<MojoSetGLES2ImplThunksFn>(
43 // app_library.GetFunctionPointer("MojoSetGLES2ImplThunks"));
44 // The expected size of |gles2_impl_thunks| is returned.
45 // The contents of |gles2_impl_thunks| are copied.
46 typedef size_t (*MojoSetGLES2ImplThunksFn)(
47 const MojoGLES2ImplThunks* gles2_impl_thunks);
48
49 #endif // MOJO_PUBLIC_PLATFORM_NATIVE_GLES2_IMPL_THUNKS_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698