virtual ~Visual() {}
};
-
class Drawable
{
public:
virtual void swapBuffers(void) = 0;
};
-
class Context
{
public:
bool
makeCurrent(Drawable *drawable, Context *context);
+void
+createWindow(Drawable *drawable, const Visual *visual);
+
+void
+destroyWindow(Drawable *drawable);
+
+Drawable *
+createPixmap(unsigned width, unsigned height, unsigned depth);
+
+Drawable *
+createGLPixmap(GLXFBConfig fbconfig, Drawable *pixmap,
+ unsigned width, unsigned height, int *attrib_list);
+
+void
+bindTexImage(glws::Drawable *pixmap, int buffer);
+
+void
+releaseTexImage(glws::Drawable *pixmap, int buffer);
+
+void
+copySubBuffer(glws::Drawable *drawable, int x, int y, int width, int height);
+
+void
+putImageData(glws::Drawable *drawable, char *data,
+ int width, int height, int depth,
+ int bits_per_pixel, int bytes_per_line, int byte_order);
+
+GLXFBConfig
+chooseConfig(int *attrib_list);
+
bool
processEvents(void);