IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Changeset 29982


Ignore:
Timestamp:
Dec 8, 2010, 7:21:36 PM (15 years ago)
Author:
watersc1
Message:

rtbt works in test case up through auto-chip-queue

Location:
branches/czw_branch/20101203
Files:
16 edited

Legend:

Unmodified
Added
Removed
  • branches/czw_branch/20101203/ippScripts/Build.PL

    r29530 r29982  
    107107        scripts/lossy_compress_imfile.pl
    108108        scripts/ipp_apply_burntool.pl
     109        scripts/ipp_apply_burntool_single.pl
    109110        scripts/make_burntool_pcontrol.pl
    110111        scripts/bundle_detrends.pl
  • branches/czw_branch/20101203/ippScripts/MANIFEST

    r28375 r29982  
    3939scripts/lossy_compress_imfile.pl
    4040scripts/ipp_apply_burntool.pl
     41scripts/ipp_apply_burntool_single.pl
    4142scripts/make_burntool_pcontrol.pl
    4243scripts/bundle_detrends.pl
  • branches/czw_branch/20101203/ippScripts/scripts/ipp_apply_burntool_single.pl

    r29909 r29982  
    150150my $command = "$regtool -dbname $dbname -updateprocessedimfile -exp_id $exp_id -class_id $class_id -burntool_state $outState";
    151151if ($imfile_state ne 'full') {
    152     $command .= " -state full ";
     152    $command .= " -set_state full ";
    153153}
    154154$status = vsystem ($command, $REALRUN);
  • branches/czw_branch/20101203/ippScripts/scripts/register_exp.pl

    r27891 r29982  
    3030my $regtool = can_run('regtool') or (warn "can't find regtool" and $missing_tools = 1);
    3131my $ppStatsFromMetadata = can_run('ppStatsFromMetadata') or (warn "Can't find ppStatsFromMetadata" and $missing_tools = 1);
     32my $ppConfigDump = can_run('ppConfigDump') or (warn "Can't find ppConfigDump" and $missing_tools = 1);
    3233if ($missing_tools) {
    3334    warn ("Can't find required tools");
     
    118119if (uc($exp_type) eq "NULL") { &my_die ("exp_type  not found", $exp_id, $PS_EXIT_CONFIG_ERROR); }
    119120
     121my ($data_group,$dist_group,$chip_workdir,$reduction);
     122($label,$data_group,$dist_group,$end_stage,
     123 $tess_id,$chip_workdir,$reduction) = advance_decisions(&value_for_flag($cmdflags,"-dateobs"),
     124                                                        &value_for_flag($cmdflags,"-exp_type"),
     125                                                        &value_for_flag($cmdflags,"-obs_mode"),
     126                                                        &value_for_flag($cmdflags,"-object"),
     127                                                        &value_for_flag($cmdflags,"-comment"),
     128                                                        $dbname);
    120129my $command = "$regtool -addprocessedexp";
    121130$command .= " -exp_id $exp_id";
     
    127136$command .= " -end_stage $end_stage" if defined $end_stage;
    128137$command .= " -tess_id   $tess_id"   if defined $tess_id;
     138$command .= " -data_group $data_group" if defined $data_group;
     139$command .= " -dist_group $dist_group" if defined $dist_group;
     140$command .= " -chip_workdir $chip_workdir" if defined $chip_workdir;
     141$command .= " -reduction  $reduction"  if defined $reduction;
    129142$command .= " -state full";
    130143$command .= " $cmdflags";
     
    156169
    157170### Pau.
     171sub advance_decisions {
     172    my $dateobs = shift;
     173    my $exptype = shift;
     174    my $obsmode = shift;
     175    my $object  = shift;
     176    my $comment = shift;
     177    my $dbname  = shift;
     178
     179    # The strings come pre-quoted.
     180    $dateobs =~ s/\'//g;
     181    $exptype =~ s/\'//g;
     182    $obsmode =~ s/\'//g;
     183    $object =~ s/\'//g;
     184    $comment =~ s/\'//g;
     185
     186    print "Inside decision engine\n";
     187    my ($label,$data_group,$dist_group,$end_stage,$tess_id,$chip_workdir,$reduction);
     188    my $target;
     189
     190    if ($exptype ne 'OBJECT') {
     191        print "Aborting because exptype doesn't claim to be OBJECT: $exptype\n";
     192        return(undef,undef,undef,"reg",undef,undef,undef);
     193    }
     194    if ($obsmode eq 'ENGINEERING') {
     195        print "Aborting because we don't queue engineering data to chip\n";
     196        return(undef,undef,undef,"reg",undef,undef,undef);
     197    }
     198    # Grab the configuration data.
     199    my %nightlyscience_config = ();
     200    my $conf_cmd = "$ppConfigDump -dump-recipe NIGHTLY_SCIENCE -";
     201    my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
     202        run(command => $conf_cmd, verbose => $verbose);
     203    unless ($success) {
     204        $error_code = (($error_code >> 8) or $PS_EXIT_PROG_ERROR);
     205        &my_die("Unable to perform ppConfigDump: $error_code", $date, $PS_EXIT_SYS_ERROR);
     206    }
     207    print "data loaded\n";
     208    my $mdcParser = PS::IPP::Metadata::Config->new;
     209    my $metadata = $mdcParser->parse(join "", @$stdout_buf);
     210    foreach my $entry (@{ $metadata }) {
     211        if (${ $entry }{name} eq 'TARGETS') {
     212            my @target_data = @{ ${ $entry }{value} };
     213            my $this_target = '';
     214            foreach my $tentry (@target_data) {
     215                if (${ $tentry }{name} eq 'NAME') {
     216                    $this_target = ${ $tentry }{value};
     217                    $nightlyscience_config{$this_target}{DISTRIBUTION} = $this_target;
     218                }
     219                elsif (${ $tentry }{name} eq 'DISTRIBUTION') {
     220                    $nightlyscience_config{$this_target}{DISTRIBUTION} = ${ $tentry }{value};
     221                }
     222                elsif (${ $tentry }{name} eq 'TESS') {
     223                    $nightlyscience_config{$this_target}{TESS_ID} = ${ $tentry }{value};
     224                }
     225                elsif (${ $tentry }{name} eq 'OBSMODE') {
     226                    $nightlyscience_config{$this_target}{OBSMODE} = ${ $tentry }{value};
     227                    $nightlyscience_config{$this_target}{OBSMODE} =~ s/%/\.\*/g;
     228                }
     229                elsif (${ $tentry }{name} eq 'OBJECT') {
     230                    $nightlyscience_config{$this_target}{OBJECT} = ${ $tentry }{value};
     231                    $nightlyscience_config{$this_target}{OBJECT} =~ s/%/\.\*/g;
     232                }
     233                elsif (${ $tentry }{name} eq 'COMMENT') {
     234                    $nightlyscience_config{$this_target}{COMMENT} = ${ $tentry }{value};
     235                    $nightlyscience_config{$this_target}{COMMENT} =~ s/%/\.\*/g;
     236                }
     237                elsif (${ $tentry }{name} eq 'STACKABLE') {
     238                    $nightlyscience_config{$this_target}{STACKABLE} = ${ $tentry }{value};
     239                }
     240                elsif (${ $tentry }{name} eq 'EXTRA_PROCESSING') {
     241                    $nightlyscience_config{$this_target}{EXTRA_PROCESSING} = ${ $tentry }{value};
     242                }
     243                elsif (${ $tentry }{name} eq 'REDUCTION') {
     244                    $nightlyscience_config{$this_target}{REDUCTION} = ${ $tentry }{value};
     245                }
     246            }
     247        }
     248    }
     249    print "data parsed\n";
     250    my $found_target;
     251    foreach $target (keys %nightlyscience_config) {
     252#       print "TEST: $target ($obsmode $object $comment) ($nightlyscience_config{$target}{OBSMODE} $nightlyscience_config{$target}{OBJECT} $nightlyscience_config{$target}{COMMENT}\t";
     253        my $match = 0;
     254        my $possible = 0;
     255        if (exists($nightlyscience_config{$target}{OBSMODE})) {
     256            $possible++;
     257            if ($obsmode =~ /$nightlyscience_config{$target}{OBSMODE}/) {
     258                $match++;
     259            }
     260        }
     261        if (exists($nightlyscience_config{$target}{OBJECT})) {
     262            $possible++;
     263            if ($object =~ /$nightlyscience_config{$target}{OBJECT}/) {
     264                $match++;
     265            }
     266        }
     267        if (exists($nightlyscience_config{$target}{COMMENT})) {
     268            $possible++;
     269            if ($comment =~ /$nightlyscience_config{$target}{COMMENT}/) {
     270                $match++;
     271            }
     272        }
     273        print "$possible $match\n";
     274        if (($possible > 0)&&($match == $possible)) {
     275            $found_target = $target;
     276            last;
     277        }
     278    }
     279    unless ($found_target) {
     280        print "No acceptible target found.\n";
     281        return(undef,undef,undef,"reg",undef,undef,undef);
     282    }
     283    print "Found this target: $found_target\n";
     284    print "$dateobs\n";
     285    $target = $found_target;
     286   
     287    my $date  = $dateobs;
     288    $date =~ s/T.*//;
     289    my $workdir_date = $date;
     290    $date =~ s/-//g;
     291    $workdir_date =~ s%-%/%g;
     292    print "$dateobs $date $workdir_date\n";   
     293    $label = "${target}.nightlyscience";
     294    $data_group = "${target}.${date}";
     295    $dist_group = $nightlyscience_config{$target}{DISTRIBUTION};
     296    $end_stage  = 'warp';
     297    $tess_id    = $nightlyscience_config{$target}{TESS_ID};
     298    $chip_workdir = "neb://\@HOST\@.0/${dbname}/TESTING/${target}.nt/${workdir_date}/";
     299    if (exists($nightlyscience_config{$target}{REDUCTION})) {
     300        $reduction  = $nightlyscience_config{$target}{REDUCTION};
     301    }
     302    else {
     303        undef($reduction);
     304    }
     305
     306   
     307    return ($label,$data_group,$dist_group,$end_stage,$tess_id,$chip_workdir,$reduction);
     308}
     309           
     310           
     311           
    158312
    159313sub cache_run
  • branches/czw_branch/20101203/ippScripts/scripts/register_imfile.pl

    r29909 r29982  
    1919use File::Basename qw( basename);
    2020use IPC::Run;
    21 use IPC::Cmd 0.36 qw( can_run );
     21use IPC::Cmd 0.36 qw( can_run run );
    2222use PS::IPP::Config 1.01 qw( :standard );
     23use PS::IPP::Metadata::List qw( parse_md_list );
    2324use PS::IPP::Metadata::Config;
    2425use Math::Trig;
     
    179180$command .= " $cmdflags";
    180181
     182print "$command\n";
    181183# determine solar-system parameters
    182184my $longitude = &value_for_flag($cmdflags, 0.0, "-longitude");
     
    235237
    236238{
     239    my $mdcParser  = PS::IPP::Metadata::Config->new;
     240
     241    my $class_id   = &value_for_flag($cmdflags, 0.0, "-class_id");
     242    my $check_date       = &value_for_flag($cmdflags, 0.0, "-dateobs");
     243    $check_date =~ s/T.*$//;
     244    my $exp_name   = $tmp_exp_name;
     245   
     246
    237247    my $bt_check_command = "$regtool -checkburntoolimfile ";
    238     $bt_check_command = " -class_id $class_id ";
    239     $bt_check_command = " -date $date ";
    240     $bt_check_command = " -exp_name $exp_name ";
    241     $bt_check_command = " -dbname $dbname" if defined $dbname;
    242 
    243     ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
     248    $bt_check_command .= " -class_id $class_id ";
     249    $bt_check_command .= " -date $check_date ";
     250    $bt_check_command .= " -valid_burntool $burntoolStateGood ";
     251    $bt_check_command .= " -exp_name $exp_name ";
     252    $bt_check_command .= " -dbname $dbname" if defined $dbname;
     253
     254    my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
    244255        run ( command => $bt_check_command, verbose => $verbose);
    245256    unless ($success) {
     
    270281   
    271282    my $regtool_update = "$regtool -updateprocessedimfile ";
    272     $regtool_update .= "-dbname $dbname" if defined $dbname;
     283    $regtool_update .= "-dbname $dbname " if defined $dbname;
    273284    $regtool_update .= "-exp_id $exp_id -class_id $class_id ";
    274285
    275286    my $burntool_data = pop(@{ $exposures });
    276287    if ($burntool_data->{burnable} == 0) {
    277         $regtool_update .= " -burntool_state 0 -data_state pending_burntool ";
     288        $regtool_update .= " -burntool_state 0 -set_state pending_burntool ";
    278289    }
    279290    else {
    280291        my $apply_command = "$ippApplyBurntoolSingle --dbname $dbname ";
    281292        $apply_command .= " --class_id $class_id --exp_id $exp_id ";
    282         $apply_command .= " --this_uri $burntool_data->{this_uri} ";
     293        $apply_command .= " --this_uri $burntool_data->{uri} ";
    283294        $apply_command .= " --previous_uri $burntool_data->{previous_uri} " if defined $burntool_data->{previous_uri};
    284295        $apply_command .= " --imfile_state $burntool_data->{imfile_state} ";
    285296        $apply_command .= " --verbose " if $verbose;
     297        print "$apply_command\n";
    286298        my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
    287299            IPC::Cmd::run(command => $apply_command, verbose => $verbose);
  • branches/czw_branch/20101203/ippTasks/Makefile.am

    r29614 r29982  
    4747        site.manoa.pro \
    4848        site.mhpcc.pro \
     49        site.mhpcc_testing.pro \
    4950        surveys.mhpcc.config \
    5051        simtest.pro \
  • branches/czw_branch/20101203/ippTasks/register.pro

    r29908 r29982  
    6464  end
    6565end
     66
     67$valid_burntool_value = 14
    6668
    6769macro replace.survey.values
     
    144146# these variables will cycle through the known database names
    145147$regPendingImfile_DB = 0
     148$regPendingBurntoolImfile_DB = 0
    146149$regPendingExp_DB = 0
    147150
     
    461464  task.exec
    462465    $run = regtool -pendingburntoolimfile
     466    $today = `date -u +%Y-%m-%d`
     467# debugging purposes
     468    $today = "2010-12-06"
     469    $run = $run -date $today -valid_burntool $valid_burntool_value
    463470    if ($DB:n == 0)
    464471      option DEFAULT
     
    471478    end
    472479
    473     $today = `date +%Y-%m-%d`
    474     $run = $run -date $today -valid_burntool $valid_burntool_value
     480    echo $run
    475481    add_poll_args run
    476482    command $run
  • branches/czw_branch/20101203/ippTools/share/chiptool_find_rawexp.sql

    r23917 r29982  
    11-- this query is used to find potental rawExps to be queued for chiptool
    22-- processeing
    3 SELECT
     3SELECT DISTINCT
    44    rawExp.*,
    55    newExp.label
    66FROM rawExp
    77JOIN newExp using (exp_id)
     8LEFT JOIN chipRun USING (exp_id)
    89WHERE
    910    rawExp.fault = 0
  • branches/czw_branch/20101203/ippTools/share/pxadmin_create_tables.sql

    r29965 r29982  
    99    uri VARCHAR(255),
    1010    epoch TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
     11    use_compress SMALLINT,
    1112    PRIMARY KEY(camera, telescope)
    1213) ENGINE=innodb DEFAULT CHARSET=latin1;
  • branches/czw_branch/20101203/ippTools/share/regtool_pendingburntoolimfile.sql

    r29908 r29982  
    2525            LEFT JOIN newImfile USING(exp_id)
    2626            LEFT JOIN rawExp USING(exp_id, exp_name)
    27             LEFT JOIN rawImfile ON (rawImfile.exp_name = rawExp.exp_name AND rawImfile.tmp_class_id = newImfile.tmp_class_id)
     27            LEFT JOIN rawImfile ON (rawImfile.exp_name = newExp.tmp_exp_name AND rawImfile.tmp_class_id = newImfile.tmp_class_id)
    2828       WHERE
    2929             summitExp.dateobs >= '@DATE@T00:00:00'
  • branches/czw_branch/20101203/ippTools/share/regtool_pendingexp.sql

    r20759 r29982  
    3939        newExp.state = 'run'
    4040        AND rawExp.exp_id IS NULL
     41        AND rawImfile.data_state = 'full'
    4142-- where hook %s
    4243    GROUP BY
  • branches/czw_branch/20101203/ippTools/src/chiptool.c

    r29902 r29982  
    271271
    272272    // default
     273    PXOPT_LOOKUP_BOOL(unique, config->args, "-unique", false);
    273274    PXOPT_LOOKUP_BOOL(pretend, config->args, "-pretend", false);
    274275    PXOPT_LOOKUP_BOOL(simple, config->args, "-simple", false);
    275 
     276   
    276277    // find the exp_id of all the exposures that we want to queue up.
    277278    psString query = pxDataGet("chiptool_find_rawexp.sql");
     
    288289    psFree(where);
    289290
     291    if (unique) {
     292      psStringAppend(&query, "AND chip_id IS NULL");
     293    }
     294   
    290295    if (!p_psDBRunQuery(config->dbh, query)) {
    291296        psError(PS_ERR_UNKNOWN, false, "database error");
  • branches/czw_branch/20101203/ippTools/src/chiptoolConfig.c

    r29902 r29982  
    6161    psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_dist_group",  0,      "define distribution group", NULL);
    6262    psMetadataAddStr(definebyqueryArgs, PS_LIST_TAIL, "-set_note",  0,           "define note", NULL);
     63    psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-unique",   0,           "only queue exposures that have no previous chipRun", false);
    6364    psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-pretend",  0,            "do not actually modify the database", false);
    6465    psMetadataAddBool(definebyqueryArgs, PS_LIST_TAIL, "-simple",  0,            "use the simple output format", false);
  • branches/czw_branch/20101203/ippTools/src/pztool.c

    r27053 r29982  
    112112    PXOPT_LOOKUP_STR(telescope, config->args, "-telescope", true, false);
    113113    PXOPT_LOOKUP_STR(uri, config->args, "-uri", true, false);
    114 
     114   
    115115    if (!pzDataStoreInsert(config->dbh,
    116116            camera,
  • branches/czw_branch/20101203/ippTools/src/regtool.c

    r29965 r29982  
    331331
    332332  psString previous_uri = NULL;
     333  psString this_uri = NULL;
    333334  bool ok_to_burn = true;
    334335  bool already_burned = true;
     
    340341    psMetadata *row = output->data[i];
    341342
    342     // Use tmp_class_id because class_id may not be populated for all imfiles
     343    // Add the information about this row and the previous, if it exists.
     344    // Write the class_id stuff for debugging.
    343345    this_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id"));
    344346    psStringSubstitute(&this_class_id,"XY","ota");
    345     // Determine if we've crossed a class_id boundary.
     347    psMetadataAddStr(row,PS_LIST_TAIL,"this_class_id",PS_META_REPLACE,"",this_class_id);
     348    if (previous_class_id) {
     349      psMetadataAddStr(row,PS_LIST_TAIL,"previous_class_id",PS_META_REPLACE,"",previous_class_id);
     350    }
     351   
     352    // Determine if we've crossed a class_id boundary, as this resets the bits.
    346353    if (previous_class_id) {
    347354      if (strcmp(this_class_id,previous_class_id) != 0) {
     
    352359    }
    353360
    354     // If the state of this imfile is not "pending_burntool" then skip it, because
    355     if (!ignore_state) {
    356       psString imfile_state = psMetadataLookupStr(NULL,row,"imfile_state");
    357 
    358       if (!imfile_state) {
    359         continue;
    360       }
    361       if (strcmp("pending_burntool",imfile_state) != 0) {
    362         continue;
    363       }
    364     }
    365    
     361    // Write the URIs as well.
     362    this_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Duplicate, but helpful for my debugging.
     363    psMetadataAddStr(row,PS_LIST_TAIL,"this_uri",PS_META_REPLACE,"",this_uri);
     364    if (previous_uri) {
     365      psMetadataAddStr(row,PS_LIST_TAIL,"previous_uri",PS_META_REPLACE,"",previous_uri);
     366    }
     367
     368    // Check the two status variables
    366369    // Convert bits of the SQL query into booleans describing the data state
    367370    if ((psMetadataLookupS32(NULL,row,"is_downloaded") != 1)||
     
    381384    psMetadataAddBool(row,PS_LIST_TAIL,"already_burned",PS_META_REPLACE,"",already_burned);
    382385
    383     // We'll need to return the previous uri so we know where the input table is:
    384     if (previous_uri) {
    385       psMetadataAddStr(row,PS_LIST_TAIL,"previous_uri",PS_META_REPLACE,"",previous_uri);
    386       psFree(previous_uri);
    387     }
    388     previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri"));
    389 
    390     // Write the class_id stuff at the end for debugging.
    391     psMetadataAddStr(row,PS_LIST_TAIL,"this_class_id",PS_META_REPLACE,"",this_class_id);
    392     if (previous_class_id) {
    393       psMetadataAddStr(row,PS_LIST_TAIL,"previous_class_id",PS_META_REPLACE,"",previous_class_id);
    394       psFree(previous_class_id);
    395     }
    396     // Use tmp_class_id because class_id may not be populated for all imfiles
    397     previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id"));
    398     psStringSubstitute(&previous_class_id,"XY","ota");
     386    // Check the uri for this exposure
     387    if (!this_uri) {
     388        ok_to_burn = false;
     389        already_burned = false;
     390
     391        // Save this round for next round.
     392        psFree(previous_class_id);
     393        psFree(previous_uri);
     394        previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id"));
     395        psStringSubstitute(&previous_class_id,"XY","ota");
     396        previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round.       
     397        continue;
     398    }     
     399
     400    //    printf("STATUS: %s %s %s %s (%d %d)\n",this_uri,previous_uri,this_class_id,previous_class_id,ok_to_burn,already_burned);
     401
     402    // If the state of this imfile is not "pending_burntool" then we can't burn it.
     403    if (!ignore_state) {
     404      psString imfile_state = psMetadataLookupStr(NULL,row,"imfile_state");
     405
     406      if (!imfile_state) { // imfile state is NULL, so we probably aren't registered.
     407        ok_to_burn = false;
     408
     409        // Save this round for next round.
     410        psFree(previous_class_id);
     411        psFree(previous_uri);
     412        previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id"));
     413        psStringSubstitute(&previous_class_id,"XY","ota");
     414        previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round.       
     415        continue;
     416      }
     417      if (strcmp("pending_burntool",imfile_state) != 0) { // Probably the state is full, do not twiddle states 
     418        // Save this round for next round.
     419        psFree(previous_class_id);
     420        psFree(previous_uri);
     421        previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id"));
     422        psStringSubstitute(&previous_class_id,"XY","ota");
     423        previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round.       
     424        continue;
     425      }
     426    }
     427   
    399428    // Determine if we've already suggested an entry for this ota, and if not, copy this
    400429    // suggestion into our output result list.
    401430    if (!ok_to_burn || already_burned) {
     431      // Save this round for next round.
     432      psFree(previous_class_id);
     433      psFree(previous_uri);
     434      previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id"));
     435      psStringSubstitute(&previous_class_id,"XY","ota");
     436      previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round.       
    402437      continue;
    403438    }
    404    
     439    // If we're here, then we think we could potentially burntool this file.
    405440    psArrayAdd(results,results->n,row);
    406     // If we're here, then we think we could potentially burntool this file.
    407 
     441
     442    // Save this round for next round.
     443    psFree(previous_class_id);
     444    psFree(previous_uri);
     445    previous_class_id = psStringCopy(psMetadataLookupStr(NULL,row,"tmp_class_id"));
     446    psStringSubstitute(&previous_class_id,"XY","ota");
     447    previous_uri = psStringCopy(psMetadataLookupStr(NULL,row,"uri")); // Save for next round.         
    408448  }
    409449 
     
    499539    PXOPT_LOOKUP_S32(bytes, config->args,  "-bytes", false, false);
    500540    PXOPT_LOOKUP_STR(md5sum, config->args, "-md5sum", false, false);
    501     PXOPT_LOOKUP_Bool(video_cells, config->args, "-video_cells", false, false);
     541    PXOPT_LOOKUP_BOOL(video_cells, config->args, "-video_cells", false);
    502542   
    503543    PXOPT_LOOKUP_S16(fault, config->args, "-fault", false, false);
     
    10601100    PXOPT_LOOKUP_F32(moon_phase, config->args, "-moon_phase", false, false);
    10611101    PXOPT_LOOKUP_STR(label,  config->args, "-label", false, false);
     1102    PXOPT_LOOKUP_STR(data_group,  config->args, "-data_group", false, false);
     1103    PXOPT_LOOKUP_STR(dist_group,  config->args, "-dist_group", false, false);
     1104    PXOPT_LOOKUP_STR(chip_workdir,config->args, "-chip_workdir", false, false);
    10621105    PXOPT_LOOKUP_STR(hostname, config->args, "-hostname", false, false);
    10631106
     
    12591302    // else continue on...
    12601303
    1261 
     1304    chip_workdir = chip_workdir ? chip_workdir : workdir;
    12621305    // insert an entry into the chipPendingExp table
    12631306    // this can only be run as the newExp's state has been set to stop
    12641307    if (!pxchipQueueByExpTag(config,
    12651308                exp_id,
    1266                 workdir,
     1309                             chip_workdir,
    12671310                label,
    1268                 NULL,       // data_group
    1269                 NULL,       // dist_group
     1311                             data_group,
     1312                             dist_group,
    12701313                reduction,
    12711314                NULL,       // expgroup
  • branches/czw_branch/20101203/ippTools/src/regtoolConfig.c

    r29965 r29982  
    268268    ADD_OPT(F32,  addprocessedexpArgs, "-moon_phase",       "define moon phase (0.0 = new)",   NAN);
    269269    ADD_OPT(Str,  addprocessedexpArgs, "-label",            "define label for chip stage (non-detrend data only)", NULL);
     270    ADD_OPT(Str,  addprocessedexpArgs, "-data_group",       "define data_group for chip stage (non-detrend data only)", NULL);
     271    ADD_OPT(Str,  addprocessedexpArgs, "-dist_group",       "define dist_group for chip stage (non-detrend data only)", NULL);
     272    ADD_OPT(Str,  addprocessedexpArgs, "-chip_workdir",     "define workdir for chip stage (non-detrend data only)", NULL);
    270273    ADD_OPT(Str,  addprocessedexpArgs, "-hostname",         "define host name", NULL);
    271274    ADD_OPT(S16,  addprocessedexpArgs, "-fault",             "set fault code", 0);
Note: See TracChangeset for help on using the changeset viewer.