From 1953b4470e5f9c687b9403e5dcd3399107e3924e Mon Sep 17 00:00:00 2001
From: Tim Mooney <mooney@aps.anl.gov>
Date: Wed, 9 Aug 2017 12:33:15 -0500
Subject: [PATCH] setup for MEDM, caQtDM, caputRecorder, and Probe

---
 setup_epics_common | 161 +++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 156 insertions(+), 5 deletions(-)

diff --git a/setup_epics_common b/setup_epics_common
index b0d59a8..381afe2 100644
--- a/setup_epics_common
+++ b/setup_epics_common
@@ -1,8 +1,11 @@
 #!/bin/csh -f
 
-# caller (typically: start_epics) MUST make these definitions
-# setenv EPICS_APP /home/oxygen/MOONEY/epics/synApps_5_5/support/xxx
-# setenv EPICS_APP_ADL_DIR ${EPICS_APP}/xxxApp/op/adl
+# caller (typically: start_epics) MUST make this definition:
+# setenv EPICS_APP /home/oxygen/MOONEY/epics/synApps/support/xxx
+
+setenv EPICS_APP_NAME `basename ${EPICS_APP}`
+setenv EPICS_APP_ADL_DIR ${EPICS_APP}/${EPICS_APP_NAME}App/op/adl
+setenv EPICS_APP_UI_DIR ${EPICS_APP}/${EPICS_APP_NAME}App/op/ui
 
 set output = `perl $EPICS_APP/release.pl $EPICS_APP`
 $output
@@ -100,6 +103,14 @@ if ( ${?VME} ) then
 	setenv EDP ${EDP}:${VME}/vmeApp/op/adl
 endif
 
+if ( ${?TDS3000} ) then
+	setenv EDP ${EDP}:${TDS3000}/medm
+endif
+
+if ( ${?FLY} ) then
+	setenv EDP ${EDP}:${FLY}/flyApp/op/adl
+endif
+
 # APS accelerator-controls displays
 setenv EDP ${EDP}:/APSshare/adlsys/sr/id
 
@@ -110,9 +121,149 @@ setenv EPICS_DISPLAY_PATH ${EDP}:${EPICS_DISPLAY_PATH}
 endif
 
 if (! ${?MEDM_EXEC_LIST}) setenv MEDM_EXEC_LIST 'Probe;probe &P &'
