]> git.tdb.fi Git - libs/gl.git/blobdiff - source/vertexarray.h
Remove the deprecated ProgramBuilder class
[libs/gl.git] / source / vertexarray.h
index efbf8ce27cb2f4ef25c74c5b14c49ce1b2c2dd02..95a6ec2f3aa526ac11165b4f24e77e5d30d67b10 100644 (file)
@@ -5,7 +5,6 @@
 #include <vector>
 #include <msp/core/refptr.h>
 #include <msp/datafile/loader.h>
-#include "bindable.h"
 #include "bufferable.h"
 #include "datatype.h"
 #include "primitivetype.h"
@@ -27,7 +26,7 @@ VertexFormat::offset.
 A higher-level interface for filling in vertex data is available in the
 VertexArrayBuilder class.
 */
-class VertexArray: public Bindable<VertexArray>, public Bufferable
+class VertexArray: public Bufferable
 {
 public:
        class Loader: public DataFile::Loader, public VertexArrayBuilder
@@ -37,33 +36,20 @@ public:
        };
 
 private:
-       struct Array
-       {
-               unsigned char component;
-               unsigned char offset;
-
-               Array();
-       };
-
        VertexFormat format;
        std::vector<float> data;
        unsigned stride;
-       std::vector<Array> arrays;
 
        VertexArray(const VertexArray &);
        VertexArray &operator=(const VertexArray &);
 public:
        VertexArray(const VertexFormat &);
-       ~VertexArray();
 
        /// Resets the VertexArray to a different format.  All data is cleared.
        void reset(const VertexFormat &);
 
        const VertexFormat &get_format() const { return format; }
-private:
-       static unsigned get_array_slot(unsigned char);
 
-public:
        /// Clears all vertices from the array.
        void clear();
 
@@ -83,17 +69,6 @@ public:
        unsigned size() const { return data.size()/stride; }
        const std::vector<float> &get_data() const { return data; }
        const float *operator[](unsigned i) const { return &data[0]+i*stride; }
-
-       /// Equivalent to apply().  For compatibility with the Bindable interface.
-       void bind() const { apply(); }
-
-       /// Applies component arrays to the GL.
-       void apply() const;
-
-private:
-       static void apply_arrays(const std::vector<Array> *, const std::vector<Array> *, const float *, unsigned);
-public:
-       static void unbind();
 };
 
 } // namespace GL