X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fcore%2Fvertexsetup.h;h=7daef8845ac03688c570af5c40ff10f8a80324dc;hb=160e9eea29bd10034733d59507fa1bcca36be401;hp=756f5bc03644990990aafb1f360c1cebb9b6bfe0;hpb=73567be7cd9e01e620cb2a8fa0ca381723b9a71f;p=libs%2Fgl.git diff --git a/source/core/vertexsetup.h b/source/core/vertexsetup.h index 756f5bc0..7daef884 100644 --- a/source/core/vertexsetup.h +++ b/source/core/vertexsetup.h @@ -3,6 +3,7 @@ #include "datatype.h" #include "vertexformat.h" +#include "vertexsetup_backend.h" namespace Msp { namespace GL { @@ -14,8 +15,10 @@ class VertexArray; Combines a VertexArray with an index buffer. This wraps OpenGL's vertex array objects. Intended for internal use. */ -class VertexSetup +class VertexSetup: public VertexSetupBackend { + friend VertexSetupBackend; + private: enum ComponentMask { @@ -24,7 +27,6 @@ private: INDEX_BUFFER = 4 }; - unsigned id; mutable unsigned dirty; const VertexArray *vertex_array; VertexFormat vertex_format; @@ -35,7 +37,6 @@ private: public: VertexSetup(); - ~VertexSetup(); void set_format(const VertexFormat &); void set_format_instanced(const VertexFormat &, const VertexFormat &); @@ -51,16 +52,13 @@ public: private: static bool verify_format(const VertexFormat &); void update() const; - void update_vertex_array(const VertexArray &, unsigned, unsigned, bool) const; public: void refresh() const { if(dirty) update(); } - unsigned get_id() const { return id; } - void unload(); - void set_debug_name(const std::string &); + using VertexSetupBackend::set_debug_name; }; } // namespace GL