Index: /trunk/MagicSoft/Mars/Changelog
===================================================================
--- /trunk/MagicSoft/Mars/Changelog	(revision 7047)
+++ /trunk/MagicSoft/Mars/Changelog	(revision 7048)
@@ -103,4 +103,7 @@
    * datacenter/macros/checkstardone.C
      - added (macro to check if star has been done for a sequence)
+
+   * datacenter/scripts/checkstardone
+     - added (script that executes checkstardone.C for all datasets
 
    * steps.rc
Index: /trunk/MagicSoft/Mars/datacenter/scripts/buildsequenceentries
===================================================================
--- /trunk/MagicSoft/Mars/datacenter/scripts/buildsequenceentries	(revision 7047)
+++ /trunk/MagicSoft/Mars/datacenter/scripts/buildsequenceentries	(revision 7048)
@@ -106,5 +106,5 @@
    echo "building sequence entries for date $date..." >> $scriptlog 2>&1
    year2=`echo $date | cut -c 1-4`
-   buildsequentriespath=$logpath/$year2
+   buildsequentriespath=$logpath/buildsequenceentries/$year2
    if [ ! -d $buildsequentriespath ]
       then
Index: /trunk/MagicSoft/Mars/datacenter/scripts/checkfilesforsequenceavail
===================================================================
--- /trunk/MagicSoft/Mars/datacenter/scripts/checkfilesforsequenceavail	(revision 7047)
+++ /trunk/MagicSoft/Mars/datacenter/scripts/checkfilesforsequenceavail	(revision 7048)
@@ -96,6 +96,6 @@
 do 
    echo "checking files for sequence $sequence..." >> $scriptlog 2>&1 
-   no=`printf %08d $sequence | cut -c 4`
-   outpath=$logpath/checkfileavail/`printf %04d $no`
+   no=`printf %08d $sequence | cut -c 0-4`
+   outpath=$logpath/checkfileavail/$no
    echo "outpath: "$outpath  >> $scriptlog 2>&1 
    if [ ! -d $outpath ]
@@ -112,5 +112,5 @@
    case $check1 in
       1)   echo "check1=$check1 -> everthing ok -> setting status..." >> $scriptlog 2>&1 
-           setstatuslogpath=$logpath/setstatus/checkfileavail/`printf %04d $no`
+           setstatuslogpath=$logpath/setstatus/checkfileavail/$no
            if [ ! -d $setstatuslogpath ]
            then
