]> git.tdb.fi Git - libs/gl.git/blobdiff - source/buffer.cpp
Complete rewrite of extension handling
[libs/gl.git] / source / buffer.cpp
index f3b40da6ab469623f8d7e2a27a65a6964da657c1..84c72716d0e5da16cebb42fcd8e191c093ae1bd3 100644 (file)
@@ -1,8 +1,8 @@
 #include <stdexcept>
+#include "arb_pixel_buffer_object.h"
 #include "arb_uniform_buffer_object.h"
 #include "arb_vertex_buffer_object.h"
 #include "buffer.h"
-#include "extension.h"
 #include "misc.h"
 
 using namespace std;
@@ -19,21 +19,21 @@ Buffer::Buffer(BufferType t):
 {
        require_buffer_type(type);
 
-       glGenBuffersARB(1, &id);
+       glGenBuffers(1, &id);
 }
 
 Buffer::~Buffer()
 {
-       glDeleteBuffersARB(1, &id);
+       glDeleteBuffers(1, &id);
 }
 
 void Buffer::require_buffer_type(BufferType type)
 {
-       static RequireExtension _req_vbo("GL_ARB_vertex_buffer_object");
+       static Require _req_vbo(ARB_vertex_buffer_object);
        if(type==PIXEL_PACK_BUFFER || type==PIXEL_UNPACK_BUFFER)
-               static RequireExtension _req_pbo("GL_ARB_pixel_buffer_object");
+               static Require _req_pbo(ARB_pixel_buffer_object);
        else if(type==UNIFORM_BUFFER)
-               static RequireExtension _req_ubo("GL_ARB_uniform_buffer_object");
+               static Require _req_ubo(ARB_uniform_buffer_object);
 }
 
 void Buffer::set_usage(BufferUsage u)
@@ -45,7 +45,7 @@ void Buffer::data(unsigned sz, const void *d)
 {
        const Buffer *old = current(type);
        bind();
-       glBufferDataARB(type, sz, d, usage);
+       glBufferData(type, sz, d, usage);
        size = sz;
        restore(old, type);
 }
@@ -54,7 +54,7 @@ void Buffer::sub_data(unsigned off, unsigned sz, const void *d)
 {
        const Buffer *old = current(type);
        bind();
-       glBufferSubDataARB(type, off, sz, d);
+       glBufferSubData(type, off, sz, d);
        restore(old, type);
 }
 
@@ -68,13 +68,13 @@ void Buffer::bind_to(BufferType t) const
        if(t!=type)
                require_buffer_type(t);
        if(set_current(t, this))
-               glBindBufferARB(t, id);
+               glBindBuffer(t, id);
 }
 
 void Buffer::unbind_from(BufferType type)
 {
        if(set_current(type, 0))
-               glBindBufferARB(type, 0);
+               glBindBuffer(type, 0);
 }
 
 const Buffer *&Buffer::binding(BufferType type)