blob: aa0fbcadd581987e89b576c43bc51452be50d8cb [file] [log] [blame]
commit-bot@chromium.org9add5dc2014-04-29 20:06:22 +00001
2/*
3 * Copyright 2014 Google Inc.
4 *
5 * Use of this source code is governed by a BSD-style license that can be
6 * found in the LICENSE file.
7 */
8
9#include "gl/GrGLInterface.h"
10
11typedef void(*GrGLFuncPtr)();
12typedef GrGLFuncPtr (*GrGLGetProc)(void* ctx, const char name[]);
13
bsalomona721c812014-08-26 11:35:23 -070014
15/**
16 * Generic function for creating a GrGLInterface for an either OpenGL or GLES. It calls
17 * get() to get each function address. ctx is a generic ptr passed to and interpreted by get().
18 */
19const GrGLInterface* GrGLAssembleInterface(void* ctx, GrGLGetProc get);
20
commit-bot@chromium.org9add5dc2014-04-29 20:06:22 +000021/**
22 * Generic function for creating a GrGLInterface for an OpenGL (but not GLES) context. It calls
23 * get() to get each function address. ctx is a generic ptr passed to and interpreted by get().
24 */
25const GrGLInterface* GrGLAssembleGLInterface(void* ctx, GrGLGetProc get);
bsalomona721c812014-08-26 11:35:23 -070026
27/**
28 * Generic function for creating a GrGLInterface for an OpenGL ES (but not Open GL) context. It
29 * calls get() to get each function address. ctx is a generic ptr passed to and interpreted by
30 * get().
31 */
32const GrGLInterface* GrGLAssembleGLESInterface(void* ctx, GrGLGetProc get);