summaryrefslogtreecommitdiff
path: root/glretrace.py
diff options
context:
space:
mode:
authorJosé Fonseca <jose.r.fonseca@gmail.com>2011-05-09 20:54:31 +0100
committerJosé Fonseca <jose.r.fonseca@gmail.com>2011-05-09 20:54:31 +0100
commit4d7f1fec7a1561d474592b2b05b43685a29e8426 (patch)
treedefcac8e14d71aa57f2da299158df98f557fbab7 /glretrace.py
parent78eab191f4917c1e02b76a507ec2ee6aba70fdde (diff)
Take a snapshots on glReadPixels.
Diffstat (limited to 'glretrace.py')
-rw-r--r--glretrace.py14
1 files changed, 9 insertions, 5 deletions
diff --git a/glretrace.py b/glretrace.py
index b0ef032..1674a79 100644
--- a/glretrace.py
+++ b/glretrace.py
@@ -125,6 +125,15 @@ class GlRetracer(Retracer):
Retracer.retrace_function_body(self, function)
+ if function.name in ('glFlush', 'glFinish'):
+ print ' if (!glretrace::double_buffer) {'
+ print ' glretrace::frame_complete(call.no);'
+ print ' }'
+
+ if function.name == 'glReadPixels':
+ print ' glFinish();'
+ print ' glretrace::frame_complete(call.no);'
+
def call_function(self, function):
if function.name == "glViewport":
print ' bool reshape_window = false;'
@@ -209,11 +218,6 @@ class GlRetracer(Retracer):
print r' delete [] infoLog;'
print r' }'
- if function.name == 'glFlush':
- print ' if (!glretrace::double_buffer) {'
- print ' glretrace::frame_complete(call.no);'
- print ' }'
-
def extract_arg(self, function, arg, arg_type, lvalue, rvalue):
if function.name in self.array_pointer_function_names and arg.name == 'pointer':
print ' %s = static_cast<%s>(%s.blob());' % (lvalue, arg_type, rvalue)