#include #include #include "../floatimg.h" extern int verbosity; /* must be declared around main() */ /* --------------------------------------------------------------------- */ int parse_WxH(char *str, int *pw, int *ph) { // char *ptr; int foo, w, h; #if DEBUG_LEVEL fprintf(stderr, ">>> %s ( '%s' %p %p )\n", __func__, str, pw, ph); #endif foo = sscanf(str, "%dx%d", &w, &h); if (2 != foo) { fprintf(stderr, "%s : arg '%s' is invalid\n", __func__, str); return foo; } *pw = w; *ph = h; return 2; } /* --------------------------------------------------------------------- */ int parse_double(char *str, double *dptr) { double value; int foo; foo = sscanf(str, "%lf", &value); if (1 == foo) { *dptr = value; return 1; } return -1; } /* --------------------------------------------------------------------- */ int format_from_extension(char *fname) { char *cptr; cptr = rindex(fname, '.'); if (NULL==cptr) { fprintf(stderr, "No dot in %s\n", fname); return -1; } #if DEBUG_LEVEL fprintf(stderr, "[%s] --> [%s]\n", fname, cptr); #endif if (!strcasecmp(cptr, ".pnm" )) return FILE_TYPE_PNM; if (!strcasecmp(cptr, ".fimg")) return FILE_TYPE_FIMG; if (!strcasecmp(cptr, ".tga" )) return FILE_TYPE_TGA; if (!strcasecmp(cptr, ".png" )) return FILE_TYPE_PNG; if (!strcasecmp(cptr, ".tiff")) return FILE_TYPE_TIFF; if (!strcasecmp(cptr, ".tif" )) return FILE_TYPE_TIFF; if (!strcasecmp(cptr, ".fits")) return FILE_TYPE_FITS; return -1; } /* --------------------------------------------------------------------- */