linuxcnc/scripts/gladevcp_demo
2014-07-28 09:12:39 -05:00

82 lines
1.8 KiB
Bash
Executable file

#!/bin/bash
# This file is used for scripts that demonstrate gladevcp
# The scripts typically use an extension of .demo
# 1) start realtime
# 2) run glacevcp with supplied parameters
# 3) stop realtime
# Copyright: 2014
# Author: Dewey Garrett <dgarrett@panix.com>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
prog=$(basename $0)
function usage () {
cat <<EOF
Usage:
$prog [gladevcp options]
gladevcp_demo: start realtime and invoke gladevcp
The help for gladvcp shows its options:
gladevcp --help
$(gladevcp -h)
EOF
exit 1
} ;# usage
function popup () {
msg="$*"
wish <<EOF &
wm withdraw .
tk_messageBox \
-title "$prog" \
-message "$msg" \
-icon error \
-type ok
destroy .
EOF
} ;# popup
# begin----------------------------------------------------
REALTIME=$(linuxcnc_var REALTIME)
$REALTIME status >/dev/null
status=$?
if [ $status = 0 ] ; then
msg="$prog: Realtime is already active"
echo "$msg"
popup "$msg"
exit 1
else
$REALTIME start
fi
case $# in
0) usage;;
*) ARGS="$@";;
esac
if [ ! -z "$debug" ] ; then
echo debug=$debug
echo REALTIME=$REALTIME
echo ARGS="$ARGS"
pwd
fi
eval gladevcp "$ARGS"
halrun -U