IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
Oct 21, 2010, 2:45:13 PM (16 years ago)
Author:
eugene
Message:

merge changes from trunk

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/eam_branches/ipp-20100823/pstamp/scripts/detect_query_read

    r28808 r29515  
    3636
    3737my $regtool = can_run('regtool') or (die "Can't find regtool");
    38 my $camtool = can_run('camtool') or (die "Can't find regtool");
     38my $camtool = can_run('camtool') or (die "Can't find camtool");
     39my $difftool = can_run('difftool') or (die "Can't find difftool");
    3940
    4041
     
    164165    }
    165166    elsif ($status == 219) {
    166         @{ $colData{$col->{name}} } = map { "Not Set" } (0 .. $numRows - 1);
     167        @{ $colData{$col->{name}} } = map { "Not_Set" } (0 .. $numRows - 1);
    167168        $status = 0;
    168169    }
     
    173174# Simple stuff first.
    174175    my %known_filters = ();
    175     if ($colData{STAGE}[$i] eq "Not Set") {
     176    if ($colData{STAGE}[$i] eq "Not_Set") {
    176177        $colData{STAGE}[$i] = 'diff';
    177178    }
    178     if ($colData{OBSCODE}[$i] eq "Not Set") {
     179    if ($colData{OBSCODE}[$i] eq "Not_Set") {
    179180        $colData{OBSCODE}[$i] = 566;
    180181    }
    181182# Define filter and MJD from FPA_ID
    182     if (($colData{FILTER}[$i] eq "Not Set")&&($colData{FPA_ID}[$i] ne "Not Set")) {
     183    if (($colData{FILTER}[$i] eq "Not_Set")&&($colData{FPA_ID}[$i] ne "Not_Set")) {
    183184        if (exists($known_filters{$colData{FPA_ID}[$i]})) {
    184185            $colData{FILTER}[$i] = $known_filters{$colData{FPA_ID}[$i]};
     
    210211        }
    211212    }
    212     if (($colData{'MJD-OBS'}[$i] eq "Not Set")&&($colData{FPA_ID}[$i] ne "Not Set")) {
     213    # Calculate a MJD
     214    if (($colData{'MJD-OBS'}[$i] eq "Not_Set")&&($colData{FPA_ID}[$i] ne "Not_Set")) {
    213215        # HACK!
    214216        my $mjd = $colData{FPA_ID}[$i];
     
    217219        $colData{'MJD-OBS'}[$i] = $mjd;
    218220    }
    219     if (($colData{FPA_ID}[$i] eq "Not Set")&&(($colData{'FILTER'}[$i] ne "Not Set")&&
    220                                               ($colData{'MJD-OBS'}[$i] ne "Not Set"))) {
     221    # Calculate an exp_id
     222    if (($colData{FPA_ID}[$i] eq "Not_Set")&&(($colData{'FILTER'}[$i] ne "Not_Set")&&
     223                                              ($colData{'MJD-OBS'}[$i] ne "Not_Set"))) {
    221224        my $dateobs_begin = mjd_to_dateobs($colData{'MJD-OBS'}[$i]);
    222225        my $dateobs_end = mjd_to_dateobs($colData{'MJD-OBS'}[$i] + 1);
     
    224227        my $dec = $colData{'DEC1_DEG'}[$i];
    225228        my $filter = $colData{'FILTER'}[$i] . ".00000";
    226         my $cmd = "$camtool -processedexp -dbname $dbname -filter $filter ";
    227         $cmd .= " -dateobs_begin $dateobs_begin -dateobs_end $dateobs_end ";
    228         $cmd .= " -ra $ra -decl $dec -radius 1.5 -limit 1";
     229        my $cmd;
     230        if ($colData{STAGE}[$i] eq 'SSdiff') {
     231            $cmd = "$difftool -listrun -dbname $dbname -filter $filter ";
     232            $cmd .= " -dateobs_begin $dateobs_begin -dateobs_end $dateobs_end ";
     233            $cmd .= " -ra $ra -decl $dec -radius 1.5 -limit 1 -diff_mode 4";
     234        }
     235        elsif ($colData{STAGE}[$i] eq 'WSdiff') {
     236            $cmd = "$difftool -listrun -dbname $dbname -filter $filter ";
     237            $cmd .= " -dateobs_begin $dateobs_begin -dateobs_end $dateobs_end ";
     238            $cmd .= " -ra $ra -decl $dec -radius 1.5 -limit 1 -diff_mode 2";
     239        }
     240        elsif ($colData{STAGE}[$i] eq 'diff') {
     241            $cmd = "$difftool -listrun -dbname $dbname -filter $filter ";
     242            $cmd .= " -dateobs_begin $dateobs_begin -dateobs_end $dateobs_end ";
     243            $cmd .= " -ra $ra -decl $dec -radius 1.5 -limit 1";
     244        }
     245        else {
     246            $cmd = "$camtool -processedexp -dbname $dbname -filter $filter ";
     247            $cmd .= " -dateobs_begin $dateobs_begin -dateobs_end $dateobs_end ";
     248            $cmd .= " -ra $ra -decl $dec -radius 1.5 -limit 1";
     249        }
    229250        my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
    230             run(command => $cmd, verbose => 0);
     251            run(command => $cmd, verbose => 1);
    231252        unless ($success) {
    232253            # This is a problem, because I'm not sure how we handle a failure to read something.
     
    243264            my ($key,$type,$value) = @line;
    244265#               print "$entry => $key / $type / $value \n";
    245             if ($key =~ /exp_name/i) {
    246                 $colData{FPA_ID}[$i] = $value;
    247             }
    248         }
     266            if ($colData{STAGE}[$i] =~ /diff/) {
     267                if ($key =~ /diff_id/i) {
     268                    $colData{FPA_ID}[$i] = $value;
     269                }
     270            }
     271            else {
     272                if ($key =~ /exp_name/i) {
     273                    $colData{FPA_ID}[$i] = $value;
     274                }
     275            }
     276        }
     277    }
     278    # Correct diff modes
     279    if ($colData{STAGE}[$i] eq 'WSdiff') {
     280        $colData{STAGE}[$i] = 'diff';
     281    }
     282    elsif ($colData{STAGE}[$i] eq 'SSdiff') {
     283        $colData{STAGE}[$i] = 'diff';
    249284    }
    250285}
Note: See TracChangeset for help on using the changeset viewer.