IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 34686


Ignore:
Timestamp:
Nov 22, 2012, 2:28:39 PM (13 years ago)
Author:
eugene
Message:

delstar and delstar_client build correctly

Location:
branches/eam_branches/ipp-20120905/Ohana/src/delstar
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20120905/Ohana/src/delstar/Makefile

    r16040 r34686  
    1 default: delstar
     1default: delstar delstar_client
    22help:
    33        @echo "make options: addstar (default)"
     
    1818
    1919delstar: $(BIN)/delstar.$(ARCH)
    20 install: $(DESTBIN)/delstar
     20delstar_client: $(BIN)/delstar_client.$(ARCH)
     21
     22install: $(DESTBIN)/delstar $(DESTBIN)/delstar_client
    2123
    2224DELSTAR = \
     
    2729$(SRC)/delete_imagename.$(ARCH).o \
    2830$(SRC)/delete_imagefile.$(ARCH).o \
     31$(SRC)/delete_photcodes.$(ARCH).o \
    2932$(SRC)/delete_times.$(ARCH).o     \
    3033$(SRC)/gimages.$(ARCH).o          \
     
    3336$(SRC)/parse_time.$(ARCH).o       \
    3437$(SRC)/check_permissions.$(ARCH).o \
     38$(SRC)/Shutdown.$(ARCH).o         
     39
     40DELSTAR_CLIENT = \
     41$(SRC)/delstar_client.$(ARCH).o   \
     42$(SRC)/SetSignals.$(ARCH).o       \
     43$(SRC)/ConfigInit.$(ARCH).o       \
     44$(SRC)/args.$(ARCH).o             \
     45$(SRC)/delete_photcodes.$(ARCH).o \
    3546$(SRC)/Shutdown.$(ARCH).o         
    3647
     
    4253$(DELSTAR): $(INC)/delstar.h
    4354$(BIN)/delstar.$(ARCH) : $(DELSTAR)
     55
     56$(DELSTAR_CLIENT): $(INC)/delstar.h
     57$(BIN)/delstar_client.$(ARCH) : $(DELSTAR_CLIENT)
  • branches/eam_branches/ipp-20120905/Ohana/src/delstar/include/delstar.h

    r34685 r34686  
    1919char   CATMODE[16];    /* raw, mef, split, mysql */
    2020char   CATFORMAT[16];  /* internal, elixir, loneos, panstarrs */
     21
     22char  *IMAGENAME;
     23
    2124double NSIGMA;
    2225double ALPHA;
     
    2730int    SKY_DEPTH;  /** XXX EAM : depth of catalog tables, fix usage */
    2831
     32int    PARALLEL;
     33int    PARALLEL_MANUAL;
     34int    PARALLEL_SERIAL;
     35
     36int          HOST_ID;
     37char        *HOSTDIR;
     38
    2939time_t    START;
    3040time_t    END;
    3141PhotCode *PHOTCODE;
    3242
     43char *PHOTCODE_LIST;
     44
    3345int    MODE;
    34 enum {MODE_NONE, MODE_IMAGENAME, MODE_IMAGEFILE, MODE_TIME, MODE_ORPHAN, MODE_MISSED};
     46enum {MODE_NONE, MODE_IMAGENAME, MODE_IMAGEFILE, MODE_TIME, MODE_ORPHAN, MODE_MISSED, MODE_PHOTCODES};
    3547
    3648char DateKeyword[64], DateMode[64], UTKeyword[64], MJDKeyword[64], JDKeyword[64];
     49
     50SkyRegion UserPatch;
    3751
    3852/*** delstar prototypes ***/
     
    4660int        Shutdown               PROTO((char *format, ...)) OHANA_FORMAT(printf, 1, 2);
    4761void       TrapSignal             PROTO((int sig));
    48 int        args                   PROTO((int *argc, char **argv));
     62int        args                   PROTO((int argc, char **argv));
    4963void       check_permissions      PROTO((char *basefile));
    50 void       delete_imagefile       PROTO((FITS_DB *db, char *filename));
    51 void       delete_imagename       PROTO((FITS_DB *db, char *name));
     64void       delete_imagefile       PROTO((FITS_DB *db));
     65void       delete_imagename       PROTO((FITS_DB *db));
    5266void       delete_times           PROTO((FITS_DB *db));
    5367int        edge_check             PROTO((double *x1, double *y1, double *x2, double *y2));
     
    7286
    7387void set_db (FITS_DB *in);
     88
     89int args_client (int argc, char **argv);
     90
     91void SortAveMeasMatch (off_t *MEAS, off_t *AVE, off_t N);
     92
     93int delete_photcodes (SkyList *skylist, int hostID, char *hostpath);
     94int delete_photcodes_parallel (SkyList *sky);
     95int delete_photcodes_catalog (Catalog *catalog, PhotCode **photcodes, int Nphotcodes);
  • branches/eam_branches/ipp-20120905/Ohana/src/delstar/src/args.c

    r34685 r34686  
    44
    55  fprintf (stderr, "USAGE:\n");
    6   fprintf (stderr, "  delstar (filename)\n");
    7   fprintf (stderr, "  delstar -name (filename)\n");
     6  fprintf (stderr, "  delstar -file (filename)\n");
     7  fprintf (stderr, "  delstar -name (imagename)\n");
    88  fprintf (stderr, "  delstar -time (start) (stop/range)\n");
    99  fprintf (stderr, "  delstar -orphan (region)\n");
     
    2222}
    2323
    24 int args (int *argc, char **argv) {
     24void delstar_client_usage () {
     25  fprintf (stderr, "USAGE: delstar_client [options]\n");
     26  exit (2);
     27}
     28
     29int args (int argc, char **argv) {
    2530 
    2631  int N;
     
    2833
    2934  /* check for help request */
    30   if (get_argument (*argc, argv, "-help") ||
    31       get_argument (*argc, argv, "-h")) {
     35  if (get_argument (argc, argv, "-help") ||
     36      get_argument (argc, argv, "-h")) {
    3237    help ();
    3338  }
    3439
    3540  VERBOSE = FALSE;
    36   if ((N = get_argument (*argc, argv, "-v"))) {
     41  if ((N = get_argument (argc, argv, "-v"))) {
    3742    VERBOSE = TRUE;
    38     remove_argument (N, argc, argv);
     43    remove_argument (N, &argc, argv);
    3944  }
    4045
    4146  // region of interest
    42 
    43   MODE = MODE_IMAGEFILE;
    44   if ((N = get_argument (*argc, argv, "-name"))) {
    45     if (MODE != MODE_IMAGEFILE) usage();
     47  UserPatch.Rmin = 0;
     48  UserPatch.Rmax = 360;
     49  UserPatch.Dmin = -90;
     50  UserPatch.Dmax = +90;
     51  if ((N = get_argument (argc, argv, "-region"))) {
     52    remove_argument (N, &argc, argv);
     53    UserPatch.Rmin = atof (argv[N]);
     54    remove_argument (N, &argc, argv);
     55    UserPatch.Rmax = atof (argv[N]);
     56    remove_argument (N, &argc, argv);
     57    UserPatch.Dmin = atof (argv[N]);
     58    remove_argument (N, &argc, argv);
     59    UserPatch.Dmax = atof (argv[N]);
     60    remove_argument (N, &argc, argv);
     61  }
     62
     63  // XXX for the moment, make this selection manual.  it needs to be automatic
     64  // based on the state of the SkyTable
     65  PARALLEL = FALSE;
     66  if ((N = get_argument (argc, argv, "-parallel"))) {
     67    PARALLEL = TRUE;
     68    remove_argument (N, &argc, argv);
     69  }
     70  // this is a test mode : rather than launching the remote jobs and waiting for completion,
     71  // delstar will simply list the remote command and wait for the user to signal completion
     72  PARALLEL_MANUAL = FALSE;
     73  if ((N = get_argument (argc, argv, "-parallel-manual"))) {
     74    PARALLEL = TRUE; // -parallel-manual implies -parallel
     75    PARALLEL_MANUAL = TRUE;
     76    remove_argument (N, &argc, argv);
     77  }
     78  // this is a test mode : rather than launching the delstar_client jobs remotely, they are
     79  // run in serial via 'system'
     80  PARALLEL_SERIAL = FALSE;
     81  if ((N = get_argument (argc, argv, "-parallel-serial"))) {
     82    if (PARALLEL_MANUAL) {
     83      fprintf (stderr, "ERROR: cannot mix -parallel-manual and -parallel-serial\n");
     84      exit (1);
     85    }
     86    PARALLEL = TRUE; // -parallel-serial implies -parallel
     87    PARALLEL_SERIAL = TRUE;
     88    remove_argument (N, &argc, argv);
     89  }
     90
     91  IMAGENAME = NULL;
     92  MODE = MODE_NONE;
     93  if ((N = get_argument (argc, argv, "-name"))) {
     94    if (MODE != MODE_NONE) usage();
    4695    MODE = MODE_IMAGENAME;
    47     remove_argument (N, argc, argv);
    48   }
    49   if ((N = get_argument (*argc, argv, "-orphan"))) {
    50     if (MODE != MODE_IMAGEFILE) usage();
     96    remove_argument (N, &argc, argv);
     97    IMAGENAME = strcreate (argv[N]);
     98    remove_argument (N, &argc, argv);
     99  }
     100  if ((N = get_argument (argc, argv, "-file"))) {
     101    if (MODE != MODE_NONE) usage();
     102    MODE = MODE_IMAGENAME;
     103    remove_argument (N, &argc, argv);
     104    IMAGENAME = strcreate (argv[N]);
     105    remove_argument (N, &argc, argv);
     106  }
     107  if ((N = get_argument (argc, argv, "-orphan"))) {
     108    if (MODE != MODE_NONE) usage();
    51109    MODE = MODE_ORPHAN;
    52     remove_argument (N, argc, argv);
    53   }
    54   if ((N = get_argument (*argc, argv, "-missed"))) {
    55     if (MODE != MODE_IMAGEFILE) usage();
     110    remove_argument (N, &argc, argv);
     111  }
     112  if ((N = get_argument (argc, argv, "-missed"))) {
     113    if (MODE != MODE_NONE) usage();
    56114    MODE = MODE_MISSED;
    57     remove_argument (N, argc, argv);
    58   }
    59   if ((N = get_argument (*argc, argv, "-photcodes"))) {
    60     if (MODE != MODE_IMAGEFILE) usage();
     115    remove_argument (N, &argc, argv);
     116  }
     117  if ((N = get_argument (argc, argv, "-photcodes"))) {
     118    if (MODE != MODE_NONE) usage();
    61119    MODE = MODE_PHOTCODES;
    62     remove_argument (N, argc, argv);
     120    remove_argument (N, &argc, argv);
    63121    PHOTCODE_LIST = strcreate(argv[N]);
    64     remove_argument (N, argc, argv);
    65   }
    66   if ((N = get_argument (*argc, argv, "-time"))) {
    67     if (MODE != MODE_IMAGEFILE) usage();
     122    remove_argument (N, &argc, argv);
     123  }
     124  if ((N = get_argument (argc, argv, "-time"))) {
     125    if (MODE != MODE_NONE) usage();
    68126    MODE = MODE_TIME;
    69     remove_argument (N, argc, argv);
     127    remove_argument (N, &argc, argv);
    70128
    71129    if (!ohana_str_to_time (argv[N], &START)) usage ();
    72     remove_argument (N, argc, argv);
     130    remove_argument (N, &argc, argv);
    73131
    74132    /* interpret second value */
     
    80138        END = START + trange;
    81139      }
    82       remove_argument (N, argc, argv);
     140      remove_argument (N, &argc, argv);
    83141      goto goodtime;
    84142    }
     
    90148        END   = tmp;
    91149      }
    92       remove_argument (N, argc, argv);
     150      remove_argument (N, &argc, argv);
    93151      goto goodtime;
    94152    }
     
    100158  /* restrict to a single photcode (not compatible with -image) */
    101159  PHOTCODE = NULL;
    102   if ((N = get_argument (*argc, argv, "-photcode"))) {
    103     remove_argument (N, argc, argv);
     160  if ((N = get_argument (argc, argv, "-photcode"))) {
     161    remove_argument (N, &argc, argv);
    104162    PHOTCODE = GetPhotcodebyName (argv[N]);
    105     remove_argument (N, argc, argv);
    106   }
    107 
    108   if ((MODE == MODE_TIME) && (*argc != 1)) usage ();
    109   if ((MODE != MODE_TIME) && (*argc != 2)) usage ();
     163    remove_argument (N, &argc, argv);
     164  }
     165
     166  if (argc != 1) usage ();
    110167  return (TRUE);
    111168}
    112169
    113 int args_client (int *argc, char **argv) {
     170int args_client (int argc, char **argv) {
    114171 
    115172  int N;
    116   double trange;
     173
     174  // by definition, the client is not parallel
     175  PARALLEL = FALSE;
     176  PARALLEL_MANUAL = FALSE;
     177  PARALLEL_SERIAL = FALSE;
     178
     179  HOST_ID = 0;
     180  if ((N = get_argument (argc, argv, "-hostID"))) {
     181    remove_argument (N, &argc, argv);
     182    HOST_ID = atoi (argv[N]);
     183    remove_argument (N, &argc, argv);
     184  }
     185  if (!HOST_ID) delstar_client_usage();
     186
     187  HOSTDIR = NULL;
     188  if ((N = get_argument (argc, argv, "-hostdir"))) {
     189    remove_argument (N, &argc, argv);
     190    HOSTDIR = strcreate (argv[N]);
     191    remove_argument (N, &argc, argv);
     192  }
     193  if (!HOSTDIR) delstar_client_usage();
    117194
    118195  /* check for help request */
    119   if (get_argument (*argc, argv, "-help") ||
    120       get_argument (*argc, argv, "-h")) {
     196  if (get_argument (argc, argv, "-help") ||
     197      get_argument (argc, argv, "-h")) {
    121198    help ();
    122199  }
    123200
    124201  VERBOSE = FALSE;
    125   if ((N = get_argument (*argc, argv, "-v"))) {
     202  if ((N = get_argument (argc, argv, "-v"))) {
    126203    VERBOSE = TRUE;
    127     remove_argument (N, argc, argv);
     204    remove_argument (N, &argc, argv);
     205  }
     206
     207  /* specify portion of the sky */
     208  UserPatch.Rmin = 0;
     209  UserPatch.Rmax = 360;
     210  UserPatch.Dmin = -90;
     211  UserPatch.Dmax = +90;
     212  if ((N = get_argument (argc, argv, "-region"))) {
     213    remove_argument (N, &argc, argv);
     214    UserPatch.Rmin = atof (argv[N]);
     215    remove_argument (N, &argc, argv);
     216    UserPatch.Rmax = atof (argv[N]);
     217    remove_argument (N, &argc, argv);
     218    UserPatch.Dmin = atof (argv[N]);
     219    remove_argument (N, &argc, argv);
     220    UserPatch.Dmax = atof (argv[N]);
     221    remove_argument (N, &argc, argv);
    128222  }
    129223
    130224  MODE = MODE_NONE;
    131   if ((N = get_argument (*argc, argv, "-photcodes"))) {
    132     if (MODE != MODE_NONE) usage();
     225  if ((N = get_argument (argc, argv, "-photcodes"))) {
     226    if (MODE != MODE_NONE) delstar_client_usage();
    133227    MODE = MODE_PHOTCODES;
    134     remove_argument (N, argc, argv);
     228    remove_argument (N, &argc, argv);
    135229    PHOTCODE_LIST = strcreate(argv[N]);
    136     remove_argument (N, argc, argv);
    137   }
    138 
    139   if (MODE == MODE_NONE) usage ();
     230    remove_argument (N, &argc, argv);
     231  }
     232
     233  if (MODE == MODE_NONE) delstar_client_usage ();
    140234  return (TRUE);
    141235}
  • branches/eam_branches/ipp-20120905/Ohana/src/delstar/src/delete_imagefile.c

    r27435 r34686  
    11# include "delstar.h"
    22
    3 void delete_imagefile (FITS_DB *db, char *filename) {
     3void delete_imagefile (FITS_DB *db) {
    44
    55  off_t i, Nimlist;
     
    1616
    1717  /* load information about file - time/photcode */
    18   image = gimages (filename);
     18  image = gimages (IMAGENAME);
    1919 
    2020  /* need to define method to get the mosaic (look up from table) */
     
    5454  // XXX EAM : load image data above, find mosaic?
    5555  imlist = find_images_data (db, image, &Nimlist);
    56   if (!Nimlist) Shutdown ("image %s not found in db", filename);
     56  if (!Nimlist) Shutdown ("image %s not found in db", IMAGENAME);
    5757
    5858  gfits_vtable_from_ftable (&db[0].ftable, &db[0].vtable, imlist, Nimlist);
  • branches/eam_branches/ipp-20120905/Ohana/src/delstar/src/delete_imagename.c

    r29001 r34686  
    11# include "delstar.h"
    22
    3 void delete_imagename (FITS_DB *db, char *name) {
     3void delete_imagename (FITS_DB *db) {
    44
    55  off_t i, j, k;
     
    2525
    2626  /* find image in db by name */
    27   imlist = find_images_name (db, name, &Nimlist);
    28   if (!Nimlist) Shutdown ("image %s not found in db", name);
     27  imlist = find_images_name (db, IMAGENAME, &Nimlist);
     28  if (!Nimlist) Shutdown ("image %s not found in db", IMAGENAME);
    2929 
    3030  for (k = 0; k < Nimlist; k++) {
  • branches/eam_branches/ipp-20120905/Ohana/src/delstar/src/delete_photcodes.c

    r34685 r34686  
    11# include "delstar.h"
    22
     3# if (0)
    34void delete_photcodes (FITS_DB *db, photcodes, Nphotcodes) {
    45
     
    2728  exit (0);
    2829}
    29 
    30 void delete_photcodes_catalogs (skylist, hostID, photcodesDrop, NphotcodesDrop) {
     30# endif
     31
     32int delete_photcodes (SkyList *skylist, int hostID, char *hostpath) {
     33
     34  int i;
     35  Catalog catalog;
    3136
    3237  // launch the remote jobs
    3338  if (PARALLEL && !hostID) {
    34     int status = delete_photcodes_parallel (skylist, photcodesDrop, NphotcodesDrop);
     39    int status = delete_photcodes_parallel (skylist);
    3540    return status;
    3641  }
     42
     43  // xxx where does this go?
     44  int Nphotcodes = 0;
     45  PhotCode **photcodes = ParsePhotcodeList (PHOTCODE_LIST, &Nphotcodes, FALSE);
    3746
    3847  // delete detections from region
     
    6372    }
    6473
    65     delete_photcodes_from_catalog (&catalog, photcodes, Nphotcodes);
     74    delete_photcodes_catalog (&catalog, photcodes, Nphotcodes);
    6675    dvo_catalog_save (&catalog, VERBOSE);
    6776    dvo_catalog_unlock (&catalog);
     
    150159}
    151160
    152 int delete_photcodes_catalog (Catalog *catalog, photcodes, Nphotcodes) {
    153 
    154   off_t i, j, N, currentAve;
    155 
    156   off_t *measureSeq = NULL;
    157   off_t *averageSeq = NULL;
    158   Measure *measureTMP = NULL;
     161int delete_photcodes_catalog (Catalog *catalog, PhotCode **photcodes, int Nphotcodes) {
     162
     163  off_t i, j, n, m, N, D, currentAve;
     164
     165  Measure *measureOut = NULL;
     166  Average *averageOut = NULL;
     167
     168  off_t *measureDrop, *measureSeqRaw, *measureSeqOut, *measureRefOut, *measureAveRaw, *averageNmeas, *averageDmeas, *averageSeqOut, *averageRefOut, *measureAveOut;
    159169
    160170  /* internal counters */
     
    165175  Average *average = catalog[0].average;
    166176 
    167   if (VERBOSE) fprintf (stderr, "starting with Nave, Nmeas: "OFF_T_FMT" "OFF_T_FMT"\n",  catalog[0].Naverage,  catalog[0]Nmeasure);
     177  if (VERBOSE) fprintf (stderr, "starting with Nave, Nmeas: "OFF_T_FMT" "OFF_T_FMT"\n",  catalog[0].Naverage,  catalog[0].Nmeasure);
    168178
    169179  // we have a table of average objects and an unsorted table of measurements.  each measurement
     
    179189  ALLOCATE (measureSeqRaw, off_t, Nmeasure);
    180190  ALLOCATE (measureSeqOut, off_t, Nmeasure);
     191  ALLOCATE (measureRefOut, off_t, Nmeasure);
    181192  ALLOCATE (measureAveRaw, off_t, Nmeasure);
    182193  ALLOCATE (averageNmeas,  off_t, Naverage);
     
    184195  ALLOCATE (averageSeqOut, off_t, Naverage);
    185196  ALLOCATE (averageRefOut, off_t, Naverage);
    186   ALLOCATE (measureAveOut, off_t, NmeasOut);
    187197
    188198  // mark the measures to be dropped
     
    190200    int drop = FALSE;
    191201    for (j = 0; !drop && (j < Nphotcodes); j++) {
    192       drop |= (photcodes[j].code == measure[i].photcode);
     202      drop |= (photcodes[j][0].code == measure[i].photcode);
    193203    }
    194204    measureDrop[i] = drop;
     
    214224  // n = measureSeqOut[i] : measureOut[i] = measure[n]  (i = 0 -- NmeasOut, n = 0 -- Nmeasure)
    215225  // n = measureRefOut[i] : measureOut[n] = measure[i]
     226  ALLOCATE (measureAveOut, off_t, NmeasOut);
    216227
    217228  // count the number of measures for each averef
    218   off_t N =  0;
    219   off_t D = -1;
     229  N =  0;
     230  D = -1;
    220231  currentAve = measureAveRaw[0];
    221232  for (i = 0; i < Nmeasure; i++) {
     
    240251
    241252  // generate the new average sequence, skipping entries with no measurements
    242   int NaveOut = 0;
     253  off_t NaveOut = 0;
    243254  for (i = 0; i < Naverage; i++) {
    244255    if (averageNmeas[i] == 0) continue;
    245     averageSeqOut[Nave] = i;
    246     averageRefOut[i] = Nave;
    247     Nave ++;
     256    averageSeqOut[NaveOut] = i;
     257    averageRefOut[i] = NaveOut;
     258    NaveOut ++;
    248259  }
    249260  // n = averageSeqOut[i] : averageOut[i] = average[n]  (i = 0 -- NaveOut, n = 0 -- Naverage)
     
    259270
    260271  // copy the (kept) measurements in the sorted order
    261   ALLOCATE (measureOut, Measure, Nmeas);
    262   for (i = 0; i < Nmeas; i++) {
     272  ALLOCATE (measureOut, Measure, NmeasOut);
     273  for (i = 0; i < NmeasOut; i++) {
    263274    j = measureSeqOut[i];
    264275    measureOut[i] = measure[j];
     
    267278
    268279  // copy the (kept) average entries
    269   ALLOCATE (averageOut, Average, Nave);
    270   for (i = 0; i < Nave; i++) {
     280  ALLOCATE (averageOut, Average, NaveOut);
     281  for (i = 0; i < NaveOut; i++) {
    271282    j = averageSeqOut[i];
    272283    averageOut[i] = average[j];
     
    284295  int NmeasureTotal = 0;
    285296  int measureOffsetOK = TRUE;
     297  int averefOK = TRUE;
    286298  for (i = 0; i < Naverage; i++) {
    287299    NmeasureTotal += catalog[0].average[i].Nmeasure;
     
    301313      averefOK &= (catalog[0].measure[m+j].averef == i);
    302314      if (VERBOSE && !(catalog[0].measure[m+j].averef == i)) {
    303         fprintf (stderr, "averef broken: %d vs %d (measure %d)\n", (int) i, catalog[0].measure[m+j].averef, m+j);
     315        fprintf (stderr, "averef broken: %d vs %d (measure %d)\n", (int) i, catalog[0].measure[m+j].averef, (int) (m+j));
    304316      }
    305317    }
  • branches/eam_branches/ipp-20120905/Ohana/src/delstar/src/delstar.c

    r34682 r34686  
    88  SetSignals ();
    99  ConfigInit (&argc, argv);
    10   args (&argc, argv);
     10  args (argc, argv);
    1111
    1212  set_db (&db);
     
    2020  switch (MODE) {
    2121    case MODE_IMAGEFILE:
    22       delete_imagefile (&db, argv[1]);
     22      delete_imagefile (&db);
    2323      break;
    2424    case MODE_IMAGENAME:
    25       delete_imagename (&db, argv[1]);
     25      delete_imagename (&db);
    2626      break;
    2727    case MODE_TIME:
    2828      delete_times (&db);
    2929      break;
    30     case MODE_PHOTCODES:
    31       delete_photcoes (&db);
     30    case MODE_PHOTCODES: {
     31      // delete_image_photcodes (&db);
     32
     33      // load the current sky table (layout of all SkyRegions)
     34      SkyTable *sky = SkyTableLoadOptimal (CATDIR, NULL, NULL, TRUE, -1, VERBOSE);
     35      if (!sky) {
     36          fprintf (stderr, "ERROR running loading sky table from %s\n", CATDIR);
     37          exit (2);
     38      }
     39      SkyTableSetFilenames (sky, CATDIR, "cpt");
     40
     41      SkyList *skylist = SkyListByPatch (sky, -1, &UserPatch);
     42      if (!skylist) {
     43          fprintf (stderr, "ERROR setting up skylist for %s\n", CATDIR);
     44          exit (2);
     45      }
     46
     47      delete_photcodes (skylist, 0, NULL);
    3248      break;
     49    }
    3350    case MODE_ORPHAN:
    3451      fprintf (stderr, "delete orphans not available\n");
  • branches/eam_branches/ipp-20120905/Ohana/src/delstar/src/delstar_client.c

    r34685 r34686  
    11# include "delstar.h"
     2
     3// delstar_client is run on a remote host and is responsible for deleting measures from the
     4// catalogs owned by that host.
    25
    36int main (int argc, char **argv) {
    47
    5   FITS_DB db;
    6 
    7   int status;
    88  SetSignals ();
    99  ConfigInit (&argc, argv);
    10   args (&argc, argv);
     10  args_client (argc, argv);
    1111
    12   set_db (&db);
    13   status = dvo_image_lock (&db, ImageCat, 60.0, LCK_XCLD); /* XCLD */
    14   if (!status) Shutdown ("ERROR: failure to lock image catalog %s", db.filename);
    15   if (db.dbstate == LCK_EMPTY) Shutdown ("ERROR: No images in catalog %s (1)", db.filename);
     12  // load the current sky table (layout of all SkyRegions)
     13  SkyTable *sky = SkyTableLoadOptimal (CATDIR, NULL, NULL, TRUE, -1, VERBOSE);
     14  if (!sky) {
     15      fprintf (stderr, "ERROR running loading sky table from %s\n", CATDIR);
     16      exit (2);
     17  }
     18  SkyTableSetFilenames (sky, CATDIR, "cpt");
    1619
    17   status = dvo_image_load (&db, VERBOSE, FALSE);
    18   if (!status) Shutdown ("can't read image catalog %s", db.filename);
     20  SkyList *skylist = SkyListByPatch (sky, -1, &UserPatch);
     21  if (!skylist) {
     22      fprintf (stderr, "ERROR setting up skylist for %s\n", CATDIR);
     23      exit (2);
     24  }
    1925
    2026  switch (MODE) {
    2127    case MODE_IMAGEFILE:
    22       delete_imagefile (&db, argv[1]);
    2328      break;
    2429    case MODE_IMAGENAME:
    25       delete_imagename (&db, argv[1]);
    2630      break;
    2731    case MODE_TIME:
    28       delete_times (&db);
    2932      break;
    3033    case MODE_PHOTCODES:
    31       // delete images with these photcodes
    32       delete_photcodes_images (db, photcodesDrop, NphotcodesDrop);
    33 
    34       delete_photcoes (&db);
     34      delete_photcodes (skylist, HOST_ID, HOSTDIR);
    3535      break;
    3636    case MODE_ORPHAN:
    37       fprintf (stderr, "delete orphans not available\n");
    38       // delete_orphans (argv[1]);
    3937      break;
    4038    case MODE_MISSED:
    41       fprintf (stderr, "delete missed not available\n");
    42       // delete_missed (argv[1]);
    4339      break;
    4440    default:
    4541      usage ();
    4642  }
     43  fprintf (stderr, "this mode is not supported by delstar_client\n");
    4744  exit (1);
    4845}
Note: See TracChangeset for help on using the changeset viewer.