5 void debug_flush(void) {
6 eassert(!fflush(debug));
7 eassert(!ferror(debug));
11 const char *get_vardir(void) { return "."; }
14 static enum { mode_all=03, mode_screenshot=01, mode_analyse=02 }
16 static char *o_screenshots_fn;
17 static int o_single_page;
19 FILE *screenshots_file;
21 int main(int argc, char **argv) {
25 while ((arg=*++argv)) {
26 if (!strcmp(arg,"--screenshot-only"))
27 o_mode= mode_screenshot;
28 else if (!strcmp(arg,"--analyse-only"))
30 else if (!strcmp(arg,"--single-page"))
32 else if (!strcmp(arg,"--screenshots-file"))
33 eassert( o_screenshots_fn= *++argv );
35 else if (!strcmp(arg,"-D" #f)) \
36 debug_flags |= dbg_##f;
39 else if (!strcmp(arg,"--window-id")) {
41 eassert((arg=*++argv));
42 unsigned long windowid= strtoul(arg,&ep,0);
44 set_yppclient_window(windowid);
46 eassert(!"bad option");
49 if (!o_screenshots_fn) {
50 r= asprintf(&o_screenshots_fn,"%s/#pages#.ppm",get_vardir());
51 eassert(r>=0); eassert(o_screenshots_fn);
54 if (o_mode & mode_screenshot) {
56 find_yppclient_window();
57 screenshots_file= fopen(o_screenshots_fn, "w"); eassert(screenshots_file);
59 take_one_screenshot();
63 screenshots_file= fopen(o_screenshots_fn, "r"); eassert(screenshots_file);
66 if (o_mode & mode_analyse) {