IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 14102


Ignore:
Timestamp:
Jul 10, 2007, 11:49:55 AM (19 years ago)
Author:
jhoblitt
Message:

add warptool -revertwarped

Location:
trunk/ippTools
Files:
1 added
4 edited

Legend:

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

    r14100 r14102  
    4141        warptool_tooverlap.sql \
    4242        warptool_towarped.sql \
    43         warptool_warped.sql
     43        warptool_warped.sql \
     44        warptool_revertwarped.sql
  • trunk/ippTools/src/warptool.c

    r13821 r14102  
    4242static bool addwarpedMode(pxConfig *config);
    4343static bool warpedMode(pxConfig *config);
     44static bool revertwarpedMode(pxConfig *config);
    4445
    4546static bool parseAndInsertSkyCellMap(pxConfig *config, const char *mapfile);
     
    7778        MODECASE(WARPTOOL_MODE_ADDWARPED,         addwarpedMode);
    7879        MODECASE(WARPTOOL_MODE_WARPED,            warpedMode);
     80        MODECASE(WARPTOOL_MODE_REVERTWARPED,      revertwarpedMode);
    7981        default:
    8082            psAbort("invalid option (this should not happen)");
     
    884886    }
    885887
     888    // default values
     889    psS16 code = psMetadataLookupS16(&status, config->args, "-code");
     890    if (!status) {
     891        psError(PS_ERR_UNKNOWN, false, "failed to lookup value for -code");
     892        return false;
     893    }
     894
    886895    // we don't want to insert the last skyfile in a run but then not mark the
    887896    // run as 'stop'
     
    899908            path_base,
    900909            bg,
    901             bg_stdev
     910            bg_stdev,
     911            code
    902912        )) {
    903913        if (!psDBRollback(config->dbh)) {
     
    11191129
    11201130
     1131static bool revertwarpedMode(pxConfig *config)
     1132{
     1133    PS_ASSERT_PTR_NON_NULL(config, false);
     1134
     1135    psString query = pxDataGet("warpool_revertwarped.sql");
     1136    if (!query) {
     1137        psError(PXTOOLS_ERR_DATA, false, "failed to retreive SQL statement");
     1138        return false;
     1139    }
     1140
     1141    if (config->where) {
     1142        psString whereClause = psDBGenerateWhereConditionSQL(config->where, "warpSkyfile");
     1143        psStringAppend(&query, " AND %s", whereClause);
     1144        psFree(whereClause);
     1145    }
     1146
     1147    if (!p_psDBRunQuery(config->dbh, query)) {
     1148        psError(PS_ERR_UNKNOWN, false, "database error");
     1149        psFree(query);
     1150        return false;
     1151    }
     1152    psFree(query);
     1153
     1154    if (psDBAffectedRows(config->dbh) < 1) {
     1155        psError(PS_ERR_UNKNOWN, false, "should have affected atleast 1 row");
     1156        return false;
     1157    }
     1158
     1159    return true;
     1160}
     1161
     1162
    11211163static bool setwarpRunState(pxConfig *config, const char *warp_id, const char *state)
    11221164{
  • trunk/ippTools/src/warptool.h

    r12025 r14102  
    3636    WARPTOOL_MODE_ADDWARPED,
    3737    WARPTOOL_MODE_WARPED,
     38    WARPTOOL_MODE_REVERTWARPED,
    3839} warptoolMode;
    3940
  • trunk/ippTools/src/warptoolConfig.c

    r14023 r14102  
    156156    psMetadataAddF64(addwarpedArgs, PS_LIST_TAIL, "-bg_stdev",  0,
    157157            "define exposure background stdev", NAN);
     158    psMetadataAddS16(addwarpedArgs, PS_LIST_TAIL, "-code",  0,
     159            "set fault code", 0);
     160
    158161
    159162    // -warped
     
    173176    psMetadataAddBool(warpedArgs, PS_LIST_TAIL, "-simple",  0,
    174177            "use the simple output format", false);
     178
     179    // -revertwarped
     180    psMetadata *revertwarpedArgs = psMetadataAlloc();
     181    psMetadataAddStr(revertwarpedArgs, PS_LIST_TAIL, "-warp_id", 0,
     182            "search by warptool ID (required)", NULL);
     183    psMetadataAddStr(revertwarpedArgs, PS_LIST_TAIL, "-skycell_id",  0,
     184            "search by skycell ID", NULL);
     185    psMetadataAddStr(revertwarpedArgs, PS_LIST_TAIL, "-tess_id",  0,
     186            "searcy by tessellation ID", NULL);
     187    psMetadataAddS16(revertwarpedArgs, PS_LIST_TAIL, "-code",  0,
     188            "search by fault code", 0);
     189
    175190
    176191    psFree(now);
     
    190205    PXTOOL_ADD_MODE("-addwarped",       "", WARPTOOL_MODE_ADDWARPED,      addwarpedArgs);
    191206    PXTOOL_ADD_MODE("-warped",          "", WARPTOOL_MODE_WARPED,         warpedArgs);
    192 #if 0
    193     PXTOOL_ADD_MODE("-tostackedimfile", WARPTOOL_MODE_TOSTACKEDIMFILE, tostackedimfileArgs);
    194     PXTOOL_ADD_MODE("-addstackedimfile", WARPTOOL_MODE_ADDSTACKEDIMFILE, addstackedimfileArgs);
    195     PXTOOL_ADD_MODE("-stackedimfile",   WARPTOOL_MODE_STACKEDIMFILE, stackedimfileArgs);
    196     PXTOOL_ADD_MODE("-todiffimfile", WARPTOOL_MODE_TODIFFIMFILE, todiffimfileArgs);
    197     PXTOOL_ADD_MODE("-adddiffimfile", WARPTOOL_MODE_ADDDIFFIMFILE, adddiffimfileArgs);
    198     PXTOOL_ADD_MODE("-diffimfile",   WARPTOOL_MODE_DIFFIMFILE, diffimfileArgs);
    199 #endif
     207    PXTOOL_ADD_MODE("-revertwarped",    "", WARPTOOL_MODE_REVERTWARPED,   revertwarpedArgs);
    200208
    201209    if (!pxGetOptions(stderr, argc, argv, config, modes, argSets)) {
     
    256264    addWhereStr(exp_id);
    257265
     266    // convert '-code' to 'fault'
     267    {
     268        psS16 fault = 0;
     269        bool status = false;
     270        if ((fault = psMetadataLookupS16(&status, config->args, "-code"))) {
     271            if (!psMetadataAddS16(config->where, PS_LIST_TAIL, "fault", 0, "==", fault)) {
     272                psError(PS_ERR_UNKNOWN, false, "failed to add item fault");
     273                psFree(config);
     274                return NULL;
     275            }
     276        }
     277    }
     278
    258279    if (config->where->list->n < 1) {
    259280        psFree(config->where);
Note: See TracChangeset for help on using the changeset viewer.