IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
May 22, 2012, 3:17:22 PM (14 years ago)
Author:
eugene
Message:

add -replace (by photcode) option to dvomerge

Location:
branches/eam_branches/ipp-20120405/Ohana/src/dvomerge
Files:
2 added
7 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20120405/Ohana/src/dvomerge/Makefile

    r33834 r33900  
    4343$(SRC)/LoadCatalog.$(ARCH).o \
    4444$(SRC)/build_links.$(ARCH).o \
     45$(SRC)/replace_match.$(ARCH).o \
    4546$(SRC)/merge_catalogs_new.$(ARCH).o \
    4647$(SRC)/merge_catalogs_old.$(ARCH).o
     
    6465$(SRC)/LoadCatalog.$(ARCH).o \
    6566$(SRC)/build_links.$(ARCH).o \
     67$(SRC)/replace_match.$(ARCH).o \
    6668$(SRC)/merge_catalogs_new.$(ARCH).o \
    6769$(SRC)/merge_catalogs_old.$(ARCH).o
  • branches/eam_branches/ipp-20120405/Ohana/src/dvomerge/include/dvomerge.h

    r33875 r33900  
    3636int    SKY_DEPTH;
    3737int    NTHREADS;
    38 char   *ALTERNATE_PHOTCODE_FILE;
     38char  *ALTERNATE_PHOTCODE_FILE;
     39int    REPLACE_BY_PHOTCODE;
    3940
    4041SkyRegion UserPatch;  // used by MODE CAT
     
    125126int        dvomergeUpdate_threaded PROTO((int argc, char **argv));
    126127int        dvomergeUpdate_catalogs PROTO((char *input, char *output, SkyTable *outsky, SkyList *inlist, int NsecfiltInput, int NsecfiltOutput, IDmapType IDmap, int *secfiltMap));
     128
     129int        replace_match           PROTO((Average *average_out, Measure *measure_out, Average *average_in, Measure *measure_in));
  • branches/eam_branches/ipp-20120405/Ohana/src/dvomerge/src/args.c

    r33834 r33900  
    1515    remove_argument (N, argc, argv);
    1616    ALTERNATE_PHOTCODE_FILE = strcreate(argv[N]);
     17    remove_argument (N, argc, argv);
     18  }
     19
     20  /* replace measurement, don't duplicate */
     21  REPLACE_BY_PHOTCODE = FALSE;
     22  if ((N = get_argument (*argc, argv, "-replace"))) {
     23    REPLACE_BY_PHOTCODE = TRUE;
    1724    remove_argument (N, argc, argv);
    1825  }
     
    108115  }
    109116
     117  /* replace measurement, don't duplicate */
     118  REPLACE_BY_PHOTCODE = FALSE;
     119  if ((N = get_argument (*argc, argv, "-replace"))) {
     120    REPLACE_BY_PHOTCODE = TRUE;
     121    remove_argument (N, argc, argv);
     122  }
     123
    110124  NTHREADS = 0;
    111125  if ((N = get_argument (*argc, argv, "-threads"))) {
  • branches/eam_branches/ipp-20120405/Ohana/src/dvomerge/src/dvomergeUpdate_catalogs.c

    r33875 r33900  
    214214
    215215    char tmpline[DVO_MAX_PATH];
    216     if (VERBOSE)            { snprintf (tmpline, DVO_MAX_PATH, "%s -v",                command);            strcpy (command, tmpline); }
    217 
    218     // XXX these do not make sense for dvomerge client, where the output is required to exist
    219     // if (CATFORMAT)          { snprintf (tmpline, DVO_MAX_PATH, "%s -D CATFORMAT %s",   command, CATFORMAT); strcpy (command, tmpline); }
    220     // if (CATMODE)            { snprintf (tmpline, DVO_MAX_PATH, "%s -D CATMODE %s",     command, CATMODE);   strcpy (command, tmpline); }
    221     // if (SKY_DEPTH)          { snprintf (tmpline, DVO_MAX_PATH, "%s -D SKY_DEPTH %d",   command, SKY_DEPTH); strcpy (command, tmpline); }
     216    if (VERBOSE)             { snprintf (tmpline, DVO_MAX_PATH, "%s -v",       command); strcpy (command, tmpline); }
     217    if (REPLACE_BY_PHOTCODE) { snprintf (tmpline, DVO_MAX_PATH, "%s -replace", command); strcpy (command, tmpline); }
    222218
    223219    fprintf (stderr, "command: %s\n", command);
  • branches/eam_branches/ipp-20120405/Ohana/src/dvomerge/src/help.c

    r33834 r33900  
    5151  fprintf (stderr, "  -h                          : this list\n\n");
    5252  fprintf (stderr, "  -region Rmin Rmax Dmin Dmax : region to merge\n\n");
     53  fprintf (stderr, "  -replace                    : replace existing detections of the same photcode\n");
     54  fprintf (stderr, "                                (this should only be used to merge reference dbs)\n\n");
    5355  exit (2);
    5456}
     
    7173  fprintf (stderr, "  -h                          : this list\n\n");
    7274  fprintf (stderr, "  -region Rmin Rmax Dmin Dmax : region to merge\n\n");
     75  fprintf (stderr, "  -replace                    : replace existing detections of the same photcode\n");
     76  fprintf (stderr, "                                (this should only be used to merge reference dbs)\n\n");
    7377  exit (2);
    7478}
  • branches/eam_branches/ipp-20120405/Ohana/src/dvomerge/src/merge_catalogs_old.c

    r30761 r33900  
    111111  if (Nave > 1) sort_coords_index (X2, Y2, N2, Nave);
    112112
     113  if (REPLACE_BY_PHOTCODE && output[0].Nmeasure && !output[0].sorted) {
     114    fprintf (stderr, "ERROR: attempt to merge with replace into an unsorted database\n");
     115    exit (3);
     116  }
     117
     118
    113119  /* set up pointers for linked list of measure */
    114120  if (output[0].sorted && (output[0].Nmeasure >= output[0].Nmeas_disk)) {
     
    186192      offset = input[0].average[N].measureOffset + Nin;
    187193
     194      if (REPLACE_BY_PHOTCODE) {
     195        // index to first measure for this object
     196        int Mout = output[0].average[n].measureOffset; 
     197        if (replace_match(&output[0].average[n], &output[0].measure[Mout], &input[0].average[N], &input[0].measure[offset])) {
     198          input[0].found[N] = Mout;
     199          continue;
     200        }
     201      }
    188202      /* add to end of measurement list */
    189203      add_meas_link (&output[0].average[n], next_meas, Nmeas, NMEAS);
  • branches/eam_branches/ipp-20120405/Ohana/src/dvomerge/test/dvomerge.parallel.sh

    r33835 r33900  
    55 cp HostTable.dat catdir.merge/
    66 dvodist -out catdir.merge
    7  dvomerge -parallel-manual catdir.grizy into catdir.merge
     7 dvomerge -parallel catdir.grizy into catdir.merge
Note: See TracChangeset for help on using the changeset viewer.