X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fbackends%2Fopengl%2Fvertexsetup_backend.h;fp=source%2Fbackends%2Fopengl%2Fvertexsetup_backend.h;h=954dcc7f8fe3c5ca029303194f44266ec5ffb641;hb=160e9eea29bd10034733d59507fa1bcca36be401;hp=0000000000000000000000000000000000000000;hpb=93448d16e72e38afbaecbccf6fdedd46d6a82a73;p=libs%2Fgl.git diff --git a/source/backends/opengl/vertexsetup_backend.h b/source/backends/opengl/vertexsetup_backend.h new file mode 100644 index 00000000..954dcc7f --- /dev/null +++ b/source/backends/opengl/vertexsetup_backend.h @@ -0,0 +1,34 @@ +#ifndef MSP_GL_VERTEXSETUP_BACKEND_H_ +#define MSP_GL_VERTEXSETUP_BACKEND_H_ + +namespace Msp { +namespace GL { + +class VertexArray; +class VertexFormat; + +class OpenGLVertexSetup +{ + friend class OpenGLPipelineState; + +protected: + unsigned id; + + OpenGLVertexSetup(); + ~OpenGLVertexSetup(); + + static void require_format(const VertexFormat &, bool); + void update(unsigned) const; + void update_vertex_array(const VertexArray &, unsigned, unsigned, bool) const; + + void unload(); + + void set_debug_name(const std::string &); +}; + +using VertexSetupBackend = OpenGLVertexSetup; + +} // namespace GL +} // namespace Msp + +#endif