X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=glretrace_glx.cpp;h=d04bca6dff8ccf0fea11745fb919d96b79d719cc;hb=e935ee1015d5162e02d90be7b52267194231e038;hp=72535aeeef082b2eaab00c7c7a6060b0854b6713;hpb=a00b90e690995d5df78cce6f2f1dd5239d021a6b;p=apitrace diff --git a/glretrace_glx.cpp b/glretrace_glx.cpp index 72535ae..d04bca6 100644 --- a/glretrace_glx.cpp +++ b/glretrace_glx.cpp @@ -47,7 +47,7 @@ getDrawable(unsigned long drawable_id) { DrawableMap::const_iterator it; it = drawable_map.find(drawable_id); if (it == drawable_map.end()) { - return (drawable_map[drawable_id] = ws->createDrawable(visual)); + return (drawable_map[drawable_id] = glws::createDrawable(visual)); } return it->second; @@ -62,29 +62,29 @@ getContext(unsigned long long context_ptr) { ContextMap::const_iterator it; it = context_map.find(context_ptr); if (it == context_map.end()) { - return (context_map[context_ptr] = ws->createContext(visual, NULL)); + return (context_map[context_ptr] = glws::createContext(visual, NULL)); } return it->second; } -static void retrace_glXCreateContext(Trace::Call &call) { +static void retrace_glXCreateContext(trace::Call &call) { unsigned long long orig_context = call.ret->toUIntPtr(); glws::Context *share_context = getContext(call.arg(2).toUIntPtr()); - glws::Context *context = ws->createContext(glretrace::visual, share_context); + glws::Context *context = glws::createContext(glretrace::visual, share_context); context_map[orig_context] = context; } -static void retrace_glXCreateContextAttribsARB(Trace::Call &call) { +static void retrace_glXCreateContextAttribsARB(trace::Call &call) { unsigned long long orig_context = call.ret->toUIntPtr(); glws::Context *share_context = getContext(call.arg(2).toUIntPtr()); - glws::Context *context = ws->createContext(glretrace::visual, share_context); + glws::Context *context = glws::createContext(glretrace::visual, share_context); context_map[orig_context] = context; } -static void retrace_glXMakeCurrent(Trace::Call &call) { +static void retrace_glXMakeCurrent(trace::Call &call) { glws::Drawable *new_drawable = getDrawable(call.arg(1).toUInt()); glws::Context *new_context = getContext(call.arg(2).toUIntPtr()); @@ -95,11 +95,11 @@ static void retrace_glXMakeCurrent(Trace::Call &call) { if (drawable && context) { glFlush(); if (!double_buffer) { - frame_complete(call.no); + frame_complete(call); } } - bool result = ws->makeCurrent(new_drawable, new_context); + bool result = glws::makeCurrent(new_drawable, new_context); if (new_drawable && new_context && result) { drawable = new_drawable; @@ -111,7 +111,7 @@ static void retrace_glXMakeCurrent(Trace::Call &call) { } -static void retrace_glXDestroyContext(Trace::Call &call) { +static void retrace_glXDestroyContext(trace::Call &call) { glws::Context *context = getContext(call.arg(1).toUIntPtr()); if (!context) { @@ -121,8 +121,8 @@ static void retrace_glXDestroyContext(Trace::Call &call) { delete context; } -static void retrace_glXSwapBuffers(Trace::Call &call) { - frame_complete(call.no); +static void retrace_glXSwapBuffers(trace::Call &call) { + frame_complete(call); if (double_buffer) { drawable->swapBuffers(); } else { @@ -130,15 +130,15 @@ static void retrace_glXSwapBuffers(Trace::Call &call) { } } -static void retrace_glXCreateNewContext(Trace::Call &call) { +static void retrace_glXCreateNewContext(trace::Call &call) { unsigned long long orig_context = call.ret->toUIntPtr(); glws::Context *share_context = getContext(call.arg(3).toUIntPtr()); - glws::Context *context = ws->createContext(glretrace::visual, share_context); + glws::Context *context = glws::createContext(glretrace::visual, share_context); context_map[orig_context] = context; } -static void retrace_glXMakeContextCurrent(Trace::Call &call) { +static void retrace_glXMakeContextCurrent(trace::Call &call) { glws::Drawable *new_drawable = getDrawable(call.arg(1).toUInt()); glws::Context *new_context = getContext(call.arg(3).toUIntPtr()); @@ -149,11 +149,11 @@ static void retrace_glXMakeContextCurrent(Trace::Call &call) { if (drawable && context) { glFlush(); if (!double_buffer) { - frame_complete(call.no); + frame_complete(call); } } - bool result = ws->makeCurrent(new_drawable, new_context); + bool result = glws::makeCurrent(new_drawable, new_context); if (new_drawable && new_context && result) { drawable = new_drawable; @@ -164,7 +164,7 @@ static void retrace_glXMakeContextCurrent(Trace::Call &call) { } } -static const retrace::Entry callbacks[] = { +const retrace::Entry glretrace::glx_callbacks[] = { //{"glXBindChannelToWindowSGIX", &retrace_glXBindChannelToWindowSGIX}, //{"glXBindSwapBarrierNV", &retrace_glXBindSwapBarrierNV}, //{"glXBindSwapBarrierSGIX", &retrace_glXBindSwapBarrierSGIX}, @@ -255,9 +255,6 @@ static const retrace::Entry callbacks[] = { {"glXWaitGL", &retrace::ignore}, {"glXWaitVideoSyncSGI", &retrace::ignore}, {"glXWaitX", &retrace::ignore}, + {NULL, NULL}, }; -void glretrace::retrace_call_glx(Trace::Call &call) { - retrace::dispatch(call, callbacks, sizeof(callbacks)/sizeof(callbacks[0])); -} -