+\r
+ // Not thread-safe, must be called inside of context\r
+ void enable(GLenum cap);\r
+ void disable(GLenum cap);\r
+ void viewport(size_t x, size_t y, size_t width, size_t height);\r
+ void scissor(size_t x, size_t y, size_t width, size_t height);\r
+ void stipple_pattern(const GLubyte* pattern);\r
+\r
+ void attach(device_buffer& texture);\r
+ void clear(device_buffer& texture);\r
+\r
+ void begin_read(host_buffer& dest, device_buffer& source);\r
+ void begin_read(device_buffer& dest, host_buffer& source);\r
+\r
+ void blend_func(int c1, int c2, int a1, int a2);\r
+ void blend_func(int c1, int c2);\r