IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 30263


Ignore:
Timestamp:
Jan 12, 2011, 4:54:59 PM (15 years ago)
Author:
bills
Message:

changes to support saving stats file in nebulous

Location:
trunk/magic/remove/src
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/magic/remove/src/streaksio.c

    r29392 r30263  
    121121    sf->transparentStreaks = psMetadataLookupF64(&status, config->arguments, "TRANSPARENT_STREAKS");
    122122
    123     sf->stats = psMetadataAlloc();
    124     psString statsFileName= psMetadataLookupStr(&status, config->arguments, "STATS");
    125     if (statsFileName) {
    126         sf->statsFile = fopen(statsFileName, "w");
    127         if (!sf->statsFile) {
    128             psError(PS_ERR_IO, true, "failed to open stats file %s", statsFileName);
    129             streaksExit("", PS_EXIT_CONFIG_ERROR);
    130         }
    131     }
    132 
    133123    return sf;
    134124}
     
    138128{
    139129    freeImages(sf);
     130    psFree(sf->stats);
    140131    psFree(sf->diffedPixels);
    141132    psFree(sf->tiles);
     
    861852        streaksExit("", PS_EXIT_DATA_ERROR);
    862853    }
     854    sfile->fits = NULL;
    863855    psFree(sfile->header);
    864856    sfile->header = NULL;
  • trunk/magic/remove/src/streaksremove.c

    r29806 r30263  
    275275    psLogMsg("streaksremove", PS_LOG_INFO, "time to run streaksremove: %f\n", total_time);
    276276
    277     if (sfiles->statsFile) {
    278         const char *statsMDC = psMetadataConfigFormat(sfiles->stats);
    279         if (!statsMDC || strlen(statsMDC) == 0) {
    280             psError(PS_ERR_IO, false, "Unable to get statistics MDC file.\n");
    281         } else {
    282             fprintf(sfiles->statsFile, "%s", statsMDC);
    283             psFree(statsMDC);
    284             fclose(sfiles->statsFile);
    285             sfiles->statsFile = NULL;
    286             psFree(sfiles->stats);
    287             sfiles->stats = NULL;
    288         }
    289     }
     277    psString statsFileName= psMetadataLookupStr(&status, config->arguments, "STATS");
     278
     279    if (statsFileName) {
     280    // Write out
     281        psString resolved = pmConfigConvertFilename(statsFileName, config, true, true); // Resolved filename
     282        if (!resolved) {
     283            psError(psErrorCodeLast(), false, "Unable to resolve statistics file name");
     284            return false;
     285        }
     286        if (!psMetadataConfigWrite(sfiles->stats, resolved, NULL)) {
     287            psError(psErrorCodeLast(), false, "Unable to serialize stats metadata.\n");
     288            psFree(resolved);
     289            return false;
     290        }
     291        psFree(resolved);
     292    }
     293
    290294    // all done. Clean up to look for memory leaks.
    291295
Note: See TracChangeset for help on using the changeset viewer.