IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 6982


Ignore:
Timestamp:
Apr 25, 2006, 2:25:42 PM (20 years ago)
Author:
Paul Price
Message:

Write concepts only when writing the header; not before

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/psModules/src/astrom/pmFPAWrite.c

    r6896 r6982  
    7676                )
    7777{
    78     pmConceptsWriteCell(cell, PM_CONCEPT_SOURCE_HEADER | PM_CONCEPT_SOURCE_CAMERA | PM_CONCEPT_SOURCE_DEFAULTS,
    79                         false, NULL);
    80 
    8178    pmHDU *hdu = cell->hdu;             // The HDU
    82     if (hdu && ((!pixels && hdu->phu) || pixels) && !pmHDUWrite(hdu, fits)) {
    83         psError(PS_ERR_IO, false, "Unable to write HDU for Chip.\n");
    84         return false;
     79    if (hdu && ((!pixels && hdu->phu) || pixels)) {
     80        bool status = pmConceptsWriteCell(cell, PM_CONCEPT_SOURCE_HEADER | PM_CONCEPT_SOURCE_CAMERA |
     81                                          PM_CONCEPT_SOURCE_DEFAULTS, false, NULL);
     82        status &= pmHDUWrite(hdu, fits);
     83        if (!status) {
     84            psError(PS_ERR_IO, false, "Unable to write HDU for Chip.\n");
     85            return false;
     86        }
    8587    }
    8688
     
    9597                )
    9698{
    97     pmConceptsWriteChip(chip, PM_CONCEPT_SOURCE_HEADER | PM_CONCEPT_SOURCE_CAMERA | PM_CONCEPT_SOURCE_DEFAULTS,
    98                         false, NULL);
    99 
    10099    pmHDU *hdu = chip->hdu;             // The HDU
    101     if (hdu && ((!pixels && hdu->phu) || pixels) && !pmHDUWrite(hdu, fits)) {
    102         psError(PS_ERR_IO, false, "Unable to write HDU for Chip.\n");
    103         return false;
     100    if (hdu && ((!pixels && hdu->phu) || pixels)) {
     101        bool status = pmConceptsWriteChip(chip, PM_CONCEPT_SOURCE_HEADER | PM_CONCEPT_SOURCE_CAMERA |
     102                                          PM_CONCEPT_SOURCE_DEFAULTS, false, NULL);
     103        status &= pmHDUWrite(hdu, fits);
     104        if (!status) {
     105            psError(PS_ERR_IO, false, "Unable to write HDU for Chip.\n");
     106            return false;
     107        }
    104108    }
    105109
     
    125129               )
    126130{
    127     pmConceptsWriteFPA(fpa, PM_CONCEPT_SOURCE_HEADER | PM_CONCEPT_SOURCE_CAMERA | PM_CONCEPT_SOURCE_DEFAULTS,
    128                        NULL);
    129 
    130131    pmHDU *hdu = fpa->hdu;              // The HDU
    131     if (hdu && ((!pixels && hdu->phu) || pixels) && !pmHDUWrite(hdu, fits)) {
    132         psError(PS_ERR_IO, false, "Unable to write HDU for FPA.\n");
    133         return false;
     132    if (hdu && ((!pixels && hdu->phu) || pixels)) {
     133        bool status = pmConceptsWriteFPA(fpa, PM_CONCEPT_SOURCE_HEADER | PM_CONCEPT_SOURCE_CAMERA |
     134                                         PM_CONCEPT_SOURCE_DEFAULTS, NULL);
     135        status &= pmHDUWrite(hdu, fits);
     136        if (!status) {
     137            psError(PS_ERR_IO, false, "Unable to write HDU for FPA.\n");
     138            return false;
     139        }
    134140    }
    135141
Note: See TracChangeset for help on using the changeset viewer.