package SendACDS;
use strict;
use English;
use Carp;
use vars
qw(@ISA $VERSION $name $author $date $version @instList $numberOfStreams);
@ISA = qw(Module);
use ModuleResources;
# Declare identity, version, author, date, etc.
$name=__PACKAGE__;
$VERSION='2.03';
$version = $VERSION;
$author='Dean Hinshaw,Richard West,Duncan John Fyfe';
$date='2006-07-05';
#
# ChangeLog
# =========
#
# Version 2.03 - 2006-07-05 (DJF)
# ------------
#
# + Changed numberOfStreams to use standerdized function.
#
# Version 2.02 - 2006-03-27 (DJF)
# ------------
#
# Compress all FIT files before the break point.
#
# Version 2.01 - 2005-09-30 (DJF)
# ------------
#
# + Module now just sets a flag to indicate the state of processing
# at a break point. If it returns ingored processing can continue
# otherwise we break. The ACDS transfer is now managed by an external agent.
#
# Version 2.00 - 2005-09-30 (DJF)
# ------------
#
# + Add explicit perl module headers. Previously these were supplied
# at compile time. This will make debugging and extending the modules
# through additional perl libraries easier.
#
# + Modified to make use of new DTS regime on linux cluster.
# An external task now packages and sends the data.
# This Module only initialtes that process.
#
#
# Version 1.07 - 2005-09-30 (RGW)
# ------------
#
# + Adjust trigger conditions as ImageMerge is now instrument=epic
# not instrument=all
#
# Version 1.06 - 2001-05-03 (DH)
# ------------
#
# + Ignore this module, rather than returning an
# error, if no epic source list is found.
#
# Version 1.05 - 2001-03-16 (DH)
# ------------
#
# + Print out version number in performAction() for
# tracking purposes.
#
# Version 1.04 - 2001-01-09 (DH)
# ------------
#
# + Add ignore option to evaluateRules.
#
# Version 1.03 - 2000-12-14 (DH)
# ------------
#
# + First production version.
#
# Declare list of instruments this module is interested in
@instList=qw(all);
# Number of streams
sub numberOfStreams
{
return 1;
}
# Rules method
sub evaluateRules {
return ignore() if ignored(module => 'SrcMerge',
instrument => 'all',
stream => 1);
return unless complete(module => 'SrcMerge',
instrument => 'all',
stream => 1)
and complete(module => 'ImageMerge',
instrument => 'epic',
stream => 1);
start();
}
# Action method
sub performAction {
info("Module version number: $version");
# Reduce network traffic, compress all FIT files before break point
compressOdf();
compressIntermediates();
compressProducts();
return success();
}
1;