IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 14265


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

add dettool -revertnormalizedexp

Location:
trunk/ippTools
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippTools/scripts/difftest.sh

    r14250 r14265  
    99difftool -addinputskyfile -diff_id 1 -warp_id 1 -kind warped -template || exit 1
    1010difftool -addinputskyfile -diff_id 1 -warp_id 1 -kind warped || exit 1
    11 difftool -updaterun -state run -diff_id 1 || exit 1
     11#difftool -updaterun -state run -diff_id 1 || exit 1
    1212difftool -todiffskyfile || exit 1
    1313difftool -inputskyfile || exit 1
  • trunk/ippTools/share/Makefile.am

    r14256 r14265  
    1919        dettool_revertnormalizedstat.sql \
    2020        dettool_revertprocessedexp.sql \
     21        dettool_revertnormalizedexp.sql \
    2122        dettool_revertprocessedimfile.sql \
    2223        dettool_revertstacked.sql \
  • trunk/ippTools/src/dettool.c

    r14243 r14265  
    7070static bool addnormalizedexpMode(pxConfig *config);
    7171static bool normalizedexpMode(pxConfig *config);
    72 
     72static bool revertnormalizedexpMode(pxConfig *config);
    7373// residimfile
    7474static bool toresidimfileMode(pxConfig *config);
     
    156156        MODECASE(DETTOOL_MODE_ADDNORMALIZEDEXP, addnormalizedexpMode);
    157157        MODECASE(DETTOOL_MODE_NORMALIZEDEXP,    normalizedexpMode);
     158        MODECASE(DETTOOL_MODE_REVERTNORMALIZEDEXP, revertnormalizedexpMode);
     159        // residimfile
    158160        MODECASE(DETTOOL_MODE_TORESIDIMFILE,    toresidimfileMode);
    159161        MODECASE(DETTOOL_MODE_ADDRESIDIMFILE,   addresidimfileMode);
     162        MODECASE(DETTOOL_MODE_RESIDIMFILE,      residimfileMode);
     163
    160164        MODECASE(DETTOOL_MODE_TORESIDEXP,       toresidexpMode);
    161         MODECASE(DETTOOL_MODE_RESIDIMFILE,      residimfileMode);
    162165        MODECASE(DETTOOL_MODE_ADDRESIDEXP,      addresidexpMode);
    163166        MODECASE(DETTOOL_MODE_RESIDEXP,         residexpMode);
     
    43394342}
    43404343
     4344
    43414345static bool normalizedexpMode(pxConfig *config)
    43424346{
     
    44274431    return true;
    44284432}
     4433
    44294434
    44304435static  detNormalizedImfileRow *detNormalizedStatToDetNormalizedmfile(pxConfig *config, detNormalizedStatImfileRow *statImfile)
     
    45244529    );
    45254530}
     4531
     4532
     4533static bool revertnormalizedexpMode(pxConfig *config)
     4534{
     4535    PS_ASSERT_PTR_NON_NULL(config, false);
     4536
     4537    psString query = pxDataGet("dettool_revertnormalizedexp.sql");
     4538    if (!query) {
     4539        psError(PXTOOLS_ERR_DATA, false, "failed to retreive SQL statement");
     4540        return false;
     4541    }
     4542
     4543    if (config->where) {
     4544        psString whereClause = psDBGenerateWhereConditionSQL(config->where, "detNormalizedExp");
     4545        psStringAppend(&query, " AND %s", whereClause);
     4546        psFree(whereClause);
     4547    }
     4548
     4549    if (!p_psDBRunQuery(config->dbh, query)) {
     4550        psError(PS_ERR_UNKNOWN, false, "database error");
     4551        psFree(query);
     4552        return false;
     4553    }
     4554    psFree(query);
     4555
     4556    if (psDBAffectedRows(config->dbh) < 1) {
     4557        psError(PS_ERR_UNKNOWN, false, "should have affected atleast 1 row");
     4558        return false;
     4559    }
     4560
     4561    return true;
     4562}
     4563
    45264564
    45274565static bool toresidimfileMode(pxConfig *config)
  • trunk/ippTools/src/dettool.h

    r14243 r14265  
    5656    DETTOOL_MODE_ADDNORMALIZEDEXP,
    5757    DETTOOL_MODE_NORMALIZEDEXP,
     58    DETTOOL_MODE_REVERTNORMALIZEDEXP,
    5859    DETTOOL_MODE_TORESIDIMFILE,
    5960    DETTOOL_MODE_ADDRESIDIMFILE,
  • trunk/ippTools/src/dettoolConfig.c

    r14243 r14265  
    695695            "use the simple output format", false);
    696696
     697    // -revertnormalizedexp
     698    psMetadata *revertnormalizedexpArgs = psMetadataAlloc();
     699    psMetadataAddStr(revertnormalizedexpArgs, PS_LIST_TAIL, "-det_id", 0,
     700            "search by detrend ID (required)", NULL);
     701    psMetadataAddS32(revertnormalizedexpArgs, PS_LIST_TAIL, "-iteration", 0,
     702            "search by iteration number", 0);
     703    psMetadataAddS16(revertnormalizedexpArgs, PS_LIST_TAIL, "-code",  0,
     704            "search by fault code", 0);
     705
    697706    // -toresidimfile
    698707    psMetadata *toresidimfileArgs = psMetadataAlloc();
     
    10201029    PXTOOL_ADD_MODE("-addnormalizedimfile", "", DETTOOL_MODE_ADDNORMALIZEDIMFILE,addnormalizedimfileArgs);
    10211030    PXTOOL_ADD_MODE("-normalizedimfile","", DETTOOL_MODE_NORMALIZEDIMFILE, normalizedimfileArgs);
    1022     PXTOOL_ADD_MODE("-revertnormalizedimfile","", DETTOOL_MODE_REVERTNORMALIZEDIMFILE, normalizedimfileArgs);
     1031    PXTOOL_ADD_MODE("-revertnormalizedimfile","", DETTOOL_MODE_REVERTNORMALIZEDIMFILE, revertnormalizedimfileArgs);
    10231032    PXTOOL_ADD_MODE("-tonormalizedexp", "", DETTOOL_MODE_TONORMALIZEDEXP, tonormalizedexpArgs);
    10241033    PXTOOL_ADD_MODE("-addnormalizedexp", "", DETTOOL_MODE_ADDNORMALIZEDEXP, addnormalizedexpArgs);
    10251034    PXTOOL_ADD_MODE("-normalizedexp",   "", DETTOOL_MODE_NORMALIZEDEXP, normalizedexpArgs);
     1035    PXTOOL_ADD_MODE("-revertnormalizedexp","", DETTOOL_MODE_REVERTNORMALIZEDEXP, revertnormalizedexpArgs);
    10261036    PXTOOL_ADD_MODE("-toresidimfile",   "", DETTOOL_MODE_TORESIDIMFILE, toresidimfileArgs);
    10271037    PXTOOL_ADD_MODE("-addresidimfile",  "", DETTOOL_MODE_ADDRESIDIMFILE,  addresidimfileArgs);
     
    10701080    {
    10711081        // XXX this is broke because you can't specify -iteration 0
    1072         int n = 0;
    1073         bool status = false;
    1074         if ((n = psMetadataLookupS32(&status, config->args, "-iteration"))) {
    1075             if (!psMetadataAddS32(config->where, PS_LIST_TAIL, "iteration", 0, "==", n)) {
     1082        psMetadataItem *item = psMetadataLookup(config->args, "-iteration");
     1083        if (item && psStrcasestr(item->comment, "found")) {
     1084            if (!psMetadataAddS32(config->where, PS_LIST_TAIL, "iteration", 0, "==", item->data.S32)) {
    10761085                psError(PS_ERR_UNKNOWN, false, "failed to add item iteration");
    10771086                psFree(config);
Note: See TracChangeset for help on using the changeset viewer.