#!/bin/sh
#=======================================================================
# Convert CCCma format binary files to netcdf             --- ccc2nc ---
# $Id: ccc2nc_jobdef 618 2010-02-11 01:57:41Z acrnrls $
#=======================================================================
# keyword :: ccc2nc
# short description :: convert CCCma binary files to netcdf
 set -a
 . betapath2

#  * ........................... Parmsub Parameters ............................

 username="acrnxxx"; user="XXX";
 runid=job000; uxxx='uxxx'; crawork="${runid}_job"

 nextjob=on
 noprint=on

 jobname=ccc2nc; time="1800" ; memory="8gb" ;

 # Alternate path to a directory where .queue/.crawork will be found
 JHOME=''

 if [ -n "$JHOME" -a x"$JHOME" != x"$HOME" ]; then
   # Allow optional reset of DATAPATH/RUNPATH
   JHOME_DATA=''
   DATAPATH=${JHOME_DATA:=$DATAPATH}
   RUNPATH=${JHOME_DATA:=$RUNPATH}
   # Allow optional reset of CCRNTMP
   JHOME_RUN=''
   CCRNTMP=${JHOME_RUN:=$CCRNTMP}
 fi

 . comjcl.cdk

cat > Execute_Script <<'end_of_script'

  # bail is a simple error exit routine
  bail(){
    echo "ccc2nc: $1"
    echo " " >> haltit
    exit 1
  }

  runid=job000;
  uxxx='uxxx'; ccc2nc_uxxx=$uxxx;
  ccc2nc_prefix="${ccc2nc_uxxx}_${runid}";
  ccc2nc_prefix_=${ccc2nc_prefix}_
  prefix=$ccc2nc_prefix_
  crawork="${runid}_job"; username="acrnxxx"; user="XXX";

  # These variables are set when the job string is created
  run_start_year=NotSet
  run_start_month=NotSet
  run_stop_year=NotSet
  run_stop_month=NotSet
  current_year=NotSet
  current_month=NotSet
  previous_year=NotSet
  previous_month=NotSet
  next_year=NotSet
  next_month=NotSet

  join=0

# <<INSERT_CCC2NC>>

  ccc2nc_args=${ccc2nc_args:=''}
  nf=0
  while [ $nf -lt $join ]; do
    nf=`expr $nf + 1`
    eval fname=\$file$nf
    suffix=`echo $fname|sed 's/.*\(..\)$/\1/'`
    case $suffix in
      # Do not convert time to "days since ..." for ocean or coupler data
      os|cs|gz|cm|cp) largs='-raw_time' ;;
      *) largs=' ';;
    esac
    ncname=${fname}.nc
    access $fname $fname
    ccc2nc $largs $ccc2nc_args -o $ncname $fname
    [ ! -s "$ncname" ] && bail "Unable to create netcdf file $ncname"
    size_ok=`ls -l $ncname|awk '{if($5<100){print "0"}else{print "1"}}' -`
    if [ $size_ok -eq 1 ]; then
      save $ncname $ncname
    else
      bail "Problem processing $fname"
    fi
  done

end_of_script

 . endjcl.cdk

#end_of_job

