0023022: This is desirable to access OpenGl extensions and core API (1.2+) in one...
[occt.git] / src / OpenGl / OpenGl_ArbVBO.hxx
index 4920684..6574cc7 100644 (file)
@@ -6,39 +6,16 @@
 #ifndef _OpenGl_ArbVBO_H__
 #define _OpenGl_ArbVBO_H__
 
-#if (defined(_WIN32) || defined(__WIN32__))
-  #include <windows.h>
-#endif
-#include <GL/gl.h>
-
-typedef ptrdiff_t GLsizeiptr;
+#include <OpenGl_GlCore12.hxx>
 
 //! VBO is part of OpenGL since 1.5
 struct OpenGl_ArbVBO
 {
-  #ifndef GL_ARRAY_BUFFER_ARB
-    #define GL_ARRAY_BUFFER_ARB          0x8892
-  #endif
-  #ifndef GL_STATIC_DRAW_ARB
-    #define GL_STATIC_DRAW_ARB           0x88E4
-  #endif
-  #ifndef GL_ELEMENTS_ARRAY_BUFFER_ARB
-    #define GL_ELEMENTS_ARRAY_BUFFER_ARB 0x8893
-  #endif
-
-public:
-
-  typedef void (APIENTRY *glBindBuffer_t)    (GLenum target, GLuint buffer);
-  typedef void (APIENTRY *glDeleteBuffers_t) (GLsizei n, const GLuint* buffers);
-  typedef void (APIENTRY *glGenBuffers_t)    (GLsizei n, GLuint* buffers);
-  typedef void (APIENTRY *glBufferData_t)    (GLenum target, GLsizeiptr size, const GLvoid* data, GLenum usage);
-
-public:
 
-  glGenBuffers_t    glGenBuffersARB;
-  glBindBuffer_t    glBindBufferARB;
-  glBufferData_t    glBufferDataARB;
-  glDeleteBuffers_t glDeleteBuffersARB;
+  PFNGLGENBUFFERSARBPROC    glGenBuffersARB;
+  PFNGLBINDBUFFERARBPROC    glBindBufferARB;
+  PFNGLBUFFERDATAARBPROC    glBufferDataARB;
+  PFNGLDELETEBUFFERSARBPROC glDeleteBuffersARB;
 
 };