]> git.cworth.org Git - apitrace/blobdiff - retrace/glretrace.hpp
replay: Support applications mixing glCreateProgramObjectARB and glUseProgram
[apitrace] / retrace / glretrace.hpp
index f058d8deaaf94731b889b8c9e5781824ba5ca464..7441b56938e22481e0110b181b74b7de81a55c98 100644 (file)
@@ -35,17 +35,19 @@ namespace glretrace {
 struct Context {
     Context(glws::Context* context)
         : wsContext(context),
+          drawable(0),
           activeProgram(0),
           used(false)
     {
     }
 
-    ~Context()
-    {
-        delete wsContext;
-    }
+    ~Context();
 
     glws::Context* wsContext;
+
+    // Bound drawable
+    glws::Drawable *drawable;
+
     GLuint activeProgram;
     bool used;
     
@@ -58,10 +60,10 @@ struct Context {
 
 extern bool insideList;
 extern bool insideGlBeginEnd;
+extern bool supportsARBShaderObjects;
 
-
-extern glws::Drawable *currentDrawable;
-extern Context *currentContext;
+Context *
+getCurrentContext(void);
 
 
 int
@@ -74,6 +76,9 @@ createDrawable(glws::Profile profile);
 glws::Drawable *
 createDrawable(void);
 
+glws::Drawable *
+createPbuffer(int width, int height);
+
 Context *
 createContext(Context *shareContext, glws::Profile profile);