IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 19677


Ignore:
Timestamp:
Sep 23, 2008, 9:56:39 AM (18 years ago)
Author:
bills
Message:

added -updateskyfile mode removed data_state

Location:
trunk/ippTools/src
Files:
3 edited

Legend:

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

    r19639 r19677  
    4444static bool pendingcleanupskyfileMode(pxConfig *config);
    4545static bool donecleanupMode(pxConfig *config);
     46static bool updatediffskyfileMode(pxConfig *config);
    4647
    4748static bool setdiffRunState(pxConfig *config, psS64 diff_id, const char *state);
     
    7879        MODECASE(DIFFTOOL_MODE_PENDINGCLEANUPSKYFILE, pendingcleanupskyfileMode);
    7980        MODECASE(DIFFTOOL_MODE_DONECLEANUP,           donecleanupMode);
     81        MODECASE(DIFFTOOL_MODE_UPDATEDIFFSKYFILE,     updatediffskyfileMode);
    8082        default:
    8183            psAbort("invalid option (this should not happen)");
     
    495497                           uri,
    496498                           path_base,
    497                            "full",      // data_state
    498499                           bg,
    499500                           bg_stdev,
     
    12181219    return true;
    12191220}
     1221
     1222static bool updatediffskyfileMode(pxConfig *config)
     1223{
     1224    PS_ASSERT_PTR_NON_NULL(config, false);
     1225
     1226    PXOPT_LOOKUP_S16(code, config->args, "-code", true, false);
     1227
     1228    psMetadata *where = psMetadataAlloc();
     1229    PXOPT_COPY_S64(config->args, where, "-diff_id",   "diff_id",   "==");
     1230
     1231    if (!pxSetFaultCode(config->dbh, "diffSkyfile", where, code)) {
     1232        psError(PS_ERR_UNKNOWN, false, "failed to set set fault flag");
     1233        psFree (where);
     1234        return false;
     1235    }
     1236    psFree (where);
     1237
     1238    return true;
     1239}
     1240
  • trunk/ippTools/src/difftool.h

    r19092 r19677  
    3838    DIFFTOOL_MODE_PENDINGCLEANUPSKYFILE,
    3939    DIFFTOOL_MODE_DONECLEANUP,
     40    DIFFTOOL_MODE_UPDATEDIFFSKYFILE,
    4041} difftoolMode;
    4142
  • trunk/ippTools/src/difftoolConfig.c

    r19639 r19677  
    170170    psMetadata *donecleanupArgs = psMetadataAlloc();
    171171    psMetadataAddStr(donecleanupArgs, PS_LIST_TAIL, "-label",  0,            "list blocks for specified label", NULL);
    172     psMetadataAddBool(donecleanupArgs, PS_LIST_TAIL, "-simple",  0,            "use the simple output format", false);
     172    psMetadataAddBool(donecleanupArgs, PS_LIST_TAIL, "-simple",  0,          "use the simple output format", false);
    173173    psMetadataAddU64(donecleanupArgs, PS_LIST_TAIL, "-limit",  0,            "limit result set to N items", 0);
     174    // -updatediffskyfile
     175    psMetadata *updatediffskyfileArgs = psMetadataAlloc();
     176    psMetadataAddS64(updatediffskyfileArgs, PS_LIST_TAIL, "-diff_id", 0,      "define diff ID (required)", 0);
     177    psMetadataAddS16(updatediffskyfileArgs, PS_LIST_TAIL, "-code", 0,         "set fault code (required)", 0);
     178
    174179
    175180    psFree(now);
     
    191196    PXOPT_ADD_MODE("-pendingcleanupskyfile", "show runs that need to be cleaned up", DIFFTOOL_MODE_PENDINGCLEANUPSKYFILE, pendingcleanupskyfileArgs);
    192197    PXOPT_ADD_MODE("-donecleanup",           "show runs that have been cleaned",     DIFFTOOL_MODE_DONECLEANUP,          donecleanupArgs);
     198    PXOPT_ADD_MODE("-updatediffskyfile",     "update fault code for a diffskyfile",  DIFFTOOL_MODE_UPDATEDIFFSKYFILE,          updatediffskyfileArgs);
    193199
    194200    if (!pxGetOptions(stderr, argc, argv, config, modes, argSets)) {
Note: See TracChangeset for help on using the changeset viewer.