#!/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
#
# Sets up level 0 for MOCNESS CTD data object.

# Passed parameter
#	$ARGV[0] = configuration file

$version="V2.01BC/February 13, 2012";

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');

$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;

