#!/bin/sh


run_mf() {
# $1: program 
# $2: net

  printf "%-7s" $1
  cat $2 | $1  | egrep "^time:" > tmp
  if [ $status ]; then 
     break;
  fi
  cat tmp 
  t=`cat tmp | sed -e "s/.*time://" -e "s/f =.*//" -e "s/\.//"`
}


if [ "$1" == "" ] 
then
  get="wget -q -O -" 
  wdir=www.informatik.uni-trier.de/~naeher/download/net/mf
  wlst=`wget -q -O - $wdir/lst`
else
  get=cat
  wlst=$*
fi

sum1=0
sum2=0
sum3=0
sum4=0
sum5=0
sum6=0
sum7=0
sum8=0
sum9=0


for net in  $wlst; do 

if [ "$1" = "" ]; then
  net=$wdir/$net
else
 if [ ! -f $net ]; then
    continue;
 fi
fi

  echo " "
  echo $net 
  echo " "

  $get $net > tmp.net

  echo -n "hi_pr  ";
  cat tmp.net | hi_pr > net.out
  t=`cat net.out | grep time     | sed s/"c time: *"//`
  f=`cat net.out | grep flow     | sed s/"c flow: *"//`
  p=`cat net.out | grep pushes   | sed s/"c pushes: *"//`
  r=`cat net.out | grep relabels | sed s/"c relabels: *"//`
  u=`cat net.out | grep updates  | sed s/"c updates: *"//`
  printf "time: %5.2f  f = %.0f  pushes:%8d  relabels:%8d  updates:%3d\n" $t $f $p $r $u
  t=`echo $t | sed -e "s/\.//"`
  sum1=`expr $sum1 + $t`


#  run_mf bgl_pr tmp.net
#  sum2=`expr $sum2 + $t`

#  run_mf bgl_bk tmp.net
#  sum3=`expr $sum3 + $t`


#  run_mf mfg tmp.net
#  sum4=`expr $sum4 + $t`


  run_mf mfs7 tmp.net
  sum5=`expr $sum5 + $t`

  run_mf mfs8 tmp.net
  sum6=`expr $sum6 + $t`

  run_mf mfs9 tmp.net
  sum7=`expr $sum7 + $t`

  run_mf mfs9a tmp.net
  sum8=`expr $sum8 + $t`
 
 total=0
 line=""
 for x in $sum1 $sum2 $sum3 $sum4 $sum5 $sum6 $sum7 $sum8; do
 total=`expr $total + $x`
 if [ "$line" = "" ]
 then
    line="$x"
 else
    line="$line + $x"
 fi
 done

 line="$total = $line"


 echo -n \]2\;$line;

done

echo
echo $line
echo

