Home | History | Annotate | Download | only in src
      1 // Copyright (c) 2010 The Chromium OS 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 IMPORTVBO_H_INCLUDED
      6 #define IMPORTVBO_H_INCLUDED
      7 
      8 #include <GL/gl.h>
      9 #include <GL/glext.h>
     10 
     11 #ifndef IMPORTVBO_API
     12 #define IMPORTVBO_API extern
     13 #endif  // IMPORTVBO_API
     14 
     15 #ifndef IMPORTVBO_FNPTRINIT
     16 #define IMPORTVBO_FNPTRINIT
     17 #endif  // IMPORTVBO_FNPTRINT
     18 
     19 IMPORTVBO_API void (*FP_glGenBuffersARB)(GLsizei, GLuint *) IMPORTVBO_FNPTRINIT;
     20 IMPORTVBO_API void (*FP_glBindBufferARB)(GLenum, GLuint) IMPORTVBO_FNPTRINIT;
     21 IMPORTVBO_API void (*FP_glBufferDataARB)(GLenum, GLsizeiptrARB, const GLvoid *, GLenum) IMPORTVBO_FNPTRINIT;
     22 IMPORTVBO_API void (*FP_glBufferSubDataARB)(GLenum, GLintptrARB, GLsizeiptrARB, const GLvoid *) IMPORTVBO_FNPTRINIT;
     23 IMPORTVBO_API void (*FP_glDeleteBuffersARB)(GLsizei, const GLuint *) IMPORTVBO_FNPTRINIT;
     24 
     25 typedef void (*FT_glGenBuffersARB)(GLsizei, GLuint *);
     26 typedef void (*FT_glBindBufferARB)(GLenum, GLuint);
     27 typedef void (*FT_glBufferDataARB)(GLenum, GLsizeiptrARB, const GLvoid *, GLenum);
     28 typedef void (*FT_glBufferSubDataARB)(GLenum, GLintptrARB, GLsizeiptrARB, const GLvoid *);
     29 typedef void (*FT_glDeleteBuffersARB)(GLsizei, const GLuint *);
     30 
     31 // We define gl functions without the ARB postfix so GL and GLES code
     32 // will have the same look.
     33 #define glGenBuffers FP_glGenBuffersARB
     34 #define glBindBuffer FP_glBindBufferARB
     35 #define glBufferData FP_glBufferDataARB
     36 #define glBufferSubData FP_glBufferSubDataARB
     37 #define glDeleteBuffers FP_glDeleteBuffersARB
     38 
     39 extern int loadVBOProcs();
     40 
     41 #endif  // IMPORTVBO_H_INCLUDED
     42 
     43