X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=glretrace_main.cpp;h=11f34ce8200ca16215780c0fbfce976f918ca414;hb=62abddc41c4f09d3688d7f56e097820cba8d16d3;hp=f9d77413eef276c8513aa294c19af90238745934;hpb=225193db0f50a8f3a1d59d7cff351c9be31e8044;p=apitrace diff --git a/glretrace_main.cpp b/glretrace_main.cpp index f9d7741..11f34ce 100644 --- a/glretrace_main.cpp +++ b/glretrace_main.cpp @@ -26,6 +26,7 @@ #include +#include "os_binary.hpp" #include "os_string.hpp" #include "os_time.hpp" #include "image.hpp" @@ -256,7 +257,7 @@ static void display(void) { long long endTime = os::getTime(); float timeInterval = (endTime - startTime) * (1.0 / os::timeFrequency); - if (retrace::verbosity >= -1) { + if ((retrace::verbosity >= -1) || (retrace::profiling)) { std::cout << "Rendered " << frame << " frames" " in " << timeInterval << " secs," @@ -277,6 +278,7 @@ static void usage(void) { "Replay TRACE.\n" "\n" " -b benchmark mode (no error checking or warning messages)\n" + " -p profiling mode (run whole trace, dump profiling info)\n" " -c PREFIX compare against snapshots\n" " -C CALLSET calls to compare (default is every frame)\n" " -core use core profile\n" @@ -309,6 +311,10 @@ int main(int argc, char **argv) benchmark = true; retrace::verbosity = -1; glws::debug = false; + } else if (!strcmp(arg, "-p")) { + retrace::profiling = true; + retrace::verbosity = -1; + glws::debug = false; } else if (!strcmp(arg, "-c")) { compare_prefix = argv[++i]; if (compare_frequency.empty()) { @@ -337,6 +343,7 @@ int main(int argc, char **argv) snapshot_frequency = trace::CallSet(trace::FREQUENCY_FRAME); } if (snapshot_prefix[0] == '-' && snapshot_prefix[1] == 0) { + os::setBinaryMode(stdout); retrace::verbosity = -2; } } else if (!strcmp(arg, "-S")) {