Jpp
JStopDAQ.sh
Go to the documentation of this file.
1 #!/bin/zsh
2 #
3 # \author mdejong
4 #
5 script=${0##*/}
6 
7 # ------------------------------------------------------------------------------------------
8 #
9 # Utility script to stop DAQ processes.
10 #
11 # ------------------------------------------------------------------------------------------
12 
13 if [ -z $JPP_DIR ]; then
14  echo "Variable JPP_DIR undefined."
15  exit
16 fi
17 
18 source $JPP_DIR/setenv.sh $JPP_DIR >& /dev/null
19 
20 set_variable SERVER localhost
21 define_variable LOGGER
22 
23 if ( do_usage $* ); then
24  usage "$script [host [local file]]"
25 fi
26 
27 case $# in
28  2) set_variable LOGGER $2;&
29  1) set_variable SERVER $1;;
30 esac
31 
32 # An elegant way to terminate all clients, if necessary.
33 
34 for TAG in RC_CMD RC_DOM RC_EVT RC_DWRT RC_DFLTR RC_DQUE; do
35  JPutMessage -H $SERVER -t $TAG -m ev_recover
36  JPutMessage -H $SERVER -t $TAG -m ev_pause
37  JPutMessage -H $SERVER -t $TAG -m ev_stop
38  JPutMessage -H $SERVER -t $TAG -m ev_quit
39  JPutMessage -H $SERVER -t $TAG -m ev_reset
40  JPutMessage -H $SERVER -t $TAG -m ev_off
41 done
42 
43 # Stop message logger.
44 
45 if [[ -n $LOGGER ]]; then
46  JPutMessage -H $LOGGER -t MSG -m stop
47 fi