X-Git-Url: http://git.tdb.fi/?p=gldbg.git;a=blobdiff_plain;f=flavors%2Fgl%2Fsource%2Fglstate.h;fp=flavors%2Fgl%2Fsource%2Fglstate.h;h=e6a3d9812f556f6b351799da28625e8978620402;hp=7f15b0157489986f87f0b1213c642d5096b713d9;hb=73d29911044cfffdc7edad50aeb2a8d1175ecd11;hpb=e9e9356d4e270acce061b2fd4e5913545b7907ee diff --git a/flavors/gl/source/glstate.h b/flavors/gl/source/glstate.h index 7f15b01..e6a3d98 100644 --- a/flavors/gl/source/glstate.h +++ b/flavors/gl/source/glstate.h @@ -50,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; @@ -70,13 +72,16 @@ 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); @@ -110,6 +115,8 @@ private: 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 *);