X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=glretrace.hpp;h=81b5d1eca36e1a476ecacfb394576365450d72a1;hb=c0e24af608bc7e2c259a398544e590ecb06b6655;hp=5fce5dc5663df00a9e0e2fbc23c1c89d6e968ca1;hpb=e4999b9a9f28c62cc3cc809131fc7a1099b10e68;p=apitrace diff --git a/glretrace.hpp b/glretrace.hpp index 5fce5dc..81b5d1e 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 { @@ -37,32 +36,42 @@ namespace glretrace { extern bool double_buffer; extern bool insideGlBeginEnd; -extern Trace::Parser parser; -extern glws::WindowSystem *ws; +extern trace::Parser parser; 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 frame_complete(unsigned call_no); +extern const retrace::Entry gl_callbacks[]; +extern const retrace::Entry cgl_callbacks[]; +extern const retrace::Entry glx_callbacks[]; +extern const retrace::Entry wgl_callbacks[]; +extern const retrace::Entry egl_callbacks[]; -void state_dump(std::ostream &os); +void snapshot(unsigned call_no); +void frame_complete(trace::Call &call); +void updateDrawable(int width, int height); } /* namespace glretrace */