#!/bin/sh

# Shellscript mit " chmod u+x dateiname " freigeben!

# Usage: VM_trl_check Filename       (File name can include path!)

# Function: Checks Trl-File  

i=$1 
n=`echo $1 | sed 's#.*\/\([0-9a-z\.]*\)$#\1#'`
echo $n
rumpf=`echo $n | sed 's/.trl//'`

# Wieviele Turns?

length=`egrep -e "_[0-9][0-9][0-9][0-9][0-9][0-9]:" $i | wc -l` 

# Besteht Trlfile nur aus 2 oder mehr Sprecherkrzeln?

refchannos=`egrep -e "^${rumpf}" $i | cut -f 1 -d " " | sed "s/^${rumpf}.\([1-9]\)_[0-9][0-9][0-9]_[A-Z][A-Z][A-Z]_[0-9][0-9][0-9][0-9][0-9][0-9]:/\1/" | sort | uniq`
refchannos=`echo $refchannos`
spks=`egrep -e "^${rumpf}" $i |  cut -f 1 -d " " | sed "s/^${rumpf}.[12]_[0-9][0-9][0-9]_\([A-Z][A-Z][A-Z]\)_[0-9][0-9][0-9][0-9][0-9][0-9]:/\1 /" | sort | uniq`
lena=`echo $spks | wc -c`

for spk in $spks
 do 
  marstart=`egrep -e $spk $i | grep "_" | cut -f 1 -d " " | sed "s/^${rumpf}.\([1-9]\)_[0-9][0-9][0-9]_[A-Z][A-Z][A-Z]_[0-9][0-9][0-9][0-9][0-9][0-9]:/\1 /" | sort | uniq`
  channos=`echo ${channos} ${marstart}`
 done
channos=`echo $channos | tr " " "\012" | sort`
channos=`echo $channos`

if test "${channos}" != "${refchannos}"
 then 
  echo "Error: Too many channels or speaker ids in mar-file!"   
fi

a=`echo $rumpf | sed 's/.....$//'`
if test $a = "m"
 then
  if test $lena -gt 16
   then 
    echo "Error: More than 4 speaker ids in mar-file!"
  fi
 else
  if test $lena -gt 8
   then 
    echo "Error: More than 2 speaker ids in mar-file!"
  fi
fi

count=0
while test $count -lt $length 
do

 # Kommen alle Turnnummern vor?

 a=`cat $i | egrep "^${rumpf}.[12]_0*${count}_[A-Z][A-Z][A-Z]"`
 if test "$a" = ""
  then
   echo "Error in turn nr." $count or turn missing!
 fi
 count=`expr $count + 1`
done 

