IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 35244


Ignore:
Timestamp:
Mar 6, 2013, 11:32:20 AM (13 years ago)
Author:
eugene
Message:

partial improvement in getting image data for mextract

Location:
branches/eam_branches/ipp-20130306/Ohana/src/opihi/dvo
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20130306/Ohana/src/opihi/dvo/mextract.c

    r34749 r35244  
    11# include "dvoshell.h"
     2
     3int field_needs_images (dbField *field) {
     4  // the image subset table requires imageID for all fields
     5
     6    if (!MEASURE_HAS_XCCD) {
     7      // I'm keeping this code because it gives a way of handling dvo dbs that don't have
     8      // measure.xccd if we need it
     9      if (field->ID == MEAS_XCCD) return TRUE; // full astrometry per chip (120 bytes!)
     10      if (field->ID == MEAS_YCCD) return TRUE; // full astrometry per chip (120 bytes!)
     11    }
     12    if (field->ID == MEAS_XMOSAIC)        return TRUE; // crval1,2 only
     13    if (field->ID == MEAS_YMOSAIC)        return TRUE; // crval1,2 only
     14    if (field->ID == MEAS_EXTERN_ID)      return TRUE; // externID
     15    if (field->ID == MEAS_FLAT)           return TRUE; // Mcal
     16    if (field->ID == MEAS_CENTER_OFFSET)  return TRUE; // 0.5*NX, 0.5*NY
     17    if (field->ID == MEAS_EXPNAME_AS_INT) return TRUE; // expname (or as int)
     18    return FALSE;
     19}
    220
    321int mextract (int argc, char **argv) {
     
    523  off_t i, j, k, m; // used for counter averages and measures
    624  int n, N, Npts, NPTS, last, next, state, Nfields, Nreturn, Ncstack, Nstack;
    7   int Nsecfilt, VERBOSE, loadImages, mosaicMode;
     25  int Nsecfilt, VERBOSE, loadImages;
    826  char **cstack, name[1024];
    927  dbValue *values;
     
    121139  // load image data if needed (for fields listed below)
    122140  loadImages = FALSE;
    123   mosaicMode = FALSE;
    124141  for (i = 0; !loadImages && (i < Nfields); i++) {
    125     if (!MEASURE_HAS_XCCD) {
    126       // I'm keeping this code because it gives a way of handling dvo dbs that don't have
    127       // measure.xccd if we need it
    128       if (fields[i].ID == MEAS_XCCD) loadImages = TRUE;
    129       if (fields[i].ID == MEAS_YCCD) loadImages = TRUE;
    130     }
    131     if (fields[i].ID == MEAS_XMOSAIC)       loadImages = mosaicMode = TRUE;
    132     if (fields[i].ID == MEAS_YMOSAIC)       loadImages = mosaicMode = TRUE;
    133     if (fields[i].ID == MEAS_EXTERN_ID)     loadImages = mosaicMode = TRUE;
    134     if (fields[i].ID == MEAS_FLAT)          loadImages = mosaicMode = TRUE;
    135     if (fields[i].ID == MEAS_CENTER_OFFSET) loadImages = mosaicMode = TRUE;
    136   }
    137   if (loadImages && !SetImageSelection (mosaicMode, selection)) goto escape;
     142    loadImages = field_needs_images (&fields[i]);
     143  }
     144  if (loadImages && !SetImageSelection (TRUE, selection)) goto escape;
    138145
    139146  /* create storage vector */
  • branches/eam_branches/ipp-20130306/Ohana/src/opihi/dvo/mmatch.c

    r34749 r35244  
    11# include "dvoshell.h"
     2int field_needs_images (dbField *field);
    23
    34/* This function uses the 'find_match' algorithm to select the objects of interest.
     
    164165  // load image data if needed (for fields listed below)
    165166  int loadImages = FALSE;
    166   int mosaicMode = FALSE;
    167167  for (i = 0; !loadImages && (i < Nfields); i++) {
    168     if (!MEASURE_HAS_XCCD) {
    169       // I'm keeping this code because it gives a way of handling dvo dbs that don't have
    170       // measure.xccd if we need it
    171       if (fields[i].ID == MEAS_XCCD) loadImages = TRUE;
    172       if (fields[i].ID == MEAS_YCCD) loadImages = TRUE;
    173     }
    174     if (fields[i].ID == MEAS_XMOSAIC)       loadImages = mosaicMode = TRUE;
    175     if (fields[i].ID == MEAS_YMOSAIC)       loadImages = mosaicMode = TRUE;
    176     if (fields[i].ID == MEAS_EXTERN_ID)     loadImages = mosaicMode = TRUE;
    177     if (fields[i].ID == MEAS_FLAT)          loadImages = mosaicMode = TRUE;
    178     if (fields[i].ID == MEAS_CENTER_OFFSET) loadImages = mosaicMode = TRUE;
     168    loadImages = field_needs_images (&fields[i]);
    179169  }
    180170
     
    183173  selection.useDisplay = FALSE;
    184174  selection.useSkyregion = FALSE;
    185   if (loadImages && !SetImageSelection (mosaicMode, &selection)) goto escape;
     175  if (loadImages && !SetImageSelection (TRUE, &selection)) goto escape;
    186176
    187177  /* load regions which contain all supplied RA,DEC coordinates */
  • branches/eam_branches/ipp-20130306/Ohana/src/opihi/dvo/mmextract.c

    r30612 r35244  
    11# include "dvoshell.h"
     2int field_needs_images (dbField *field);
    23
    34int mmextract (int argc, char **argv) {
     
    78  int Nfields, Nreturn, Nreturn_base, Ncstack1, Ncstack2, Nstack1, Nstack2;
    89  int Nwhere, Iwhere, Nmatch, Imatch, NTABLE, Nt1, Nt2, n1, n2;
    9   int Nsecfilt, VERBOSE, loadImages, mosaicMode;
     10  int Nsecfilt, VERBOSE, loadImages;
    1011  char **cstack1, **cstack2, name1[1024], name2[1024];
    1112  dbValue *values, **table1, **table2;
     
    137138  // load image data if needed (for fields listed below)
    138139  loadImages = FALSE;
    139   mosaicMode = FALSE;
    140140  for (i = 0; !loadImages && (i < Nfields); i++) {
    141     if (fields[i].ID == MEAS_XCCD) loadImages = TRUE;
    142     if (fields[i].ID == MEAS_YCCD) loadImages = TRUE;
    143     if (fields[i].ID == MEAS_XMOSAIC) loadImages = mosaicMode = TRUE;
    144     if (fields[i].ID == MEAS_YMOSAIC) loadImages = mosaicMode = TRUE;
    145   }
    146   if (loadImages && !SetImageSelection (mosaicMode, selection)) goto escape;
     141    loadImages = field_needs_images (&fields[i]);
     142  }
     143  if (loadImages && !SetImageSelection (TRUE, selection)) goto escape;
    147144
    148145  /* create storage vector */
Note: See TracChangeset for help on using the changeset viewer.