IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 14097


Ignore:
Timestamp:
Jul 10, 2007, 10:23:17 AM (19 years ago)
Author:
jhoblitt
Message:

add regtool -revertprocessedimfile

Location:
trunk/ippTools
Files:
1 added
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippTools/share/Makefile.am

    r14088 r14097  
    2929        regtool_processedexp.sql \
    3030        regtool_processedimfile.sql \
     31        regtool_revertprocessedimfile.sql \
    3132        stacktool_inputskyfile.sql \
    3233        stacktool_sumskyfile.sql \
  • trunk/ippTools/src/regtool.c

    r14091 r14097  
    3434static bool addprocessedimfileMode(pxConfig *config);
    3535static bool processedimfileMode(pxConfig *config);
     36static bool revertprocessedimfileMode(pxConfig *config);
    3637static bool updateprocessedimfileMode(pxConfig *config);
    3738
     
    7273        MODECASE(REGTOOL_MODE_ADDPROCESSEDIMFILE,    addprocessedimfileMode);
    7374        MODECASE(REGTOOL_MODE_PROCESSEDIMFILE,       processedimfileMode);
     75        MODECASE(REGTOOL_MODE_REVERTPROCESSEDIMFILE, revertprocessedimfileMode);
    7476        MODECASE(REGTOOL_MODE_UPDATEPROCESSEDIMFILE, updateprocessedimfileMode);
    7577        MODECASE(REGTOOL_MODE_PENDINGEXP,            pendingexpMode);
     
    402404
    403405    psFree(output);
     406
     407    return true;
     408}
     409
     410
     411static bool revertprocessedimfileMode(pxConfig *config)
     412{
     413    PS_ASSERT_PTR_NON_NULL(config, false);
     414
     415    psString query = pxDataGet("regtool_revertprocessedimfile.sql");
     416    if (!query) {
     417        psError(PXTOOLS_ERR_DATA, false, "failed to retreive SQL statement");
     418        return false;
     419    }
     420
     421    if (config->where) {
     422        psString whereClause = psDBGenerateWhereConditionSQL(config->where, "rawImfile");
     423        psStringAppend(&query, " AND %s", whereClause);
     424        psFree(whereClause);
     425    }
     426
     427    if (!p_psDBRunQuery(config->dbh, query)) {
     428        psError(PS_ERR_UNKNOWN, false, "database error");
     429        psFree(query);
     430        return false;
     431    }
     432    psFree(query);
     433
     434    if (psDBAffectedRows(config->dbh) < 1) {
     435        psError(PS_ERR_UNKNOWN, false, "should have affected atleast 1 row");
     436        return false;
     437    }
    404438
    405439    return true;
  • trunk/ippTools/src/regtool.h

    r12025 r14097  
    2828    REGTOOL_MODE_ADDPROCESSEDIMFILE,
    2929    REGTOOL_MODE_PROCESSEDIMFILE,
     30    REGTOOL_MODE_REVERTPROCESSEDIMFILE,
    3031    REGTOOL_MODE_UPDATEPROCESSEDIMFILE,
    3132    REGTOOL_MODE_PENDINGEXP,
  • trunk/ippTools/src/regtoolConfig.c

    r14091 r14097  
    133133        "use the simple output format", false);
    134134
     135    // -revertprocessedimfile
     136    psMetadata *revertprocessedimfileArgs = psMetadataAlloc();
     137    psMetadataAddStr(revertprocessedimfileArgs, PS_LIST_TAIL, "-exp_id",  0,
     138            "search by exposure ID (required)", NULL);
     139    psMetadataAddStr(revertprocessedimfileArgs, PS_LIST_TAIL, "-tmp_class_id",  0,
     140            "searcy by temp. class ID", NULL);
     141    psMetadataAddStr(revertprocessedimfileArgs, PS_LIST_TAIL, "-class_id",  0,
     142            "search by class ID", NULL);
     143    psMetadataAddS16(revertprocessedimfileArgs, PS_LIST_TAIL, "-code",  0,
     144            "search by fault code", 0);
     145
    135146    // -updateprocessedimfile
    136147    psMetadata *updateprocessedimfileArgs = psMetadataAlloc();
     
    141152    psMetadataAddS16(updateprocessedimfileArgs, PS_LIST_TAIL, "-code",  0,
    142153        "set fault code (required)", INT16_MAX);
    143    
    144154
    145155    // -pendingexp
     
    256266    PXTOOL_ADD_MODE("-addprocessedimfile",      "",  REGTOOL_MODE_ADDPROCESSEDIMFILE, addprocessedimfileArgs);
    257267    PXTOOL_ADD_MODE("-processedimfile",         "", REGTOOL_MODE_PROCESSEDIMFILE, processedimfileArgs);
     268    PXTOOL_ADD_MODE("-revertprocessedimfile",   "", REGTOOL_MODE_REVERTPROCESSEDIMFILE, revertprocessedimfileArgs);
    258269    PXTOOL_ADD_MODE("-updateprocessedimfile",   "",   REGTOOL_MODE_UPDATEPROCESSEDIMFILE, updateprocessedimfileArgs);
    259270    PXTOOL_ADD_MODE("-pendingexp",              "",       REGTOOL_MODE_PENDINGEXP,pendingexpArgs);
     
    307318    addWhereStr(class);
    308319    addWhereStr(class_id);
     320    addWhereStr(tmp_class_id);
    309321    addWhereStr(filter);
    310322
Note: See TracChangeset for help on using the changeset viewer.