+++ /dev/null
-#ifndef MSP_GL_VERTEXSETUP_H_
-#define MSP_GL_VERTEXSETUP_H_
-
-#include "bindable.h"
-
-namespace Msp {
-namespace GL {
-
-class VertexArray;
-
-/**
-Combines a VertexArray with an index buffer. This wraps OpenGL's vertex array
-objects. Intended for internal use.
-*/
-class VertexSetup: public Bindable<VertexSetup>
-{
-private:
- enum ComponentMask
- {
- VERTEX_ARRAY = 1,
- INDEX_BUFFER = 2
- };
-
- unsigned id;
- mutable unsigned dirty;
- const VertexArray *array;
- const Buffer *index_buffer;
-
-public:
- VertexSetup();
- ~VertexSetup();
-
- void set_vertex_array(const VertexArray &);
- void set_instance_array(const VertexArray &);
- void set_index_buffer(const Buffer &);
- const Buffer *get_index_buffer() const { return index_buffer; }
-
-private:
- void update(unsigned) const;
- void update_vertex_array() const;
-
-public:
- void bind() const;
- static void unbind();
-};
-
-} // namespace GL
-} // namespace Msp
-
-#endif