cc: Make picture pile base thread safe.
[chromium-blink-merge.git] / mojo / public / platform / native / gles2_impl_thunks.cc
blob66dbc396cab152d59148b82d293fdbdea5ba6c85
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.
5 #include "mojo/public/platform/native/gles2_impl_thunks.h"
7 #include <assert.h>
9 #include "mojo/public/platform/native/thunk_export.h"
11 extern "C" {
12 static MojoGLES2ImplThunks g_impl_thunks = {0};
14 #define VISIT_GL_CALL(Function, ReturnType, PARAMETERS, ARGUMENTS) \
15 ReturnType gl##Function PARAMETERS { \
16 assert(g_impl_thunks.Function); \
17 return g_impl_thunks.Function ARGUMENTS; \
19 #include "mojo/public/c/gles2/gles2_call_visitor_autogen.h"
20 #undef VISIT_GL_CALL
22 extern "C" THUNK_EXPORT size_t
23 MojoSetGLES2ImplThunks(const MojoGLES2ImplThunks* gles2_impl_thunks) {
24 if (gles2_impl_thunks->size >= sizeof(g_impl_thunks))
25 g_impl_thunks = *gles2_impl_thunks;
26 return sizeof(g_impl_thunks);
29 } // extern "C"