chiark / gitweb /
Correct bugs in new AA table cell structure parsing
[ypp-sc-tools.db-test.git] / pctb / convert.h
index 8c6efefd7b3c0311eaed52f4320257bbd8eb15a5..0ab09dbccb7ac56b2076cb870d9956f701af6f09 100644 (file)
 #include <sys/time.h>
 
 
+/*----- from rgbimage.c -----*/
+
+#define MAXIMGIDENT 100
+
+typedef struct RgbImage {
+  int w, h;
+  unsigned char data[];
+  /* red   = data[ y*w*3 + x*3 + 0 ] = RI_PIXEL(ri,x,y)[0]
+   * green = data[ y*w*3 + x*3 + 1 ] = RI_PIXEL(ri,x,y)[1]
+   * blue  = data[ y*w*3 + x*3 + 2 ] = RI_PIXEL(ri,x,y)[2]
+   */
+} RgbImage;
+
+typedef unsigned long Rgb;
+
+void identify_rgbimage(const RgbImage *base, Rect portion,
+                      char result[MAXIMGIDENT], const char *what);
+RgbImage *alloc_rgb_image(int w, int h);
+void fwrite_ppmraw(FILE *f, const RgbImage *ri);
+
+#define RI_PIXEL(ri,x,y) ((ri)->data + ((y)*(ri)->w + (x)) * 3)
+
+static inline Rgb ri_rgb(const RgbImage *ri, int x, int y) {
+  const unsigned char *rip= RI_PIXEL(ri,x,y);
+  return (rip[0] << 16) |
+         (rip[1] <<  8) |
+         (rip[2]      );
+}
+
 /*----- from structure.c -----*/
 
 void find_structure(CanonImage *im, int *max_relevant_y_r);
+Rect find_sunshine_widget(void);
+
+void find_islandname(RgbImage *ri);
 void check_correct_commodities(void);
 void read_screenshots(void);
 void read_one_screenshot(void);
@@ -49,6 +81,7 @@ void analyse(FILE *tsv_output);
 /*----- from convert.c -----*/
 
 extern FILE *screenshot_file;
+extern void fetch_with_rsync(const char *stem);
 
 void vwarning(const char *fmt, va_list) FMT(1,0);
 void warning(const char *fmt, ...)      FMT(1,2);
@@ -62,6 +95,27 @@ void progress_log(const char *fmt, ...)      FMT(1,2);
 void vprogress_spinner(const char *fmt, va_list) FMT(1,0);
 void progress_spinner(const char *fmt, ...)      FMT(1,2);
 
+enum flags {
+  ff_editcharset=     00001,
+  ff_singlepage=      00002,
+  ff_testservers=     00004,
+  
+  ff_dict_fetch=      00010,
+  ff_dict_submit=     00020,
+  ff_dict_pirate=     00040,
+  ffs_dict=           00070,
+
+  ff_needisland=      00100,
+  ff_printisland=     00200,
+  ff_upload=          00400,
+  ffs_printisland=    00300,
+  ffs_upload=         00500,
+};
+extern enum flags o_flags;
+
+extern const char *o_ocean, *o_pirate;
+extern int o_quiet;
+
 /*----- from pages.c -----*/
 
 void screenshot_startup(void);
@@ -74,7 +128,8 @@ void take_one_screenshot(void);
 extern CanonImage *page_images[MAX_PAGES];
 extern int npages;
 
-extern char *ocean, *pirate;
+extern const char *ocean, *pirate;
+extern char *archipelago, *island;
 
 
 #endif /*CONVERT_H*/