IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 35893


Ignore:
Timestamp:
Aug 6, 2013, 10:57:50 AM (13 years ago)
Author:
bills
Message:

add argument to ppstamp to take a metadata config file with keywords to
add to the image fits headers

Location:
trunk/pstamp/src
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/pstamp/src/ppstampArguments.c

    r34596 r35893  
    2626    fprintf(stderr, "   [-variance var_image] : variance image\n");
    2727    fprintf(stderr, "   [-sources sources]    : sources cmf (ignored for chip stage)\n");
     28    fprintf(stderr, "   [-forheader mdcfile   : metadata config file contaiing keywords to add to fits headers\n");
    2829    fprintf(stderr, "   [-stage stage]        : stage of input image (raw, chip, warp, stack, diff)\n");
    2930    fprintf(stderr, "   [-write_jpeg]         : write a JPEG  format of the image stamp\n");
     
    135136        usage();
    136137    }
     138
     139    if ((argnum = psArgumentGet(argc, argv, "-forheader"))) {
     140        psArgumentRemove(argnum, &argc, argv);
     141        if (argnum >= argc) {
     142            psError(PSTAMP_ERR_ARGUMENTS, true, "metadata config filename value required with option -forheader");
     143            usage();
     144        }
     145
     146        const char *filename = argv[argnum];
     147        psArgumentRemove(argnum, &argc, argv);
     148
     149        unsigned int nFail = 0;
     150        options->headerAdditions = psMetadataConfigRead(NULL, &nFail, filename, false);
     151        if (nFail || !options->headerAdditions) {
     152            psError(PS_ERR_UNKNOWN, false, "failed to read metadata from %s", filename);
     153            return false;
     154        }
     155    }
    137156   
    138157    if ((argnum = psArgumentGet(argc, argv, "-no_censor_masked"))) {
  • trunk/pstamp/src/ppstampMakeStamp.c

    r35611 r35893  
    165165
    166166    ppstampVersionMetadata(outHDU->header, options);
     167
     168    // copy any user supplied keywords
     169    if (options->headerAdditions) {
     170        if (!psMetadataOverlay(outHDU->header, options->headerAdditions)) {
     171            psError(PS_ERR_UNKNOWN, false, "Failed to copy header additions to output\n");
     172            return false;
     173        }
     174    }
     175
    167176
    168177    return true;
  • trunk/pstamp/src/ppstampOptions.c

    r34596 r35893  
    1010{
    1111    psFree(options->chipName);
     12    psFree(options->headerAdditions);
    1213}
    1314
     
    3031    options->cellName  = NULL;
    3132    options->stage  = NULL;
     33    options->headerAdditions = NULL;
    3234    options->censorMasked = false;
    3335    options->writeJPEG = false;
  • trunk/pstamp/src/ppstampOptions.h

    r34596 r35893  
    1212    psString    cellName;
    1313    psString    stage;
     14    psMetadata  *headerAdditions;
    1415    bool        censorMasked;
    1516    bool        writeJPEG;
Note: See TracChangeset for help on using the changeset viewer.