Commit 39a4c580 authored by jemian's avatar jemian
Browse files

Upload new file

parent 965ef7b1
#!/bin/bash
#SVN ID: $Id: start_caQtDM_7bm.sh 9573 2016-09-20 21:36:09Z jemian $
export EPICS_APP=/APSshare/epics/synApps_5_8/support/xxx-5-8-3
#export EPICS_APP=/APSshare/epics/synApps_5_7/support/xxx-5-7-1
export APS_UI_DIR=/APSshare/adlsys
export EPICS_APP_UI_DIR=${EPICS_APP}/xxxApp/op/ui
export BEAMLINE_UI_DIR=/net/s7dserv/xorApps/adl/7bm
#export DEFAULT_EPICS_CA_MAX_ARRAY_BYTES=64008
export DEFAULT_EPICS_CA_MAX_ARRAY_BYTES=8000100
if [ "" != "$*" ]; then
screen_s=$*
else
screen_s=7bm.ui
fi
#######################################
# support function to simplify repetitive task,
# used to build up display path of supported modules
#
# usage::
#
# addScreenPath ENVIRONMENT_VARIABLE [SUBDIRECTORY]
#
# QTDMDP is temporary CAQTDM_DISPLAY_PATH
# QTDMDP is internal to this script, no need to export.
function addScreenPath
{
# $1 is a symbol defined in <synApps>/configure/RELEASE
# module_path is the path defined for that symbol in the RELEASE file
module='$'$1
module_path=`eval echo $module`
if [ "" != "${module}" ]; then
if [ "" == "${QTDMDP}" ]; then
QTDMDP=.
fi
if [ "" != "$2" ]; then
module_path=${module_path}/$2
fi
if [ -d ${module_path} ]; then
# only proceed if directory actually exists
QTDMDP=${QTDMDP}:${module_path}
fi
fi
}
#######################################
# get environment variables for support modules
output=`perl -s $EPICS_APP/release.pl -form=bash $EPICS_APP`
eval $output
# overrides
export DELAYGEN=/net/s7dserv/xorApps/epics/synApps_5_7/support/delaygen
export MW100=/net/s7dserv/xorApps/epics/synApps_5_7/support/mw100
#######################################
# add support for modules defined by environment variables
# modules are *appended* to the growing list of directories
# ============ ================ ===========================
# function MODULE_VARIABLE subdirectory with .ui files
# ============ ================ ===========================
addScreenPath EPICS_APP_UI_DIR
addScreenPath BEAMLINE_UI_DIR 7bm
addScreenPath BEAMLINE_UI_DIR 7bma
addScreenPath BEAMLINE_UI_DIR 7bmb
addScreenPath BEAMLINE_UI_DIR 7bmscope
addScreenPath BEAMLINE_UI_DIR areaDetector
addScreenPath BEAMLINE_UI_DIR ebrick
addScreenPath ALIVE aliveApp/op/ui
addScreenPath AREA_DETECTOR ADCore/ADApp/op/ui
addScreenPath AREA_DETECTOR ADCore/ADApp/op/ui/autoconvert
addScreenPath ASYN opi/caqtdm
addScreenPath AUTOSAVE asApp/op/ui
addScreenPath BUSY busyApp/op/ui
addScreenPath CALC calcApp/op/ui
addScreenPath CAMAC camacApp/op/ui
addScreenPath CAPUTRECORDER caputRecorderApp/op/ui
addScreenPath DAC128V dac128VApp/op/ui
addScreenPath DELAYGEN delaygenApp/op/ui
addScreenPath DEVIOCSTATS op/ui
addScreenPath DXP dxpApp/op/ui
addScreenPath IP ipApp/op/ui
addScreenPath IP330 ip330App/op/ui
addScreenPath IPUNIDIG ipUnidigApp/op/ui
addScreenPath LOVE loveApp/op/ui
addScreenPath MCA mcaApp/op/ui
addScreenPath MODBUS modbusApp/op/ui
addScreenPath MOTOR motorApp/op/ui
addScreenPath OPTICS opticsApp/op/ui
addScreenPath QUADEM quadEMApp/op/ui
addScreenPath SOFTGLUE softGlueApp/op/ui
addScreenPath SSCAN sscanApp/op/ui
addScreenPath STD stdApp/op/ui
addScreenPath VAC vacApp/op/ui
addScreenPath VME vmeApp/op/ui
addScreenPath APS_UI_DIR sr
#addScreenPath APS_UI_DIR sr/absApp
addScreenPath APS_UI_DIR sr/bleeps
addScreenPath APS_UI_DIR sr/blmApp
addScreenPath APS_UI_DIR sr/bmbpm
addScreenPath APS_UI_DIR sr/bunchIApp
addScreenPath APS_UI_DIR sr/bunchPurity
#addScreenPath APS_UI_DIR sr/cpsApp
#addScreenPath APS_UI_DIR sr/facilitiesApp
addScreenPath APS_UI_DIR sr/fe
addScreenPath APS_UI_DIR sr/flagApp
addScreenPath APS_UI_DIR sr/Gate_Pictures
addScreenPath APS_UI_DIR sr/id
addScreenPath APS_UI_DIR sr/idbpm
addScreenPath APS_UI_DIR sr/imagingApp
addScreenPath APS_UI_DIR sr/iocinfoApp
#addScreenPath APS_UI_DIR sr/mpsApp
addScreenPath APS_UI_DIR sr/operationsApp
addScreenPath APS_UI_DIR sr/p0fbApp
addScreenPath APS_UI_DIR sr/pictures
#addScreenPath APS_UI_DIR sr/psApp
#addScreenPath APS_UI_DIR sr/psApp/noiseMonitoring
addScreenPath APS_UI_DIR sr/pss
addScreenPath APS_UI_DIR sr/pss/adl
addScreenPath APS_UI_DIR sr/scraperApp
addScreenPath APS_UI_DIR sr/tuneApp
addScreenPath APS_UI_DIR sr/vacApp
addScreenPath APS_UI_DIR time
addScreenPath APS_UI_DIR time/injtimeApp
addScreenPath APS_UI_DIR time/mtimeApp
addScreenPath BEAMLINE_UI_DIR pps
addScreenPath MW100 mw100App/op/ui
#addScreenPath BEAMLINE_UI_DIR mw100
# ============ ================ ===========================
#######################################
# optional: add support directories not associated with environment variables
# QTDMDP=${QTDMDP}:/APSshare/uisys/sr/id
#######################################
# Define CAQTDM_DISPLAY_PATH
# the .ui file directory list for caQtDM
if [ "" == "${CAQTDM_DISPLAY_PATH}" ]; then
export CAQTDM_DISPLAY_PATH=${QTDMDP}
else
# either: pre-pend to display path
export CAQTDM_DISPLAY_PATH=${QTDMDP}:${CAQTDM_DISPLAY_PATH}
# or: append to display path
#export CAQTDM_DISPLAY_PATH=${CAQTDM_DISPLAY_PATH}:${QTDMDP}
fi
#######################################
# optional: support for PVs with large data sizes, such as areaDetector
# This should agree with the environment variable set by the ioc
# see 'putenv "EPICS_CA_MAX_ARRAY_BYTES=64008"' in iocBoot/ioc<target>/st.cmd
if [ "" == "${EPICS_CA_MAX_ARRAY_BYTES}" ]; then
#export EPICS_CA_MAX_ARRAY_BYTES=64008
export EPICS_CA_MAX_ARRAY_BYTES=${DEFAULT_EPICS_CA_MAX_ARRAY_BYTES}
fi
#######################################
# optional: execute caQtDM in this support's ui directory
#cd ${EPICS_APP_UI_DIR}
#######################################
# optional: override system default environment variables for Qt and Qwt
# These override system defaults for Qt, Qwt
# Because I'm using a local copy of Qt/Qwt, and not the system
# copy, I need to set some environment variables
#OVERRIDE_QT_BASE=/home/oxygen/MOONEY/Download/Qt
#export QTDIR=${OVERRIDE_QT_BASE}/qt-4.8.4
#export QT_PLUGIN_PATH=
#export QT_PLUGIN_PATH=${QT_PLUGIN_PATH}:${OVERRIDE_QT_BASE}/qt-4.8.4/plugins
#export QT_PLUGIN_PATH=${QT_PLUGIN_PATH}:${OVERRIDE_QT_BASE}/qwt-6.0/designer/plugins/designer
#######################################
# optional: other environment variables that may need local definitions
# these are copied from caQtDM's source for startDM_Local
#export QTCONTROLS_LIBS=`pwd`/caQtDM_Binaries
#export QTBASE=${QTCONTROLS_LIBS}
#export QT_PLUGIN_PATH=${QTBASE}
#export CAQTDM_DISPLAY_PATH=`pwd`/caQtDM_Tests
export MEDM_EXEC_LIST=
# For drag-and-drop workaround at APS, need /APSshare/bin/xclip
export PATH=${PATH}:/APSshare/bin
export CAQTDM_EXEC_LIST='Probe;probe &P &:UI File;echo &A:PV Name(s);echo &P:Copy PV name; echo -n &P| xclip -i -sel clip:Paste PV name;caput &P `xclip -o -sel clip`'
export START_PUTRECORDER=${EPICS_APP}/start_putrecorder
export MACROS_PY=${EPICS_APP_UI_DIR}/../python/macros.py
export EDITOR=nedit
export QT_PLUGIN_PATH=/APSshare/caqtdm/plugins
export LD_LIBRARY_PATH=/APSshare/caqtdm/lib
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:/APSshare/epics/base-3.14.12.5/lib/linux-x86_64
#######################################
# optional: access to ioctim and bcdapc15
#export EPICS_CA_ADDR_LIST="164.54.53.99 164.54.54.88"
if [ "" = "${EPICS_CA_ADDR_LIST}" ]; then
export EPICS_CA_ADDR_LIST=`/APSshare/bin/sector_epics_net 7bm`
fi
#######################################
# start caQtDM
#caQtDM -noMsg ${screen_s} &
caQtDM -style plastique -noMsg ${screen_s} &
##########################################################
########### SVN repository information ###################
# $Date: 2016-09-20 16:36:09 -0500 (Tue, 20 Sep 2016) $
# $Author: jemian $
# $Revision: 9573 $
# $URL: https://subversion.xray.aps.anl.gov/bcdaioc/7-adl/start_caQtDM_7bm.sh $
# $Id: start_caQtDM_7bm.sh 9573 2016-09-20 21:36:09Z jemian $
########### SVN repository information ###################
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment