#!/usr/bin/perl -w # # mocpro_level0_conf.pl (formerly w/o '_conf') # mocness tow data file processing routine - level0 # October 3, 2001. V1.24so Set up for Southern Ocean program. Same # routine as used by Georges Bank. At least to start with. rcg # December 24, 2001. Modified for ZooGene data. rcg # March 6, 2003. V1.26ZG Modified March 6, 2003. Change location of # script file and file names to be /data1/zoogene_data/mocness from # /data1/zoogene/Scripts/mocness. rcg # July 10, 2006. V1.27CM Modified for CMarZ data. mda # Dec. 14, 2011. V2.00BC Modified for BCO-DMO data. Scripts start # on dmoserv2 at /data/Scripts/ctd_mocness mda + rcg # February 13, 2012. V1.01BC Divide comment so it fits on two lines. rcg # # February 20, 2014. V2.01DM3 Put Scripts on dmoserv3 in parallel directory # /data/Scripts/ctd_mocness mda # April 11, 2014. V2.10. Add require for make_log_entry routine. rcg # Sets up level 0 for MOCNESS CTD data object. # Passed parameter # $ARGV[0] = configuration file $version="V2.10/April 11, 2014"; unless ( defined $ARGV[0] ) { print STDOUT ("$error Displayed by $0, \n# Version: $version\n", "# $error Required configuration file not specified.\n"); exit; } use lib '/data1/www/bco-dmo/perlmodule'; require ('sendmessage.pl'); require ('get_config_file_hash.pl'); require ('make_log_entry.pl'); $configuration_file = $ARGV[0]; @required = ( 'fieldnames_level_0', 'fieldnames_level_1', 'fieldnames_level_2', 'fieldnames_level_3', 'level_1_script' ); $config_param_ref=&get_config_file_hash($configuration_file); unless(defined $config_param_ref){ print STDOUT ("#**error, could not get configuration file contents\n"); exit; } %config_param=%{$config_param_ref}; $status = ' '; foreach (@required) { unless (exists $config_param{$_} and defined $config_param{$_} ) { $status = $status . ' ' . $_; } } unless ($status eq ' ') { &make_log_entry( "Required configuration parameters not defined=$status"); &sendmessage($error, "Required configuration parameters $status", "not defined."); exit; } #some definitions # top level data directories # $script_loc="/data/Scripts/ctd_mocness"; # script location dir $i_am_level=0; # Set up fieldname lists for ($j=0; $j<=9; $j++) { $level = 'fieldnames_level_'.$j; unless(exists ($config_param{$level}) and defined($config_param{$level})) { last; } $fieldnames_level[$j]=$config_param{$level}; #print STDOUT (" **fieldnames_level[$j]=$fieldnames_level[$j] \n"); } $next_level='level_' . ($i_am_level+1) . '_script'; #print STDOUT (" **next_level = $next_level\n"); $next_script=$config_param{$next_level}; #print STDOUT (" **next_script = $next_script\n"); print STDOUT ("#Displayed by $0 \n# Version: $version\n"); # headers - 3 o/p by level0 Read from files for ($i=$i_am_level; $i <= $#fieldnames_level; $i=$i+1) { print STDOUT ($fieldnames_level[$i], "\n"); } print STDOUT ("MOCNESS_.25\t(",$next_script, " ", $configuration_file, " MOC.25 pro)\n", "MOCNESS_1\t(",$next_script, " ", $configuration_file, " MOC1 pro)\n", "MOCNESS_10\t(",$next_script, " ", $configuration_file, " MOC10 pro)\n"); exit 0;