IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 19609


Ignore:
Timestamp:
Sep 18, 2008, 6:39:14 PM (18 years ago)
Author:
eugene
Message:

added ref_det_id, ref_iter references for verify mode and populate as needed

Location:
branches/eam_branch_20080918
Files:
12 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branch_20080918/dbconfig/det.md

    r19088 r19609  
    2828    solang_max  F32         0.0
    2929    label       STR         64      # key
    30     parent      S32         0       # Key
     30    ref_det_id  S64         0       # reference for 'verify' and 'correction' analysis
     31    ref_iter    S32         0       # reference for 'verify' and 'correction' analysis
    3132END
    3233
     
    165166    det_id      S64         0       # Primary Key fkey(det_id, iteration, exp_id) ref detInputExp(det_id, iteration, exp_id)
    166167    iteration   S32         0       # Primary Key fkey(det_id, exp_id, class_id) ref detProcessedImfile(det_id, exp_id, class_id)
    167     exp_id     S64         64       # Primary Key fkey(det_id, iteration) ref detNormalizedExp(det_id, iteration)
     168    ref_det_id  S64         0       # detrend master actually applied (same as above for 'master', but not for 'verify')
     169    ref_iter    S32         0       # detrend master actually applied (same as above for 'master', but not for 'verify')
     170    exp_id      S64         64      # Primary Key fkey(det_id, iteration) ref detNormalizedExp(det_id, iteration)
    168171    class_id    STR         64      # Primary Key INDEX(det_id, iteration, exp_id)
    169172    uri         STR         255
  • branches/eam_branch_20080918/ippScripts/scripts/detrend_resid_imfile.pl

    r19374 r19609  
    2424use Pod::Usage qw( pod2usage );
    2525
    26 my ( $det_id, $iter, $exp_id, $exp_tag, $class_id, $det_type, $detrend, $input_uri, $camera, $mode, $outroot,
     26my ( $det_id, $iter, $ref_det_id, $ref_iter, $exp_id, $exp_tag, $class_id, $det_type, $detrend, $input_uri, $camera, $mode, $outroot,
    2727     $dbname, $reduction, $threads, $verbose, $no_update, $no_op, $redirect );
    2828GetOptions(
    2929    'det_id|d=s'        => \$det_id,
    3030    'iteration=s'       => \$iter,
     31    'ref_det_id=s'      => \$ref_det_id,
     32    'ref_iter=s'        => \$ref_iter,
    3133    'exp_id|e=s'        => \$exp_id,
    3234    'exp_tag|=s'        => \$exp_tag,
     
    4850
    4951pod2usage( -msg => "Unknown option: @ARGV", -exitval => 2 ) if @ARGV;
    50 pod2usage( -msg => "Required options: --det_id --iteration --exp_id --exp_tag --class_id --det_type --camera --input_uri --mode --detrend --outroot (not for 'verify' mode)",
     52pod2usage( -msg => "Required options: --det_id --iteration --ref_det_id --ref_iter --exp_id --exp_tag --class_id --det_type --camera --input_uri --mode --detrend --outroot (not for 'verify' mode)",
    5153           -exitval => 3) unless
    52     defined $det_id    and
    53     defined $iter      and
    54     defined $exp_id    and
    55     defined $exp_tag   and
    56     defined $class_id  and
    57     defined $det_type  and
    58     defined $input_uri and
    59     defined $camera    and
    60     defined $mode      and
    61     defined $outroot   and
     54    defined $det_id     and
     55    defined $iter       and
     56    defined $ref_det_id and
     57    defined $ref_iter   and
     58    defined $exp_id     and
     59    defined $exp_tag    and
     60    defined $class_id   and
     61    defined $det_type   and
     62    defined $input_uri  and
     63    defined $camera     and
     64    defined $mode       and
     65    defined $outroot    and
    6266    (defined $detrend or lc($mode) eq 'verify');
    6367
     
    7882    &my_die("Unrecognised mode: $mode", $det_id, $iter, $exp_id, $class_id, $PS_EXIT_PROG_ERROR);
    7983}
     84
     85print "raw recipe: $recipe\n";
    8086$recipe = $ipprc->reduction($reduction, $recipe);
     87print "real recipe: $recipe\n";
    8188
    8289# values to extract from output metadata and the stats to calculate
     
    216223$command .= " -det_id $det_id";
    217224$command .= " -iteration $iter";
     225$command .= " -ref_det_id $ref_det_id";
     226$command .= " -ref_iter $ref_iter";
    218227$command .= " -exp_id $exp_id";
    219228$command .= " -class_id $class_id";
     
    252261        $command .= " -det_id $det_id";
    253262        $command .= " -iteration $iter";
     263        $command .= " -ref_det_id $ref_det_id";
     264        $command .= " -ref_iter $ref_iter";
    254265        $command .= " -exp_id $exp_id";
    255266        $command .= " -class_id $class_id";
  • branches/eam_branch_20080918/ippTasks/detrend.resid.pro

    r19465 r19609  
    153153
    154154    book setword detPendingResidImfile $pageName pantaskState RUN
    155     book getword detPendingResidImfile $pageName det_id    -var DET_ID   
    156     book getword detPendingResidImfile $pageName exp_id    -var EXP_ID 
    157     book getword detPendingResidImfile $pageName iteration -var ITERATION     
    158     book getword detPendingResidImfile $pageName det_type  -var DET_TYPE
    159     book getword detPendingResidImfile $pageName mode      -var MODE     
    160     book getword detPendingResidImfile $pageName exp_tag   -var EXP_TAG 
    161     book getword detPendingResidImfile $pageName class_id  -var CLASS_ID
    162     book getword detPendingResidImfile $pageName uri       -var URI     
    163     book getword detPendingResidImfile $pageName det_uri   -var DET_URI 
    164     book getword detPendingResidImfile $pageName camera    -var CAMERA   
    165     book getword detPendingResidImfile $pageName workdir   -var WORKDIR_TEMPLATE
    166     book getword detPendingResidImfile $pageName dbname    -var DBNAME
    167     book getword detPendingResidImfile $pageName reduction -var REDUCTION
     155    book getword detPendingResidImfile $pageName det_id     -var DET_ID   
     156    book getword detPendingResidImfile $pageName exp_id     -var EXP_ID 
     157    book getword detPendingResidImfile $pageName iteration  -var ITERATION     
     158    book getword detPendingResidImfile $pageName det_type   -var DET_TYPE
     159    book getword detPendingResidImfile $pageName mode       -var MODE     
     160    book getword detPendingResidImfile $pageName exp_tag    -var EXP_TAG 
     161    book getword detPendingResidImfile $pageName class_id   -var CLASS_ID
     162    book getword detPendingResidImfile $pageName uri        -var URI     
     163    book getword detPendingResidImfile $pageName det_uri    -var DET_URI 
     164    book getword detPendingResidImfile $pageName ref_det_id -var REF_DET_ID   
     165    book getword detPendingResidImfile $pageName ref_iter   -var REF_ITER
     166    book getword detPendingResidImfile $pageName camera     -var CAMERA   
     167    book getword detPendingResidImfile $pageName workdir    -var WORKDIR_TEMPLATE
     168    book getword detPendingResidImfile $pageName dbname     -var DBNAME
     169    book getword detPendingResidImfile $pageName reduction  -var REDUCTION
    168170
    169171    # specify choice of local or remote host based on camera and chip (class_id)
     
    179181    stderr $LOGDIR/detrend.resid.imfile.log
    180182
    181     $run = detrend_resid_imfile.pl --threads @MAX_THREADS@ --det_id $DET_ID --iteration $ITERATION --exp_id $EXP_ID --exp_tag $EXP_TAG --class_id $CLASS_ID --det_type $DET_TYPE --detrend $DET_URI --input_uri $URI --camera $CAMERA --mode $MODE --outroot $outroot --redirect-output --verbose
     183    $run = detrend_resid_imfile.pl --threads @MAX_THREADS@ --det_id $DET_ID --iteration $ITERATION --ref_det_id $REF_DET_ID --ref_iter $REF_ITER --exp_id $EXP_ID --exp_tag $EXP_TAG --class_id $CLASS_ID --det_type $DET_TYPE --detrend $DET_URI --input_uri $URI --camera $CAMERA --mode $MODE --outroot $outroot --redirect-output --verbose
    182184
    183185    if ("$REDUCTION" != "NULL")
  • branches/eam_branch_20080918/ippTools/share/dettool_childlessrun.sql

    r18561 r19609  
    55 FROM detRun
    66 LEFT JOIN detRun as foo
    7    ON foo.parent = detRun.det_id
     7   ON foo.ref_det_id = detRun.det_id
     8-- XXX do we need to restrict to foo.ref_iter = detRun.iteration ?   
    89 WHERE
    910   detRun.state = 'stop'
  • branches/eam_branch_20080918/ippTools/share/dettool_stop_completed_correct_runs.sql

    r15830 r19609  
    88    FROM detRun AS det1
    99    INNER JOIN detRun as det2
    10         ON det1.parent = det2.det_id
     10        ON det1.ref_det_run = det2.det_id
     11        -- do we need to restrict by iteration?  not clear this logic below is right or tested
    1112    JOIN detNormalizedImfile as imfile
    1213        ON det2.det_id = imfile.det_id
  • branches/eam_branch_20080918/ippTools/share/dettool_tocorrectimfile.sql

    r15828 r19609  
     1-- select imfiles from detRun 1 (the reference detRun) that match the desired correction in detRun 2
    12SELECT
    23    det1.*,
     
    1415    imfile.fault
    1516FROM detRun AS det1
    16 INNER JOIN detRun as det2
    17     ON det1.parent = det2.det_id
     17JOIN detRun as det2
     18    ON det1.ref_det_id = det2.det_id
    1819JOIN detNormalizedImfile as imfile
    19     ON det2.det_id = imfile.det_id
    20     AND det2.iteration = imfile.iteration
     20    ON det1.ref_det_id = imfile.det_id
     21    AND det1.ref_iter = imfile.iteration
    2122LEFT JOIN detRegisteredImfile
    2223    ON det1.det_id = detRegisteredImfile.det_id
  • branches/eam_branch_20080918/ippTools/share/dettool_toresidimfile.sql

    r18561 r19609  
    1414    detProcessedImfile.uri,
    1515    detNormalizedImfile.uri AS det_uri,
     16    detRun.det_id AS ref_det_id,
     17    detRun.iteration AS ref_iter,
    1618    rawExp.camera,
    1719    rawExp.exp_tag
     
    5658    rawImfile.class_id,
    5759    rawImfile.uri,
    58     'NULL' AS det_uri,
     60    detNormalizedImfile.uri AS det_uri,
     61    detRun.ref_det_id,
     62    detRun.ref_iter,
    5963    rawExp.camera,
    6064    rawExp.exp_tag
    6165FROM detRun
     66JOIN detRun AS detRunRef
     67  ON detRun.ref_det_id = detRunRef.det_id
     68JOIN detNormalizedImfile
     69  ON detNormalizedImfile.det_id = detRun.ref_det_id
     70 AND detNormalizedImfile.iteration = detRun.ref_iter
    6271JOIN detInputExp
    63     USING(det_id, iteration)
     72  ON detInputExp.det_id = detRun.det_id
     73 AND detInputExp.iteration = detRun.iteration
    6474JOIN rawExp
    6575    ON detInputExp.exp_id = rawExp.exp_id
     
    7484    detRun.state = 'run'
    7585    AND detRun.mode = 'verify'
    76     -- AND detNormalizedImfile.fault = 0
    77     -- AND detNormalizedExp.fault = 0
     86    AND detRunRef.state = 'stop'
     87    AND detNormalizedImfile.fault = 0
    7888    AND detResidImfile.det_id IS NULL
    7989    AND detResidImfile.iteration IS NULL
  • branches/eam_branch_20080918/ippTools/share/pxadmin_create_tables.sql

    r19558 r19609  
    444444    solang_max FLOAT,
    445445    label VARCHAR(64),
    446     parent INT,
     446    ref_det_id BIGINT,
     447    ref_iter INT,
     448    -- parent INT, :: dropping this
    447449    PRIMARY KEY(det_id),
    448450    KEY(det_id),
     
    452454    KEY(state),
    453455    KEY(label),
    454     KEY(parent),
     456    -- KEY(parent), :: dropping this
    455457    INDEX(det_id, iteration))
    456458ENGINE=innodb DEFAULT CHARSET=latin1;
     
    616618    det_id BIGINT,
    617619    iteration INT,
     620    ref_det_id BIGINT,
     621    ref_iter INT,
    618622    exp_id BIGINT,
    619623    class_id VARCHAR(64),
     
    645649    FOREIGN KEY (det_id, iteration, exp_id)
    646650    REFERENCES  detInputExp(det_id, iteration, exp_id),
    647     FOREIGN KEY (det_id, exp_id, class_id)
    648     REFERENCES  detProcessedImfile(det_id, exp_id, class_id),
    649     FOREIGN KEY (det_id, iteration)
     651    -- FOREIGN KEY (det_id, exp_id, class_id)
     652    -- REFERENCES  detProcessedImfile(det_id, exp_id, class_id),
     653    FOREIGN KEY (ref_det_id, ref_iter)
    650654    REFERENCES  detNormalizedExp(det_id, iteration)
    651655) ENGINE=innodb DEFAULT CHARSET=latin1;
  • branches/eam_branch_20080918/ippTools/src/dettool.c

    r19092 r19609  
    234234    // optional
    235235    PXOPT_LOOKUP_STR(filelevel, config->args, "-filelevel", false, false);
    236     PXOPT_LOOKUP_STR(mode, config->args, "-mode", false, false);
     236
    237237    // check mode
    238     if (mode && !isValidMode(config, mode)) {
    239         psError(PS_ERR_UNKNOWN, false, "invalud mode");
    240         return false;
    241     }
     238    PXOPT_LOOKUP_STR(mode, config->args, "-mode", true, false); // default ('master') is supplied
     239    if (!isValidMode(config, mode)) {
     240        psError(PS_ERR_UNKNOWN, false, "invalid mode");
     241        return false;
     242    }
     243
     244    // get -ref_det_id and -ref_iter : required for 'verify' mode / disallowed otherwise
     245    PXOPT_LOOKUP_S64(ref_det_id, config->args, "-ref_det_id", true, false);
     246    PXOPT_LOOKUP_S32(ref_iter, config->args, "-ref_iter", true, false);
     247    if (!strncmp(mode, "verify", 7) && ((ref_det_id == 0) || (ref_iter == -1))) {
     248        psError(PS_ERR_UNKNOWN, false, "verify mode requires both -ref_det_id and -ref_iter");
     249        return false;
     250    }
     251    if (strncmp(mode, "verify", 7) && ((ref_det_id != 0) || (ref_iter != -1))) {
     252        psError(PS_ERR_UNKNOWN, false, "master mode cannot have -ref_det_id or -ref_iter set");
     253        return false;
     254    }
     255       
    242256    PXOPT_LOOKUP_STR(camera, config->args, "-inst", false, false);
    243257    PXOPT_LOOKUP_STR(telescope, config->args, "-telescope", false, false);
     
    368382                 solang_max,
    369383                 label,
    370                  0       // parent
     384                 ref_det_id,
     385                 ref_iter
    371386        );
    372387    psS64 det_id = psDBLastInsertID(config->dbh);
     
    469484    PXOPT_LOOKUP_STR(camera, config->args, "-inst", true, false);
    470485
    471     // optional
    472     PXOPT_LOOKUP_STR(mode, config->args, "-mode", false, false);
    473486    // check mode
    474     if (mode && !isValidMode(config, mode)) {
     487    PXOPT_LOOKUP_STR(mode, config->args, "-mode", true, false); // default ('master') is supplied
     488    if (!isValidMode(config, mode)) {
    475489        psError(PS_ERR_UNKNOWN, false, "invalid mode");
    476490        return false;
    477491    }
     492
     493    // get -ref_det_id and -ref_iter : required for 'verify' mode / disallowed otherwise
     494    PXOPT_LOOKUP_S64(ref_det_id, config->args, "-ref_det_id", false, false);
     495    PXOPT_LOOKUP_S32(ref_iter, config->args, "-ref_iter", false, false);
     496    if (!strncmp(mode, "verify", 7) && ((ref_det_id == 0) || (ref_iter == -1))) {
     497        psError(PS_ERR_UNKNOWN, false, "verify mode requires both -ref_det_id and -ref_iter");
     498        return false;
     499    }
     500    if (strncmp(mode, "verify", 7) && ((ref_det_id != 0) || (ref_iter != -1))) {
     501        psError(PS_ERR_UNKNOWN, false, "master mode cannot have -ref_det_id or -ref_iter set");
     502        return false;
     503    }
     504
    478505    PXOPT_LOOKUP_STR(filelevel, config->args, "-filelevel", false, false);
    479506    PXOPT_LOOKUP_STR(telescope, config->args, "-telescope", false, false);
     
    623650                 solang_max,
    624651                 label,
    625                  0       // parent
     652                 ref_det_id,
     653                 ref_iter
    626654        );
    627655    psS64 det_id = psDBLastInsertID(config->dbh);
     
    692720{
    693721    PS_ASSERT_PTR_NON_NULL(config, false);
    694 
    695722   
     723    // XXX this mode is not well-tested: probably need to specify iteration here
     724    // XXX pass the supplied det_id and iteration as ref_det_id, or get from command line?
    696725    PXOPT_LOOKUP_S64(det_id, config->args, "-det_id", true, false); // required
    697726    PXOPT_LOOKUP_STR(det_type, config->args, "-set_det_type", false, false); // optional
     
    745774
    746775    // pull the detRun object out the result array
     776    // XXX need to assign or re-assign the ref_det_id and ref_iter values
    747777    detRunRow *detRun = psMemIncrRefCounter(detRuns->data[0]);
    748778
     
    15411571    PXOPT_LOOKUP_TIME(use_begin, config->args, "-use_begin", false, false);
    15421572    PXOPT_LOOKUP_TIME(use_end, config->args, "-use_end", false, false);
    1543     PXOPT_LOOKUP_S64(parent, config->args, "-parent", false, false);
     1573    PXOPT_LOOKUP_S64(ref_det_id, config->args, "-ref_det_id", false, false);
     1574    PXOPT_LOOKUP_S32(ref_iter, config->args, "-ref_iter", false, false);
    15441575    PXOPT_LOOKUP_STR(label, config->args, "-label", false, false);
    15451576    PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false);
     
    15781609                      solang_min,
    15791610                      solang_max,
    1580                       label,      // label
    1581                       parent
     1611                      label,
     1612                      ref_det_id,
     1613                      ref_iter
    15821614            )) {
    15831615        psError(PS_ERR_UNKNOWN, false, "database error");
     
    17511783
    17521784    // check that state is a valid string value
    1753     if (!(
    1754             (strncmp(mode, "master", 7) == 0)
    1755             || (strncmp(mode, "verify", 7) == 0)
    1756         )
    1757     ) {
    1758         psError(PS_ERR_UNKNOWN, false,
    1759                 "invalid detRun mode: %s", mode);
    1760         return false;
    1761     }
    1762 
    1763     return true;
     1785    if (!strncmp(mode, "master", 7)) return true;
     1786    if (!strncmp(mode, "verify", 7)) return true;
     1787
     1788    psError(PS_ERR_UNKNOWN, false, "invalid detRun mode: %s", mode);
     1789    return false;
    17641790}
    17651791
  • branches/eam_branch_20080918/ippTools/src/dettoolConfig.c

    r19092 r19609  
    7878    psMetadataAddStr(definebytagArgs, PS_LIST_TAIL, "-label",  0,            "define detrun label", NULL);
    7979    psMetadataAddBool(definebytagArgs, PS_LIST_TAIL, "-simple",  0,            "use the simple output format", false);
     80
     81    psMetadataAddS64(definebytagArgs, PS_LIST_TAIL, "-ref_det_id", 0,           "define reference detrend (verify mode only)", 0);
     82    psMetadataAddS32(definebytagArgs, PS_LIST_TAIL, "-ref_iter", 0,           "define reference detrend (verify mode only)", -1);
    8083
    8184    // -definebyquery
     
    129132    psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-random_subset",  0,            "use a random subset of elements", false);
    130133    psMetadataAddS32(definebyqueryArgs, PS_LIST_TAIL, "-random_limit",  0,            "use this number of random elements", 20);
     134    psMetadataAddS64(definebyqueryArgs, PS_LIST_TAIL, "-ref_det_id", 0,           "define reference detrend (verify mode only)", 0);
     135    psMetadataAddS32(definebyqueryArgs, PS_LIST_TAIL, "-ref_iter", 0,           "define reference detrend (verify mode only)", -1);
    131136
    132137    // -definebydetrun
     
    163168    // -makecorrection
    164169    psMetadata *makecorrectionArgs = psMetadataAlloc();
    165     psMetadataAddS64(makecorrectionArgs, PS_LIST_TAIL, "-det_id",  0,            "det ID to be corrected (required)", 0);
     170    psMetadataAddS64(makecorrectionArgs, PS_LIST_TAIL, "-det_id",  0,     "detRun det_id to be corrected (required)", 0);
     171    psMetadataAddS32(makecorrectionArgs, PS_LIST_TAIL, "-iteration",  0,  "detRun iteration to be corrected (required)", -1);;
    166172    psMetadataAddBool(makecorrectionArgs, PS_LIST_TAIL, "-simple", 0,            "use the simple output format", false);
    167173
     
    216222    psMetadata *inputArgs = psMetadataAlloc();
    217223    psMetadataAddS64(inputArgs, PS_LIST_TAIL, "-det_id", 0,            "search for detrend ID", 0);
    218     psMetadataAddS32(inputArgs, PS_LIST_TAIL, "-iteration",  0,            "define iteration number", 0);
     224    psMetadataAddS32(inputArgs, PS_LIST_TAIL, "-iteration",  0,            "search for iteration number (default 0)", 0);
    219225    psMetadataAddS64(inputArgs, PS_LIST_TAIL, "-exp_id",  0,            "search for exp ID", 0);
    220226    psMetadataAddBool(inputArgs, PS_LIST_TAIL, "-simple",  0,            "use the simple output format", false);
     
    591597
    592598    // -addresidimfile
     599    // XXX does a default value of 0 mean the entry is not instatiated? what about a supplied value of 0?
    593600    psMetadata *addresidimfileArgs = psMetadataAlloc();
    594601    psMetadataAddS64(addresidimfileArgs, PS_LIST_TAIL, "-det_id",  0,            "define detrend ID (required)", 0);
    595     psMetadataAddS32(addresidimfileArgs, PS_LIST_TAIL, "-iteration",  0,            "define iteration number", 0);
     602    psMetadataAddS32(addresidimfileArgs, PS_LIST_TAIL, "-iteration",  0,         "define iteration number", 0);
     603    psMetadataAddS64(addresidimfileArgs, PS_LIST_TAIL, "-ref_det_id",  0,        "define reference detrend ID (required)", 0);
     604    psMetadataAddS32(addresidimfileArgs, PS_LIST_TAIL, "-ref_iter",  0,          "define reference iteration number (required)", -1);
    596605    psMetadataAddS64(addresidimfileArgs, PS_LIST_TAIL, "-exp_id",  0,            "define detrend ID (required)", 0);
    597     psMetadataAddStr(addresidimfileArgs, PS_LIST_TAIL, "-class_id",  0,            "define class ID (required)", NULL);
    598     psMetadataAddS16(addresidimfileArgs, PS_LIST_TAIL, "-code",  0,            "set fault code", 0);
    599     psMetadataAddStr(addresidimfileArgs, PS_LIST_TAIL, "-uri",  0,            "define resid file URI", NULL);
    600     psMetadataAddStr(addresidimfileArgs, PS_LIST_TAIL, "-recip",  0,            "define recipe", NULL);
    601     psMetadataAddF64(addresidimfileArgs, PS_LIST_TAIL, "-bg",  0,            "define exposure background", NAN);
     606    psMetadataAddStr(addresidimfileArgs, PS_LIST_TAIL, "-class_id",  0,          "define class ID (required)", NULL);
     607    psMetadataAddS16(addresidimfileArgs, PS_LIST_TAIL, "-code",  0,              "set fault code", 0);
     608    psMetadataAddStr(addresidimfileArgs, PS_LIST_TAIL, "-uri",  0,               "define resid file URI", NULL);
     609    psMetadataAddStr(addresidimfileArgs, PS_LIST_TAIL, "-recip",  0,             "define recipe", NULL);
     610    psMetadataAddF64(addresidimfileArgs, PS_LIST_TAIL, "-bg",  0,                "define exposure background", NAN);
    602611    psMetadataAddF64(addresidimfileArgs, PS_LIST_TAIL, "-bg_stdev",  0,            "define exposure background stdev", NAN);
    603612    psMetadataAddF64(addresidimfileArgs, PS_LIST_TAIL, "-bg_mean_stdev",  0,            "define exposure background mean stdev", NAN);
     
    815824    psMetadataAddTime(register_detrendArgs, PS_LIST_TAIL, "-use_begin",  0,            "start of detrend run applicable period", NULL);
    816825    psMetadataAddTime(register_detrendArgs, PS_LIST_TAIL, "-use_end",  0,            "end of detrend run applicable period", NULL);
    817     psMetadataAddS64(register_detrendArgs, PS_LIST_TAIL, "-parent",  0,            "define parent det_id", 0);
     826    psMetadataAddS64(register_detrendArgs, PS_LIST_TAIL, "-ref_det_id",  0,            "define reference det_id", 0);
     827    psMetadataAddS32(register_detrendArgs, PS_LIST_TAIL, "-ref_iter",  0,            "define reference iteration", -1);
    818828    psMetadataAddStr(register_detrendArgs, PS_LIST_TAIL, "-label",  0,            "define detrun label", NULL);
    819829    psMetadataAddBool(register_detrendArgs, PS_LIST_TAIL, "-simple",  0,            "use the simple output format", false);
  • branches/eam_branch_20080918/ippTools/src/dettool_correction.c

    r19092 r19609  
    2424    PS_ASSERT_PTR_NON_NULL(config, false);
    2525
    26     PXOPT_LOOKUP_S64(det_id, config->args, "-det_id", true, false); // required
     26    PXOPT_LOOKUP_S64(ref_det_id, config->args, "-det_id", true, false); // required
     27    PXOPT_LOOKUP_S32(ref_iter, config->args, "-iteration", true, false); // required
    2728    PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false); // optional
    2829
    2930    // build the needed where
    3031    psMetadata *where = psMetadataAlloc();
    31     psMetadataAddS64(where, PS_LIST_TAIL, "det_id", 0, "==", det_id);
     32    psMetadataAddS64(where, PS_LIST_TAIL, "det_id", 0, "==", ref_det_id);
     33    psMetadataAddS32(where, PS_LIST_TAIL, "iteration", 0, "==", ref_iter);
    3234    psArray *runs = detRunSelectRowObjects(config->dbh, where, 1);
    3335    psFree (where);
     
    7476         detRun->solang_max,
    7577         detRun->label,
    76          detRun->det_id // parent
     78         detRun->det_id, // ref_det_id
     79         detRun->iteration // ref_iter
    7780    );
    7881
  • branches/eam_branch_20080918/ippTools/src/dettool_residimfile.c

    r19092 r19609  
    7878    PXOPT_LOOKUP_S64(det_id, config->args, "-det_id", true, false); // required
    7979    PXOPT_LOOKUP_S32(iteration, config->args, "-iteration", false, false);
     80
     81    PXOPT_LOOKUP_S64(ref_det_id, config->args, "-ref_det_id", true, false); // required
     82    PXOPT_LOOKUP_S32(ref_iter, config->args, "-ref_iter", true, false);
     83
    8084    PXOPT_LOOKUP_S64(exp_id, config->args, "-exp_id", true, false); // required
    8185    PXOPT_LOOKUP_STR(class_id, config->args, "-class_id", true, false); // required
     
    106110            det_id,
    107111            iteration,
     112            ref_det_id,
     113            ref_iter,
    108114            exp_id,
    109115            class_id,
Note: See TracChangeset for help on using the changeset viewer.