X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=flavors%2Fgl%2Fsource%2Fglstate.h;h=e6a3d9812f556f6b351799da28625e8978620402;hb=73d29911044cfffdc7edad50aeb2a8d1175ecd11;hp=86cc5386ae02acbd973fab7b4743c16e3c928672;hpb=f53057ce9b5eb3c7256a4aca95b4944733e14503;p=gldbg.git diff --git a/flavors/gl/source/glstate.h b/flavors/gl/source/glstate.h index 86cc538..e6a3d98 100644 --- a/flavors/gl/source/glstate.h +++ b/flavors/gl/source/glstate.h @@ -1,10 +1,3 @@ -/* $Id$ - -This file is part of gldbg -Copyright © 2009-2010 Mikko Rasa, Mikkosoft Productions -Distributed under the GPL -*/ - #ifndef GLSTATE_H_ #define GLSTATE_H_ @@ -57,6 +50,8 @@ private: BufferMap buffers; BufferState *array_buffer; BufferState *element_buffer; + BufferState *uniform_buffer; + std::vector uniform_bind_points; ArrayState vertex_array; ArrayState normal_array; ArrayState color_array; @@ -77,15 +72,19 @@ public: const BufferMap &get_buffers() const { return buffers; } const BufferState &get_buffer(unsigned) const; const BufferState *get_current_buffer(GLenum) const; + const BufferBindingState &get_buffer_binding(GLenum, unsigned) const; const ArrayState &get_array(GLenum) const; const ArrayState &get_texture_coord_array(unsigned) const; const ArrayState &get_attrib_array(unsigned) const; private: bool &get_boolean_state(GLenum); TextureState *get_current_texture(GLenum); + BufferState *get_buffer_object(unsigned); BufferState *get_current_buffer(GLenum); + BufferBindingState *get_buffer_binding(GLenum, unsigned); void set_current_texture(GLenum, unsigned); void set_current_buffer(GLenum, unsigned); + ArrayState &get_attrib_array(unsigned); static void glEnableClientState(void *, GLenum); static void glDisableClientState(void *, GLenum); @@ -113,12 +112,17 @@ private: static void glColorPointer(void *, int, GLenum, int, const void *); static void glClientActiveTexture(void *, unsigned); static void glTexCoordPointer(void *, int, GLenum, int, const void *); - static void glVertexAttribPointer(void *, unsigned, int, GLenum, int, int, const void *); + static void glVertexAttribPointer(void *, unsigned, int, GLenum, unsigned char, int, const void *); static void glBindBuffer(void *, GLenum, unsigned); + static void glBindBufferBase(void *, GLenum, unsigned, unsigned); + static void glBindBufferRange(void *, GLenum, unsigned, unsigned, int, int); static void glBufferData(void *, GLenum, int, const void *, GLenum); static void glBufferSubData(void *, GLenum, int, int, const void *); static void glDeleteBuffers(void *, int, const unsigned *); + + static void glDrawElements(void *, GLenum, int, GLenum, const void *); + static void glDrawRangeElements(void *, GLenum, unsigned, unsigned, int, GLenum, const void *); }; #endif