diff options
Diffstat (limited to 'glretrace_main.cpp')
-rw-r--r-- | glretrace_main.cpp | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/glretrace_main.cpp b/glretrace_main.cpp index cd35889..80660d7 100644 --- a/glretrace_main.cpp +++ b/glretrace_main.cpp @@ -194,28 +194,23 @@ void frame_complete(unsigned call_no) { static void display(void) { + retrace::Retracer retracer; + + retracer.addCallbacks(gl_callbacks); + retracer.addCallbacks(glx_callbacks); + retracer.addCallbacks(wgl_callbacks); + retracer.addCallbacks(cgl_callbacks); + startTime = OS::GetTime(); Trace::Call *call; while ((call = parser.parse_call())) { - const char *name = call->name(); - if (retrace::verbosity >= 1) { std::cout << *call; std::cout.flush(); } - if (name[0] == 'C' && name[1] == 'G' && name[2] == 'L') { - glretrace::retrace_call_cgl(*call); - } - else if (name[0] == 'w' && name[1] == 'g' && name[2] == 'l') { - glretrace::retrace_call_wgl(*call); - } - else if (name[0] == 'g' && name[1] == 'l' && name[2] == 'X') { - glretrace::retrace_call_glx(*call); - } else { - retrace::retrace_call(*call); - } + retracer.retrace(*call); if (!insideGlBeginEnd && drawable && context && |