X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=glretrace.hpp;h=9cf615e1ba029e6b025ba18bd68cb80f8aab60d2;hb=18d094ea673e246a01dc318fd4d2dfd50ca2d630;hp=9d746419d93c36ec542e47ca4c54c1387d7382d1;hpb=06aa2843155f2972963f08c8e88f611f6d2b7c6b;p=apitrace diff --git a/glretrace.hpp b/glretrace.hpp index 9d74641..9cf615e 100644 --- a/glretrace.hpp +++ b/glretrace.hpp @@ -26,10 +26,9 @@ #ifndef _GLRETRACE_HPP_ #define _GLRETRACE_HPP_ -#include - #include "trace_parser.hpp" #include "glws.hpp" +#include "retrace.hpp" namespace glretrace { @@ -43,29 +42,36 @@ extern glws::Visual *visual; extern glws::Drawable *drawable; extern glws::Context *context; -extern int window_width; -extern int window_height; - extern unsigned frame; extern long long startTime; extern bool wait; +enum frequency { + FREQUENCY_NEVER = 0, + FREQUENCY_FRAME, + FREQUENCY_FRAMEBUFFER, + FREQUENCY_DRAW, +}; + extern bool benchmark; extern const char *compare_prefix; extern const char *snapshot_prefix; +extern enum frequency snapshot_frequency; extern unsigned dump_state; void -checkGlError(int callIdx = -1); +checkGlError(Trace::Call &call); -void retrace_call_glx(Trace::Call &call); -void retrace_call_wgl(Trace::Call &call); +extern const retrace::Entry gl_callbacks[]; +extern const retrace::Entry cgl_callbacks[]; +extern const retrace::Entry glx_callbacks[]; +extern const retrace::Entry wgl_callbacks[]; +void snapshot(unsigned call_no); void frame_complete(unsigned call_no); -void state_dump(std::ostream &os); - +void updateDrawable(int width, int height); } /* namespace glretrace */