#include <string.h>
+#include "os_string.hpp"
#include "image.hpp"
#include "retrace.hpp"
#include "glproc.hpp"
bool double_buffer = true;
bool insideGlBeginEnd = false;
trace::Parser parser;
+glws::Profile defaultProfile = glws::PROFILE_COMPAT;
glws::Visual *visual = NULL;
glws::Drawable *drawable = NULL;
glws::Context *context = NULL;
image::Image *ref = NULL;
if (compare_prefix) {
- char filename[PATH_MAX];
- snprintf(filename, sizeof filename, "%s%010u.png", compare_prefix, call_no);
+ os::String filename = os::String::format("%s%010u.png", compare_prefix, call_no);
ref = image::readPNG(filename);
if (!ref) {
return;
snprintf(comment, sizeof comment, "%u", call_no);
src->writePNM(std::cout, comment);
} else {
- char filename[PATH_MAX];
- snprintf(filename, sizeof filename, "%s%010u.png", snapshot_prefix, call_no);
+ os::String filename = os::String::format("%s%010u.png", snapshot_prefix, call_no);
if (src->writePNG(filename) && retrace::verbosity >= 0) {
std::cout << "Wrote " << filename << "\n";
}
retracer.addCallbacks(glx_callbacks);
retracer.addCallbacks(wgl_callbacks);
retracer.addCallbacks(cgl_callbacks);
+ retracer.addCallbacks(egl_callbacks);
startTime = os::getTime();
trace::Call *call;
"\n"
" -b benchmark mode (no error checking or warning messages)\n"
" -c PREFIX compare against snapshots\n"
+ " -core use core profile\n"
" -db use a double buffer visual (default)\n"
" -sb use a single buffer visual\n"
" -s PREFIX take snapshots; `-` for PNM stdout output\n"
} else if (!strcmp(arg, "-D")) {
dump_state = atoi(argv[++i]);
retrace::verbosity = -2;
+ } else if (!strcmp(arg, "-core")) {
+ defaultProfile = glws::PROFILE_CORE;
} else if (!strcmp(arg, "-db")) {
double_buffer = true;
} else if (!strcmp(arg, "-sb")) {