IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 13


Ignore:
Timestamp:
Jan 6, 2003, 7:42:04 AM (23 years ago)
Author:
eugene
Message:

added -proc, -cadctable

Location:
trunk/Ohana/src/imregister
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/Ohana/src/imregister/imreg/args.imsearch.c

    r3 r13  
    9999  }
    100100
     101  /* processed state */
     102  criteria.ProcSelect = FALSE;
     103  if (N = get_argument (argc, argv, "-proc")) {
     104    criteria.ProcSelect = TRUE;
     105    remove_argument (N, &argc, argv);
     106
     107    criteria.Proc = -1;
     108    if (strcasecmp (argv[N], "t")) criteria.Proc = TRUE;
     109    if (strcasecmp (argv[N], "f")) criteria.Proc = FALSE;
     110    remove_argument (N, &argc, argv);
     111    if (criteria.Proc == -1) {
     112      fprintf (stderr, "ERROR: -proc (t/f)\n");
     113      exit (1);
     114    }
     115  }
     116
    101117  /*** command-line options which modify the output list */
    102118  if (N = get_argument (argc, argv, "-treg")) {
     
    116132    remove_argument (N, &argc, argv);
    117133    output.table = strcreate (argv[N]);
     134    remove_argument (N, &argc, argv);
     135  }
     136  output.cadctable = (char *) NULL;
     137  if (N = get_argument (argc, argv, "-cadctable")) {
     138    remove_argument (N, &argc, argv);
     139    output.cadctable = strcreate (argv[N]);
    118140    remove_argument (N, &argc, argv);
    119141  }
     
    162184
    163185  if (argc != 1) {
    164     fprintf (stderr, "USAGE: imsearch [config ops] [-time start range] [-type type] [-mode mode] [-ccd N] [-filter name]\n");
     186    fprintf (stderr, "USAGE: imsearch [config ops] \n");
     187    fprintf (stderr, "  [-type type] [-mode mode] [-trange start range] [-ccd N]\n");
     188    fprintf (stderr, "  [-etime exptime] [-filter name] [-name string] [-proc t/f]\n");
     189    fprintf (stderr, "  [-treg] [-seq] [-pt] [-table] [-cadctable] [-bintable]\n");
     190    fprintf (stderr, "  [-del] [-delete] [-newpath (oldpath) (newpath)] [-mef2split] [-split2mef]\n");
    165191    exit (1);
    166192  }
  • trunk/Ohana/src/imregister/imreg/match.c

    r3 r13  
    3131    if (criteria.ExptimeSelect && (fabs (image[i].exptime - criteria.Exptime) > 5.0)) continue;
    3232    if (criteria.NameSelect    && (strncasecmp (image[i].filename, criteria.Name, Nname))) continue;
     33    if (criteria.ProcSelect    && (criteria.Proc ^ (image[i].bias == 0.0))) continue;
    3334
    3435    match[N] = i;
  • trunk/Ohana/src/imregister/imreg/output.c

    r3 r13  
    3737  if (output.bintable != (char *) NULL) {
    3838    DumpFitsBintable (output.bintable, image, match, Nmatch);
     39  }
     40
     41  if (output.cadctable != (char *) NULL) {
     42    DumpCADCTable (output.cadctable, image, match, Nmatch);
    3943  }
    4044
     
    169173}
    170174
     175void DumpCADCTable (char *filename, RegImage *image, int *match, int Nmatch) {
     176 
     177  int i;
     178  char *obsstr, *regstr, *line, dummy[64];
     179  char *modestr, *typestr, *ccdstr, *datestr;
     180  unsigned long tsecond;
     181  Header header, theader;
     182  Matrix matrix;
     183  FTable table;
     184  RegImage *subset;
     185
     186  bzero (dummy, 64);
     187  memset (dummy, ' ', 63);
     188
     189  /* create primary header */
     190  fits_init_header (&header);   
     191  header.extend = TRUE;
     192  fits_create_header (&header);
     193  fits_create_matrix (&header, &matrix);
     194  fits_print (&header, "NEXTEND", "%d", 1, 1);
     195 
     196  /* create table header */
     197  fits_create_table_header (&theader, "TABLE", "CADC_RAW_IMAGES");
     198     
     199  /* add current date/time to header */
     200  str_to_time ("now", &tsecond);
     201  datestr = sec_to_date (tsecond);
     202  fits_modify (&header,  "DATE", "%s", 1, datestr);
     203  fits_modify (&theader, "DATE", "%s", 1, datestr);
     204
     205  /* define table layout */
     206  fits_define_table_column (&theader, "A64",   "FILE",       "filename in db",        "",                              1.0, 0.0);
     207  fits_define_table_column (&theader, "F7.1",  "SKY",        "background level",     "counts / pixel",                 1.0, 0.0);
     208  fits_define_table_column (&theader, "F6.1",  "BIAS",       "bias level",           "counts / pixel",                 1.0, 0.0);
     209  fits_define_table_column (&theader, "F5.2",  "FWHM",       "image quality",        "pixels",                         1.0, 0.0);
     210
     211  /* create table, add data values */
     212  fits_create_table (&theader, &table);
     213 
     214  /* add data to table */
     215  for (i = 0; i < Nmatch; i++) {
     216    subset = &image[match[i]];
     217    line = fits_table_print (&table, subset[0].pathname, subset[0].sky, subset[0].bias, subset[0].fwhm);
     218
     219    fits_add_rows (&table, line, 1, strlen(line));
     220    free (line);
     221  }
     222
     223  fits_write_header  (filename, &header);
     224  fits_write_matrix  (filename, &matrix);
     225  fits_write_Theader (filename, &theader);
     226  fits_write_table   (filename, &table);
     227  exit (0);
     228}
     229
    171230/* Select, TimeMode are global */
    172231int PrintSubset (RegImage *image, int *match, int Nmatch) {
  • trunk/Ohana/src/imregister/include/imreg.h

    r5 r13  
    99  int TimeSelect;    unsigned long Time;
    1010  int NameSelect;    char *Name;
     11  int ProcSelect;    int Proc;
    1112  int Ntimes;        unsigned long *tstart, *tstop;
    1213  int MatchNumber;
     
    2425  char *table;
    2526  char *bintable;
     27  char *cadctable;
    2628} output;
    2729
Note: See TracChangeset for help on using the changeset viewer.