+if (! ${?CAQTDM_EXEC_LIST}) setenv 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`'
 
-#setenv EPICS_CA_ADDR_LIST "164.54.53.126"
+#######################################
+# caQtDM
+
+# Prepare CAQTDM_DISPLAY_PATH
+# QTDMDP is temporary CAQTDM_DISPLAY_PATH
+#
+setenv QTDMDP  .
+if ( ${?EPICS_APP_UI_DIR} ) then
+	setenv QTDMDP ${QTDMDP}:${EPICS_APP_UI_DIR}
+	setenv QTDMDP ${QTDMDP}:${EPICS_APP_UI_DIR}/autoconvert
+endif
+if ( ${?AREA_DETECTOR} ) then
+	setenv QTDMDP ${QTDMDP}:${AREA_DETECTOR}/ADApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${AREA_DETECTOR}/ADApp/op/ui/autoconvert
+endif
+if ( ${?ADCORE} ) then
+	setenv QTDMDP ${QTDMDP}:${ADCORE}/ADApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${ADCORE}/ADApp/op/ui/autoconvert
+endif
+if ( ${?ADSIMDETECTOR} ) then
+	setenv QTDMDP ${QTDMDP}:${ADSIMDETECTOR}/simDetectorApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${ADSIMDETECTOR}/simDetectorApp/op/ui/autoconvert
+endif
+if ( ${?ASYN} ) then
+	setenv QTDMDP ${QTDMDP}:${ASYN}/opi/caqtdm
+	setenv QTDMDP ${QTDMDP}:${ASYN}/opi/caqtdm/autoconvert
+endif
+if ( ${?ALIVE} ) then
+	setenv QTDMDP ${QTDMDP}:${ALIVE}/aliveApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${ALIVE}/aliveApp/op/ui/autoconvert
+endif
+if ( ${?AUTOSAVE} ) then
+	setenv QTDMDP ${QTDMDP}:${AUTOSAVE}/asApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${AUTOSAVE}/asApp/op/ui/autoconvert
+endif
+if ( ${?BUSY} ) then
+	setenv QTDMDP ${QTDMDP}:${BUSY}/busyApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${BUSY}/busyApp/op/ui/autoconvert
+endif
+if ( ${?CALC} ) then
+	setenv QTDMDP ${QTDMDP}:${CALC}/calcApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${CALC}/calcApp/op/ui/autoconvert
+endif
+if ( ${?CAMAC} ) then
+	setenv QTDMDP ${QTDMDP}:${CAMAC}/camacApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${CAMAC}/camacApp/op/ui/autoconvert
+endif
+if ( ${?CAPUTRECORDER} ) then
+	setenv QTDMDP ${QTDMDP}:${CAPUTRECORDER}/caputRecorderApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${CAPUTRECORDER}/caputRecorderApp/op/ui/autoconvert
+endif
+if ( ${?DAC128V} ) then
+	setenv QTDMDP ${QTDMDP}:${DAC128V}/dac128VApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${DAC128V}/dac128VApp/op/ui/autoconvert
+endif
+if ( ${?DELAYGEN} ) then
+	setenv QTDMDP ${QTDMDP}:${DELAYGEN}/delaygenApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${DELAYGEN}/delaygenApp/op/ui/autoconvert
+endif
+if ( ${?DEVIOCSTATS} ) then
+	setenv QTDMDP ${QTDMDP}:${DEVIOCSTATS}/op/ui
+	setenv QTDMDP ${QTDMDP}:${DEVIOCSTATS}/op/ui/autoconvert
+endif
+if ( ${?DXP} ) then
+	setenv QTDMDP ${QTDMDP}:${DXP}/dxpApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${DXP}/dxpApp/op/ui/autoconvert
+endif
+if ( ${?IP} ) then
+	setenv QTDMDP ${QTDMDP}:${IP}/ipApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${IP}/ipApp/op/ui/autoconvert
+endif
+if ( ${?IP330} ) then
+	setenv QTDMDP ${QTDMDP}:${IP330}/ip330App/op/ui
+	setenv QTDMDP ${QTDMDP}:${IP330}/ip330App/op/ui/autoconvert
+endif
+if ( ${?IPUNIDIG} ) then
+	setenv QTDMDP ${QTDMDP}:${IPUNIDIG}/ipUnidigApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${IPUNIDIG}/ipUnidigApp/op/ui/autoconvert
+endif
+if ( ${?LOVE} ) then
+	setenv QTDMDP ${QTDMDP}:${LOVE}/loveApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${LOVE}/loveApp/op/ui/autoconvert
+endif
+if ( ${?MCA} ) then
+	setenv QTDMDP ${QTDMDP}:${MCA}/mcaApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${MCA}/mcaApp/op/ui/autoconvert
+endif
+if ( ${?MEASCOMP} ) then
+	setenv QTDMDP ${QTDMDP}:${MEASCOMP}/measCompApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${MEASCOMP}/measCompApp/op/ui/autoconvert
+endif
+if ( ${?MODBUS} ) then
+	setenv QTDMDP ${QTDMDP}:${MODBUS}/modbusApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${MODBUS}/modbusApp/op/ui/autoconvert
+endif
+if ( ${?MOTOR} ) then
+	setenv QTDMDP ${QTDMDP}:${MOTOR}/motorApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${MOTOR}/motorApp/op/ui/autoconvert
+endif
+if ( ${?OPTICS} ) then
+	setenv QTDMDP ${QTDMDP}:${OPTICS}/opticsApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${OPTICS}/opticsApp/op/ui/autoconvert
+endif
+if ( ${?QUADEM} ) then
+	setenv QTDMDP ${QTDMDP}:${QUADEM}/quadEMApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${QUADEM}/quadEMApp/op/ui/autoconvert
+endif
+if ( ${?SOFTGLUE} ) then
+	setenv QTDMDP ${QTDMDP}:${SOFTGLUE}/softGlueApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${SOFTGLUE}/softGlueApp/op/ui/autoconvert
+endif
+if ( ${?SSCAN} ) then
+	setenv QTDMDP ${QTDMDP}:${SSCAN}/sscanApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${SSCAN}/sscanApp/op/ui/autoconvert
+endif
+if ( ${?STD} ) then
+	setenv QTDMDP ${QTDMDP}:${STD}/stdApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${STD}/stdApp/op/ui/autoconvert
+endif
+if ( ${?VAC} ) then
+	setenv QTDMDP ${QTDMDP}:${VAC}/vacApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${VAC}/vacApp/op/ui/autoconvert
+endif
+if ( ${?VME} ) then
+	setenv QTDMDP ${QTDMDP}:${VME}/vmeApp/op/ui
+	setenv QTDMDP ${QTDMDP}:${VME}/vmeApp/op/ui/autoconvert
+endif
+
+setenv QTDMDP ${QTDMDP}:/APSshare/adlsys/sr/id
+
+if (! ${?CAQTDM_DISPLAY_PATH}) then
+	setenv CAQTDM_DISPLAY_PATH ${QTDMDP}
+else
+	setenv CAQTDM_DISPLAY_PATH ${QTDMDP}:${CAQTDM_DISPLAY_PATH}
+endif
 
 # 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
-setenv EPICS_CA_MAX_ARRAY_BYTES 64008
+#setenv EPICS_CA_MAX_ARRAY_BYTES 2001000
+setenv EPICS_CA_MAX_ARRAY_BYTES 10000100
+
+# caputRecorder
+setenv START_PUTRECORDER ${EPICS_APP}/start_putrecorder
+setenv EDITOR nedit
-- 
GitLab