blob: d96e93a5748e098b44511969e4c9d1c43da2eb70 [file] [log] [blame]
// Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef IMPORTVBO_H_INCLUDED
#define IMPORTVBO_H_INCLUDED
#include <GL/gl.h>
#include <GL/glext.h>
#ifndef IMPORTVBO_API
#define IMPORTVBO_API extern
#endif // IMPORTVBO_API
#ifndef IMPORTVBO_FNPTRINIT
#define IMPORTVBO_FNPTRINIT
#endif // IMPORTVBO_FNPTRINT
IMPORTVBO_API void (*FP_glGenBuffersARB)(GLsizei, GLuint *) IMPORTVBO_FNPTRINIT;
IMPORTVBO_API void (*FP_glBindBufferARB)(GLenum, GLuint) IMPORTVBO_FNPTRINIT;
IMPORTVBO_API void (*FP_glBufferDataARB)(GLenum, GLsizeiptrARB, const GLvoid *, GLenum) IMPORTVBO_FNPTRINIT;
IMPORTVBO_API void (*FP_glBufferSubDataARB)(GLenum, GLintptrARB, GLsizeiptrARB, const GLvoid *) IMPORTVBO_FNPTRINIT;
IMPORTVBO_API void (*FP_glDeleteBuffersARB)(GLsizei, const GLuint *) IMPORTVBO_FNPTRINIT;
typedef void (*FT_glGenBuffersARB)(GLsizei, GLuint *);
typedef void (*FT_glBindBufferARB)(GLenum, GLuint);
typedef void (*FT_glBufferDataARB)(GLenum, GLsizeiptrARB, const GLvoid *, GLenum);
typedef void (*FT_glBufferSubDataARB)(GLenum, GLintptrARB, GLsizeiptrARB, const GLvoid *);
typedef void (*FT_glDeleteBuffersARB)(GLsizei, const GLuint *);
// We define gl functions without the ARB postfix so GL and GLES code
// will have the same look.
#define glGenBuffers FP_glGenBuffersARB
#define glBindBuffer FP_glBindBufferARB
#define glBufferData FP_glBufferDataARB
#define glBufferSubData FP_glBufferSubDataARB
#define glDeleteBuffers FP_glDeleteBuffersARB
extern int loadVBOProcs();
#endif // IMPORTVBO_H_INCLUDED