IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Feb 14, 2007, 2:34:00 PM (19 years ago)
Author:
magnier
Message:

adding HEADER Read options for loading headers with images

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psModules/src/camera/pmFPAfileIO.c

    r11687 r11793  
    251251
    252252    switch (file->type) {
    253         // open the FITS types:
    254     case PM_FPA_FILE_IMAGE:
    255     case PM_FPA_FILE_MASK:
    256     case PM_FPA_FILE_WEIGHT:
    257     case PM_FPA_FILE_FRINGE:
     253      // open the FITS types:
     254      case PM_FPA_FILE_IMAGE:
     255      case PM_FPA_FILE_MASK:
     256      case PM_FPA_FILE_WEIGHT:
     257      case PM_FPA_FILE_HEADER:
     258      case PM_FPA_FILE_FRINGE:
    258259        psTrace ("pmFPAfile", 5, "opening %s (type: %d)\n", file->filename, file->type);
    259260        if (!openImage(file, view, mode, config)) {
     
    263264        break;
    264265        // open the FITS object files
    265     case PM_FPA_FILE_CMF:
     266      case PM_FPA_FILE_CMF:
    266267        psTrace ("pmFPAfile", 5, "opening %s (type: %d)\n", file->filename, file->type);
    267268        file->fits = psFitsOpen (file->filename, mode);
     
    273274        break;
    274275
    275         // defer opening TEXT types:
    276     case PM_FPA_FILE_SX:
    277     case PM_FPA_FILE_OBJ:
    278     case PM_FPA_FILE_CMP:
    279     case PM_FPA_FILE_RAW:
    280     case PM_FPA_FILE_PSF:
    281     case PM_FPA_FILE_JPEG:
    282     case PM_FPA_FILE_KAPA:
    283     case PM_FPA_FILE_MANAPLOT:
     276      // defer opening TEXT types:
     277      case PM_FPA_FILE_SX:
     278      case PM_FPA_FILE_OBJ:
     279      case PM_FPA_FILE_CMP:
     280      case PM_FPA_FILE_RAW:
     281      case PM_FPA_FILE_PSF:
     282      case PM_FPA_FILE_JPEG:
     283      case PM_FPA_FILE_KAPA:
     284      case PM_FPA_FILE_MANAPLOT:
    284285        psTrace ("pmFPAfile", 5, "defer opening %s\n", file->filename);
    285286        break;
    286287
    287     default:
     288      default:
    288289        psError(PS_ERR_IO, true, "type mismatch for %s : %d\n", file->filename, file->type);
    289290        return false;
     
    357358    case PM_FPA_FILE_WEIGHT:
    358359        if (!pmFPAviewReadFitsWeight(view, file)) {
     360            psError(PS_ERR_UNKNOWN, false, "skipping %s (type: %d)\n", file->filename, file->type);
     361            return false;
     362        }
     363        psTrace ("pmFPAfile", 5, "reading %s (type: %d)\n", file->filename, file->type);
     364        break;
     365    case PM_FPA_FILE_HEADER:
     366        if (!pmFPAviewReadFitsHeaderSet(view, file)) {
    359367            psError(PS_ERR_UNKNOWN, false, "skipping %s (type: %d)\n", file->filename, file->type);
    360368            return false;
     
    432440    case PM_FPA_FILE_MASK:
    433441    case PM_FPA_FILE_WEIGHT:
     442    case PM_FPA_FILE_HEADER:
    434443    case PM_FPA_FILE_FRINGE:
    435444        if (pmFPAviewFreeData(view, file)) {
     
    525534        pmFPAviewWriteFitsWeight(view, file, config);
    526535        psTrace ("pmFPAfile", 5, "wrote weight %s (fpa: %p)\n", file->filename, file->fpa);
     536        break;
     537    case PM_FPA_FILE_HEADER:
     538      // pmFPAviewWriteFitsWeight(view, file, config);
     539      // psTrace ("pmFPAfile", 5, "wrote weight %s (fpa: %p)\n", file->filename, file->fpa);
     540      psAbort ("no HEADER write functions defined");
    527541        break;
    528542    case PM_FPA_FILE_FRINGE:
     
    616630    case PM_FPA_FILE_WEIGHT:
    617631    case PM_FPA_FILE_FRINGE: {
    618             // create FPA structure component based on view
    619             #if 0
    620             psMetadata *format = file->format; // Camera format configuration
    621             if (!format) {
    622                 // It's likely a mosaic, for which we don't yet know the appropriate format
    623                 const psMetadata *camera = file->fpa->camera; // Camera configuration
    624                 psMetadata *formats = psMetadataLookupMetadata(NULL, camera, "FORMATS"); // The FORMATS
    625                 if (!formats) {
    626                     psError(PS_ERR_UNEXPECTED_NULL, false, "Unable to find FORMATS in camera configuration.\n");
    627                     return false;
    628                 }
    629                 format = psMetadataLookupMetadata(NULL, formats, config->formatName);
    630                 if (!format) {
    631                     psError(PS_ERR_UNEXPECTED_NULL, false,
    632                             "Unable to find format %s in camera configuration.\n", config->formatName);
    633                     return false;
    634                 }
    635                 file->format = psMemIncrRefCounter(format);
    636             }
    637             #endif
    638             pmFPAAddSourceFromView (file->fpa, view, file->format);
    639             psTrace ("pmFPAfile", 5, "created fpa data elements for %s (fpa: %p)\n", file->name, file->fpa);
    640             break;
    641         }
     632        // create FPA structure component based on view
     633        // XXX drop this ifdef'ed out code??
     634#if 0
     635        psMetadata *format = file->format; // Camera format configuration
     636        if (!format) {
     637            // It's likely a mosaic, for which we don't yet know the appropriate format
     638            const psMetadata *camera = file->fpa->camera; // Camera configuration
     639            psMetadata *formats = psMetadataLookupMetadata(NULL, camera, "FORMATS"); // The FORMATS
     640            if (!formats) {
     641                psError(PS_ERR_UNEXPECTED_NULL, false, "Unable to find FORMATS in camera configuration.\n");
     642                return false;
     643            }
     644            format = psMetadataLookupMetadata(NULL, formats, config->formatName);
     645            if (!format) {
     646                psError(PS_ERR_UNEXPECTED_NULL, false,
     647                        "Unable to find format %s in camera configuration.\n", config->formatName);
     648                return false;
     649            }
     650            file->format = psMemIncrRefCounter(format);
     651        }
     652#endif
     653        pmFPAAddSourceFromView (file->fpa, view, file->format);
     654        psTrace ("pmFPAfile", 5, "created fpa data elements for %s (fpa: %p)\n", file->name, file->fpa);
     655        break;
     656    }
     657    case PM_FPA_FILE_HEADER:
     658      psAbort ("Create not defined for HEADER");
     659      break;
    642660    case PM_FPA_FILE_SX:
    643661    case PM_FPA_FILE_RAW:
     
    691709    case PM_FPA_FILE_MASK:
    692710    case PM_FPA_FILE_WEIGHT:
     711    case PM_FPA_FILE_HEADER:
    693712    case PM_FPA_FILE_FRINGE:
    694713    case PM_FPA_FILE_CMF:
Note: See TracChangeset for help on using the changeset viewer.