IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Jul 10, 2007, 2:34:45 PM (19 years ago)
Author:
jhoblitt
Message:

add stacktool -revertsumskyfile

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippTools/src/stacktoolConfig.c

    r14110 r14112  
    121121            "set fault code", 0);
    122122
    123 
    124123    // -sumskyfile
    125124    psMetadata *sumskyfileArgs= psMetadataAlloc();
     
    133132            "use the simple output format", false);
    134133
     134    // -revertsumskyfile
     135    psMetadata *revertsumskyfileArgs= psMetadataAlloc();
     136    psMetadataAddStr(revertsumskyfileArgs, PS_LIST_TAIL, "-stack_id", 0,
     137            "search by stack ID (required)", NULL);
     138    psMetadataAddS16(revertsumskyfileArgs, PS_LIST_TAIL, "-code",  0,
     139            "search by fault code", 0);
     140
    135141    psFree(now);
    136142
     
    145151    PXTOOL_ADD_MODE("-addsumskyfile",   "", STACKTOOL_MODE_ADDSUMSKYFILE,   addsumskyfileArgs);
    146152    PXTOOL_ADD_MODE("-sumskyfile",      "", STACKTOOL_MODE_SUMSKYFILE,      sumskyfileArgs);
     153    PXTOOL_ADD_MODE("-revertsumskyfile","", STACKTOOL_MODE_REVERTSUMSKYFILE,      revertsumskyfileArgs);
    147154
    148155    if (!pxGetOptions(stderr, argc, argv, config, modes, argSets)) {
     
    199206    }
    200207}
     208
     209{
     210    psString str = NULL;
     211    bool status = false;
     212    if ((str = psMetadataLookupStr(&status, config->args, "-stack_id"))) {
     213        if (!psMetadataAddS64(config->where, PS_LIST_TAIL, "stack_id", 0, "==", (psS64)atoll(str))) {
     214            psError(PS_ERR_UNKNOWN, false, "failed to add item stack_id");
     215            psFree(config);
     216            return NULL;
     217        }
     218    }
     219}
     220
    201221    addWhereStr(skycell_id);
    202222    addWhereStr(tess_id);
    203     addWhereStr(exp_id);
     223
     224    // convert '-code' to 'fault'
     225    {
     226        psS16 fault = 0;
     227        bool status = false;
     228        if ((fault = psMetadataLookupS16(&status, config->args, "-code"))) {
     229            if (!psMetadataAddS16(config->where, PS_LIST_TAIL, "fault", 0, "==", fault)) {
     230                psError(PS_ERR_UNKNOWN, false, "failed to add item fault");
     231                psFree(config);
     232                return NULL;
     233            }
     234        }
     235    }
    204236
    205237    if (config->where->list->n < 1) {
Note: See TracChangeset for help on using the changeset viewer.