Merging the VirtualMC branch to the main development branch (HEAD)
[u/mrichter/AliRoot.git] / AliGeant4 / config / test_create_in.sh
1 #!/bin/sh
2 # $Id$
3 # ----------------------------------------------------------------
4 # This script generates test macro for a specified
5 # detector and its version number with specified
6 # (or default) test event generator in macro/DDD/test
7 #
8 # In order to prevent from unwanted rewriting of the generator
9 # it is created only in case it does not yet exist.
10 #
11 # Usage: 
12 # create_test_in.sh detName [-d detVersionNumber] [-g genNumber] [-v visNumber]
13 #
14 # 5.11.99,  I.Hrivnacova
15
16 # check input parameters
17 if [ $# -lt 1 ]; then
18   echo "Usage: "
19   echo "create_test_in.sh detName [-d detVersionNumber] [-g genNumber] [-v visNumber]"
20   exit
21 fi
22
23 # default parameters
24 DIR=$1
25 VER="0"
26 GEN="1"
27 VIS="0"
28
29 # get input parameters
30 for param in $*
31 do
32   case $param in
33     -d) VER=$3; shift 2;;
34     -g) GEN=$3; shift 2;;
35     -v) VIS=$3; shift 2;;
36   esac
37 done
38
39 CURDIR=`pwd`
40
41 SRC=$ALICE_ROOT
42 TO=$AG4_INSTALL/"test"
43 if [ "$VER" = "d" ]; then 
44  VER_REPLACE=""
45 else
46  VER_REPLACE="$VER"
47 fi
48
49 # test if corresponding version order number
50 # is defined
51 cd $SRC/$DIR
52 IS_VERSION="NO"
53 if [ -f "Ali"$DIR"v"$VER".cxx" ]; then
54   IS_VERSION="YES"
55 else
56   if [ -f "Ali"$DIR".cxx" -a "$VER" = "0" ]; then
57     IS_VERSION="YES" 
58   else
59     if [ "$VER" = "d" -a -d "$TO/$DIR" -a "$DIR" != "STRUCT" ]; then 
60       IS_VERSION="YES"
61     fi
62   fi 
63 fi
64 if [ "$IS_VERSION" = "NO" ]; then
65   cd $CURDIR
66   exit;
67 fi       
68
69 # create target directory if it does not exist
70 if [ ! -d $TO ]; then
71   mkdir $TO
72 fi  
73 if [ ! -d $TO/$DIR ]; then
74   mkdir $TO/$DIR
75 fi   
76
77 cd $TO  
78
79 # create basic test macro
80 if [ "$VIS" = "0" ]; then 
81   cat $AG4_INSTALL/config/test_default_det_novis.in | sed s/NNN/$VER_REPLACE/g | sed s/WWW/$VER_REPLACE/g | sed s/GGG/$GEN/g |  sed s/VVV/$VIS/g | sed s/XXX/$DIR/g > $TO/$DIR"/v"$VER"_test"$GEN""$VIS".in"
82 else
83   cat $AG4_INSTALL/config/test_default_det_vis.in | sed s/NNN/$VER_REPLACE/g | sed s/WWW/$VER_REPLACE/g | sed s/GGG/$GEN/g |  sed s/VVV/$VIS/g | sed s/XXX/$DIR/g > $TO/$DIR"/v"$VER"_test"$GEN""$VIS".in"
84 # create visualisation macro (if it does not yet exist)
85   if [ ! -f $TO/$DIR/vis_test$VIS".in" ]; then
86     cp $AG4_INSTALL/config/test_default_vis$VIS.in $TO/$DIR/vis_test$VIS.in
87   fi
88 fi  
89
90 # create generator macro (if it does not yet exist)
91 if [ ! -f $TO/$DIR/gen_test$GEN".in" ]; then
92   cp $AG4_INSTALL/config/test_default_gen$GEN.in $TO/$DIR/gen_test$GEN.in
93 fi
94
95 echo "test_create_in.sh $DIR v$VER test$GEN$VIS"
96 cd $CURDIR