Index: /trunk/MagicSoft/Mars/datacenter/scripts/checkstardone
===================================================================
--- /trunk/MagicSoft/Mars/datacenter/scripts/checkstardone	(revision 7048)
+++ /trunk/MagicSoft/Mars/datacenter/scripts/checkstardone	(revision 7048)
@@ -0,0 +1,153 @@
+#!/bin/sh
+#
+# ========================================================================
+#
+# *
+# * This file is part of MARS, the MAGIC Analysis and Reconstruction
+# * Software. It is distributed to you in the hope that it can be a useful
+# * and timesaving tool in analysing Data of imaging Cerenkov telescopes.
+# * It is distributed WITHOUT ANY WARRANTY.
+# *
+# * Permission to use, copy, modify and distribute this software and its
+# * documentation for any purpose is hereby granted without fee,
+# * provided that the above copyright notice appear in all copies and
+# * that both that copyright notice and this permission notice appear
+# * in supporting documentation. It is provided "as is" without express
+# * or implied warranty.
+# *
+#
+#
+#   Author(s): Daniela Dorner  08/2004 <mailto:dorner@astro.uni-wuerzburg.de>
+#
+#   Copyright: MAGIC Software Development, 2000-2004
+#
+#
+# ========================================================================
+#
+#
+
+source /home/operator/Mars.cvs/datacenter/scripts/sourcefile
+
+table=DataSetProcessStatus
+column=fStarFilesAvail
+date=NULL
+datetime=`date +%F-%H-%M-%S`
+year=`date +%Y`
+
+todofile=/magic/datacenter/lists/ToDo-$table-$column.txt
+getstatuslogpath=$logpath/getstatus/checkstardone/$year
+getstatuslog=$getstatuslogpath/getstatus-$table-$column-$datetime.log
+
+scriptlogpath=$logpath/run/checkstardone/`date +%Y/%m/%d`
+if [ ! -d $scriptlogpath ]
+then
+  mkdir -pv $scriptlogpath 
+  if [ ! -d $scriptlogpath ]
+  then 
+     echo "could not make scriptlogpath "$scriptlogpath 
+     exit
+  fi
+fi
+
+scriptlog=$scriptlogpath/checkstardone-$datetime.log
+
+date >> $scriptlog 2>&1
+
+if [ ! -d $getstatuslogpath ]
+then
+  mkdir -pv $getstatuslogpath  >> $scriptlog 2>&1 
+  if [ ! -d $getstatuslogpath ]
+  then 
+     echo "could not make getstatuslogpath "$getstatuslogpath  >> $scriptlog 2>&1
+     exit
+  fi
+fi
+
+#cd $mars
+cd /home/operator/Mars.cvs	
+macrospath=/home/operator/Mars.cvs/datacenter/macros
+
+
+if [ -e $todofile ]
+then 
+   echo "checkstardone is already running -> exit" >> $scriptlog 2>&1
+   exit
+fi
+
+echo "getting list..." >> $scriptlog 2>&1
+check0=`root -q -b $macrospath/getdolist.C+\("\"$table\""\,"\"$column\""\,"\"$date\""\) | tee $getstatuslog | grep int | sed -e 's/(int)//'`
+
+case $check0 in 
+   1)   echo "check0=$check0 -> everthing ok -> do step" >> $scriptlog 2>&1 ;;
+   *)   echo "check0=$check0 -> ERROR -> step has to be repeated" >> $scriptlog 2>&1 ;;
+esac
+
+datasets=(`cat $todofile`)
+
+if [ "$datasets" = "" ]
+then 
+   echo "nothing to do -> exit"  >> $scriptlog 2>&1
+   rm -v $todofile >> $scriptlog 2>&1
+   rm -v $lockpath/lock-$table-$column.txt >> $scriptlog 2>&1
+   date  >> $scriptlog 2>&1
+   exit
+fi
+
+echo "datasets: "${datasets[@]} #>> $scriptlog 2>&1
+
+for dataset in ${datasets[@]}
+do 
+   no=`printf %08d $dataset | cut -c 0-4`
+   echo "checking files for dataset $dataset..." >> $scriptlog 2>&1 
+   datasetfile=/magic/datasets/$no/dataset`printf %08d $dataset`.txt
+   sequences=(`cat $datasetfile | grep Sequences | sed -e 's/SequencesOn://g' | sed -e 's/SequencesOff://g'`)
+   
+   echo "sequences: "${sequences[@]}
+
+   outpath=$logpath/checkstardone/$no
+   echo "outpath: "$outpath  >> $scriptlog 2>&1 
+   if [ ! -d $outpath ]
+   then
+     mkdir -pv $outpath  >> $scriptlog 2>&1 
+     if [ ! -d $outpath ]
+     then 
+        echo "could not make outpath $outpath -> continue "  >> $scriptlog 2>&1 
+        continue
+     fi
+   fi
+   
+   for sequence in ${sequences[@]}
+   do 
+      check1=`root -q -b $macrospath/checkstardone.C+\(\""$sequence\""\) | tee $outpath/checkstardone-$sequence.log | grep int | sed -e 's/(int)//'`
+
+      case $check1 in
+         1)   echo "check1=$check1 -> everthing ok -> continue with next sequence..." >> $scriptlog 2>&1 ;;
+         *)   echo "check1=$check1 -> ERROR " >> $scriptlog 2>&1 
+              echo "starfiles not available for sequence -> continue" >> $scriptlog 2>&1 
+              continue 2
+              ;;
+      esac
+   done
+   
+   setstatuslogpath=$logpath/setstatus/checkstardone/$no
+   if [ ! -d $setstatuslogpath ]
+   then
+     mkdir -pv $setstatuslogpath  >> $scriptlog 2>&1
+     if [ ! -d $setstatuslogpath ]
+     then
+        echo "could not make setstatuslogpath "$setstatuslogpath  >> $scriptlog 2>&1
+        continue
+     fi
+   fi
+   check2=`root -q -b $macrospath/setstatus.C+\("\"$dataset\""\,"\"$table\""\,"\"$column\""\,"\"Now()\""\)  | tee $setstatuslogpath/setstatus-checkstardone-$dataset.log | grep int | sed -e 's/(int)//'`
+   case $check2 in
+      1)   echo "check2=$check2 -> everthing ok, status has been set" >> $scriptlog 2>&1 ;;
+      *)   echo "check2=$check2 -> ERROR -> step could not be set" >> $scriptlog 2>&1 ;;
+   esac
+done
+
+rm -v $todofile  >> $scriptlog 2>&1 
+rm -v $lockpath/lock-$table-$column.txt >> $scriptlog 2>&1
+
+date  >> $scriptlog 2>&1
+
