IPP Software Navigation Tools IPP Links Communication Pan-STARRS Links

Ignore:
Timestamp:
May 4, 2007, 4:52:03 PM (19 years ago)
Author:
Paul Price
Message:

Major upgrade to allow use of Nebulous

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/ippScripts/scripts/diff_skycell.pl

    r13118 r13275  
    1919use Data::Dumper;
    2020
    21 use PS::IPP::Config qw(
    22     $PS_EXIT_SUCCESS
    23     $PS_EXIT_UNKNOWN_ERROR
    24     $PS_EXIT_SYS_ERROR
    25     $PS_EXIT_CONFIG_ERROR
    26     $PS_EXIT_PROG_ERROR
    27     $PS_EXIT_DATA_ERROR
    28     $PS_EXIT_TIMEOUT_ERROR
    29     );
     21use PS::IPP::Config qw($PS_EXIT_SUCCESS
     22                       $PS_EXIT_UNKNOWN_ERROR
     23                       $PS_EXIT_SYS_ERROR
     24                       $PS_EXIT_CONFIG_ERROR
     25                       $PS_EXIT_PROG_ERROR
     26                       $PS_EXIT_DATA_ERROR
     27                       $PS_EXIT_TIMEOUT_ERROR
     28                       caturi
     29                       );
    3030my $ipprc = PS::IPP::Config->new(); # IPP configuration
    31 use File::Spec;
    3231
    3332use constant POIS_OPTIONS => '-v -B 1000';
     
    8988my $camera;                     # Camera
    9089foreach my $file (@$files) {
    91     my $uri = $ipprc->convert_filename_absolute( $file->{uri} ); # URI for file
    9290    if (defined $file->{template} and $file->{template}) {
    93         $template = $uri;
    94     } else {
    95         $input = $uri;
     91        $template = $file->{uri};
     92    } else {
     93        $input = $file->{uri};
    9694    }
    9795    if (defined $tess_id) {
     
    119117$ipprc->define_camera($camera);
    120118
    121 ### Working directory
    122 if (defined $workdir) {
    123     $workdir = $ipprc->convert_filename_absolute( $workdir );
    124     $workdir = File::Spec->catdir( $workdir, "tess_" . $tess_id, "sky_" . $skycell_id );
    125 } else {
    126     my ($vol, $dir, $file) = File::Spec->splitpath( $input );
    127     $workdir = $dir;
    128 }
    129 system "mkdir -p $workdir" unless -d $workdir;
    130119
    131120# Get the output filenames
    132 my $outputFile = "$tess_id.$skycell_id.dif$diff_id"; # Root name
    133 my $outputRoot = File::Spec->catfile( $workdir, $outputFile );
    134 
     121$workdir = caturi( $workdir, "tess_" . $tess_id, "sky_" . $skycell_id ) if defined $workdir;
     122my $outputRoot = $ipprc->file_prepare( "$tess_id.$skycell_id.dif$diff_id", $workdir, $input );
    135123my $outputName = $outputRoot . ".fits";
    136124my $bin1Name =  $ipprc->filename("PPIMAGE.BIN1", $outputRoot);
     
    138126my $outputStats = $outputRoot . '.stats';
    139127
     128
     129### XXX We have to play around some here, because pois can't use Nebulous
     130my $outputNameResolved = $ipprc->file_create( $outputName );
     131my $templateResolved = $ipprc->file_resolve( $template );
     132my $inputResolved = $ipprc->file_resolve( $input );
     133
    140134# Perform subtraction
    141135my $stats = PS::IPP::Metadata::Stats->new(); # Stats parser
    142136unless ($no_op) {
    143     my $command = "$pois " . POIS_OPTIONS() . " $template $input $outputName"; # Command to run pois
     137    my $command = "$pois " . POIS_OPTIONS() . " $templateResolved $inputResolved $outputNameResolved"; # Command to run pois
    144138
    145139    my ( $success, $error_code, $full_buf, $stdout_buf, $stderr_buf ) =
     
    149143        &my_die("Unable to perform ppImage: $error_code", $diff_id, $error_code);
    150144    }
    151     &my_die("Couldn't find expected output file: $outputName", $diff_id, $PS_EXIT_SYS_ERROR) unless -f $outputName;
    152 #    &my_die("Couldn't find expected output file: $bin1Name",    $diff_id, $PS_EXIT_SYS_ERROR) unless -f $bin1Name;
    153 #    &my_die("Couldn't find expected output file: $bin2Name",    $diff_id, $PS_EXIT_SYS_ERROR) unless -f $bin2Name;
    154 #    &my_die("Couldn't find expected output file: $outputStats", $diff_id, $PS_EXIT_SYS_ERROR) unless -f $outputStats;
     145    &my_die("Couldn't find expected output file: $outputName", $diff_id, $PS_EXIT_SYS_ERROR) unless -f $ipprc->file_resolve($outputName);
     146#    &my_die("Couldn't find expected output file: $bin1Name",    $diff_id, $PS_EXIT_SYS_ERROR) unless -f $ipprc->file_resolve($bin1Name);
     147#    &my_die("Couldn't find expected output file: $bin2Name",    $diff_id, $PS_EXIT_SYS_ERROR) unless -f $ipprc->file_resolve($bin2Name);
     148#    &my_die("Couldn't find expected output file: $outputStats", $diff_id, $PS_EXIT_SYS_ERROR) unless -f $ipprc->file_resolve($outputStats);
    155149
    156150    # Get the statistics on the residual image
    157151    if (0) { ### Disabled because pois doesn't output stats yet
    158152        my $statsFile;          # File handle
    159         open $statsFile, $outputStats or &my_die("Can't open statistics file $outputStats: $!", $diff_id, $PS_EXIT_SYS_ERROR);
     153        open $statsFile, $ipprc->file_resolve($outputStats) or &my_die("Can't open statistics file $outputStats: $!", $diff_id, $PS_EXIT_SYS_ERROR);
    160154        my @contents = <$statsFile>; # Contents of file
    161155        close $statsFile;
     
    167161
    168162# Add the processed file to the database
    169 $outputName = $ipprc->convert_filename_relative( $outputName );
    170 $outputRoot = $ipprc->convert_filename_relative( $outputRoot );
    171 
    172163my $bg = ($stats->bg_mean() or 'NAN');
    173164my $bg_stdev = ($stats->bg_stdev() or 'NAN');
     
    187178            &my_die("Unable to perform difftool -adddiffskyfile: $error_code", $diff_id, $error_code);
    188179        }
    189        
    190 #       unlink $outputStats;   
    191180    }
    192181
Note: See TracChangeset for help on using the changeset viewer.