82 lines
3.5 KiB
C
82 lines
3.5 KiB
C
/* -*- tab-width: 4; -*- */
|
|
/* vi: set sw=2 ts=4: */
|
|
|
|
/* $Id: e9ec772d88c4c93ce716eaa4864e8481736bc2bd $ */
|
|
|
|
/*
|
|
Copyright (c) 2010 The Khronos Group Inc.
|
|
|
|
Permission is hereby granted, free of charge, to any person obtaining a
|
|
copy of this software and/or associated documentation files (the
|
|
"Materials"), to deal in the Materials without restriction, including
|
|
without limitation the rights to use, copy, modify, merge, publish,
|
|
distribute, sublicense, and/or sell copies of the Materials, and to
|
|
permit persons to whom the Materials are furnished to do so, subject to
|
|
the following conditions:
|
|
|
|
The above copyright notice and this permission notice shall be included
|
|
unaltered in all copies or substantial portions of the Materials.
|
|
Any additions, deletions, or changes to the original source files
|
|
must be clearly indicated in accompanying documentation.
|
|
|
|
If only executable code is distributed, then the accompanying
|
|
documentation must state that "this software is based in part on the
|
|
work of the Khronos Group."
|
|
|
|
THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
|
|
IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
|
|
CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
|
|
TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
|
|
MATERIALS OR THE USE OR OTHER DEALINGS IN THE MATERIALS.
|
|
*/
|
|
|
|
/*
|
|
* Author: Mark Callow based on code from Georg Kolling
|
|
*/
|
|
|
|
#ifndef GLES1_FUNCPTRS_H
|
|
#define GLES1_FUNCPTRS_H
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/* remove these where already defined as typedefs (GCC 4 complains of duplicate definitions) */
|
|
typedef void (GL_APIENTRY* PFNGLTEXIMAGE1DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
|
|
typedef void (GL_APIENTRY* PFNGLTEXIMAGE3DPROC) (GLenum target, GLint level, GLint internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLenum format, GLenum type, const GLvoid *pixels);
|
|
typedef void (GL_APIENTRY* PFNGLCOMPRESSEDTEXIMAGE1DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLint border, GLsizei imageSize, const GLvoid *data);
|
|
typedef void (GL_APIENTRY* PFNGLCOMPRESSEDTEXIMAGE3DPROC) (GLenum target, GLint level, GLenum internalformat, GLsizei width, GLsizei height, GLsizei depth, GLint border, GLsizei imageSize, const GLvoid *data);
|
|
typedef void (GL_APIENTRY* PFNGLGENERATEMIPMAPPROC) (GLenum target);
|
|
typedef const GLubyte* (GL_APIENTRY* PFNGLGETSTRINGIPROC) (GLenum name, GLuint index);
|
|
|
|
extern PFNGLTEXIMAGE1DPROC pfGlTexImage1D;
|
|
extern PFNGLTEXIMAGE3DPROC pfGlTexImage3D;
|
|
extern PFNGLCOMPRESSEDTEXIMAGE1DPROC pfGlCompressedTexImage1D;
|
|
extern PFNGLCOMPRESSEDTEXIMAGE3DPROC pfGlCompressedTexImage3D;
|
|
extern PFNGLGENERATEMIPMAPPROC pfGlGenerateMipmap;
|
|
extern PFNGLGETSTRINGIPROC pfGlGetStringi;
|
|
|
|
#define DECLARE_GL_FUNCPTRS \
|
|
PFNGLTEXIMAGE1DPROC pfGlTexImage1D; \
|
|
PFNGLTEXIMAGE3DPROC pfGlTexImage3D; \
|
|
PFNGLCOMPRESSEDTEXIMAGE1DPROC pfGlCompressedTexImage1D; \
|
|
PFNGLCOMPRESSEDTEXIMAGE3DPROC pfGlCompressedTexImage3D; \
|
|
PFNGLGENERATEMIPMAPPROC pfGlGenerateMipmap; \
|
|
PFNGLGETSTRINGIPROC pfGlGetStringi;
|
|
|
|
#define INITIALIZE_GL_FUNCPTRS \
|
|
pfGlTexImage1D = 0; \
|
|
pfGlTexImage3D = 0; \
|
|
pfGlCompressedTexImage1D = 0; \
|
|
pfGlCompressedTexImage3D = 0; \
|
|
pfGlGenerateMipmap = 0; \
|
|
pfGlGetStringi = 0;
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* GLES1_FUNCPTRS_H */
|