Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
X
xxx-R6-1
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Code
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Deploy
Releases
Model registry
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Issue analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
synApps_6_1_Working
xxx-R6-1
Commits
95d9c05f
Commit
95d9c05f
authored
6 years ago
by
klang
Browse files
Options
Downloads
Patches
Plain Diff
Updated bash startup scripts
parent
1d4e29d0
No related branches found
No related tags found
No related merge requests found
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
setup_epics_common.sh
+219
-0
219 additions, 0 deletions
setup_epics_common.sh
start_MEDM_xxx.sh
+5
-52
5 additions, 52 deletions
start_MEDM_xxx.sh
start_caQtDM_xxx.sh
+9
-145
9 additions, 145 deletions
start_caQtDM_xxx.sh
with
233 additions
and
197 deletions
setup_epics_common.sh
0 → 100644
+
219
−
0
View file @
95d9c05f
#!/bin/bash -f
DISPLAY_MANAGER
=
$1
# caller (typically: start_****_xxx) MUST define:
# EPICS_APP - Top level IOC directory
# EPICS_APP_ADL_DIR - Location of adl file directory
# EPICS_APP_UI_DIR - Location of ui file directory
# and must make this definition if the app name isn't the directory name:
# EPICS_APP_NAME - different app name
if
[
""
!=
"
${
EPICS_APP_NAME
}
"
]
;
then
EPICS_APP_NAME
=
`
basename
${
EPICS_APP
}
`
fi
#######################################
# support function to simplify repetitive task,
# used to build up displaty path of supported modules
#
# usage::
#
# addModule ENVIRONMENT_VARIABLE DISPLAY_TYPE [SUBDIRECTORY]
#
# TMP is a temporary display path
# TMP is internal to this script, no need to export.
function
addModule
{
# $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
[
"
$2
"
!=
"
${
DISPLAY_MANAGER
}
"
]
;
then
return
0
fi
if
[
""
!=
"
${
module
}
"
]
;
then
# module is required
addition
=
${
module_path
}
if
[
""
!=
"
$3
"
]
;
then
# optional subdirectory path
addition+
=
/
$3
fi
if
[
-d
"
${
addition
}
"
]
;
then
# proceed ONLY if new addition path exists
# Then, can define paths to all area detectors specific screens
if
[
""
==
"
${
TMP
}
"
]
;
then
# no existing path defined, start here
TMP
=
.
fi
TMP+
=
:
${
addition
}
fi
fi
}
#######################################
# get environment variables for support modules
output
=
`
perl
-s
$EPICS_APP
/release.pl
-form
=
bash
$EPICS_APP
`
eval
$output
# ======== ================ =============== ===========================
# function MODULE_VARIABLE Display Manager subdirectory with .ui files
# ======== ================ =============== ===========================
addModule EPICS_APP_ADL_DIR medm
addModule EPICS_APP_UI_DIR caqtdm
addModule EPICS_APP_UI_DIR caqtdm /autoconvert
addModule ALIVE medm /aliveApp/op/adl
addModule ALIVE caqtdm /aliveApp/op/ui
addModule ALIVE caqtdm /aliveApp/op/ui/autoconvert
addModule AREA_DETECTOR medm /ADCore/ADApp/op/adl
addModule AREA_DETECTOR caqtdm /ADCore/ADApp/op/ui
addModule AREA_DETECTOR caqtdm /ADCore/ADApp/op/ui/autoconvert
addModule ADSIMDETECTOR medm /simDetectorApp/op/adl
addModule ADSIMDETECTOR caqtdm /simDetectorApp/op/ui
addModule ADSIMDETECTOR caqtdm /simDetectorApp/op/ui/autoconvert
addModule ADURL medm /urlApp/op/adl
addModule ADURL caqtdm /urlApp/op/ui
addModule ADURL caqtdm /urlApp/op/ui/autoconvert
addModule ASYN medm /opi/medm
addModule ASYN caqtdm /opi/caqtdm
addModule ASYN caqtdm /opi/caqtdm/autoconvert
addModule AUTOSAVE medm /asApp/op/adl
addModule AUTOSAVE caqtdm /asApp/op/ui
addModule AUTOSAVE caqtdm /asApp/op/ui/autoconvert
addModule BUSY medm /busyApp/op/adl
addModule BUSY caqtdm /busyApp/op/ui
addModule BUSY caqtdm /busyApp/op/ui/autoconvert
addModule CALC medm /calcApp/op/adl
addModule CALC caqtdm /calcApp/op/ui
addModule CALC caqtdm /calcApp/op/ui/autoconvert
addModule CAMAC medm /camacApp/op/adl
addModule CAMAC caqtdm /camacApp/op/ui
addModule CAMAC caqtdm /camacApp/op/ui/autoconvert
addModule CAPUTRECORDER medm /caputRecorderApp/op/adl
addModule CAPUTRECORDER caqtdm /caputRecorderApp/op/ui
addModule CAPUTRECORDER caqtdm /caputRecorderApp/op/ui/autoconvert
addModule DAC128V medm /dac128VApp/op/adl
addModule DAC128V caqtdm /dac128VApp/op/ui
addModule DAC128V caqtdm /dac128VApp/op/ui/autoconvert
addModule DELAYGEN medm /delaygenApp/op/adl
addModule DELAYGEN caqtdm /delaygenApp/op/ui
addModule DELAYGEN caqtdm /delaygenApp/op/ui/autoconvert
addModule DXP medm /dxpApp/op/ui
addModule DXP caqtdm /dxpApp/op/ui
addModule DXP caqtdm /dxpApp/op/ui/autoconvert
addModule DXPSITORO medm /dxpSITOROApp/op/adl
addModule DXPSITORO caqtdm /dxpSITOROApp/op/ui
addModule DXPSITORO caqtdm /dxpSITOROApp/op/ui/autoconvert
addModule DEVIOCSTATS medm /op/adl
addModule DEVIOCSTATS caqtdm /op/ui
addModule DEVIOCSTATS caqtdm /op/ui/autoconvert
addModule FLY medm /flyApp/op/adl
addModule FLY caqtdm /flyApp/op/ui
addModule FLY caqtdm /flyApp/op/ui/autoconvert
addModule IP medm /ipApp/op/adl
addModule IP caqtdm /ipApp/op/ui
addModule IP caqtdm /ipApp/op/ui/autoconvert
addModule IP330 medm /ip330App/op/adl
addModule IP330 caqtdm /ip330App/op/ui
addModule IP330 caqtdm /ip330App/op/ui/autoconvert
addModule IPUNIDIG medm /ipUnidigApp/op/adl
addModule IPUNIDIG caqtdm /ipUnidigApp/op/ui
addModule IPUNIDIG caqtdm /ipUnidigApp/op/ui/autoconvert
addModule LOVE medm /loveApp/op/adl
addModule LOVE caqtdm /loveApp/op/ui
addModule LOVE caqtdm /loveApp/op/ui/autoconvert
addModule LUA medm /luaApp/op/adl
addModule LUA caqtdm /luaApp/op/ui
addModule LUA caqtdm /luaApp/op/ui/autoconvert
addModule MCA medm /mcaApp/op/adl
addModule MCA caqtdm /mcaApp/op/ui
addModule MCA caqtdm /mcaApp/op/ui/autoconvert
addModule MODBUS medm /modbusApp/op/adl
addModule MODBUS caqtdm /modbusApp/op/ui
addModule MODBUS caqtdm /modbusApp/op/ui/autoconvert
addModule MOTOR medm /motorApp/op/adl
addModule MOTOR caqtdm /motorApp/op/ui
addModule MOTOR caqtdm /motorApp/op/ui/autoconvert
addModule OPTICS medm /opticsApp/op/adl
addModule OPTICS caqtdm /opticsApp/op/ui
addModule OPTICS caqtdm /opticsApp/op/ui/autoconvert
addModule QUADEM medm /quadEMApp/op/adl
addModule QUADEM caqtdm /quadEMApp/op/ui
addModule QUADEM caqtdm /quadEMApp/op/ui/autoconvert
addModule SOFTGLUE medm /softGlueApp/op/adl
addModule SOFTGLUE caqtdm /softGlueApp/op/ui
addModule SOFTGLUE caqtdm /softGlueApp/op/ui/autoconvert
addModule SSCAN medm /sscanApp/op/adl
addModule SSCAN caqtdm /sscanApp/op/ui
addModule SSCAN caqtdm /sscanApp/op/ui/autoconvert
addModule STD medm /stdApp/op/adl
addModule STD caqtdm /stdApp/op/ui
addModule STD caqtdm /stdApp/op/ui/autoconvert
addModule TDS3000 medm /medm
addModule VAC medm /vacApp/op/adl
addModule VAC caqtdm /vacApp/op/ui
addModule VAC caqtdm /vacApp/op/ui/autoconvert
addModule VME medm /vmeApp/op/adl
addModule VME caqtdm /vmeApp/op/ui
addModule VME caqtdm /vmeApp/op/ui/autoconvert
addModule YOKOGAWA_DAU medm /mw100App/op/adl
addModule YOKOGAWA_DAU caqtdm /mw100App/op/ui
addModule YOKOGAWA_DAU caqtdm /mw100App/op/ui/autoconvert
# ======== ================ ===========================
if
[
"
$DISPLAY_MANAGER
"
==
"medm"
]
;
then
if
[
-z
"
$EPICS_DISPLAY_PATH
"
]
;
then
export
EPICS_DISPLAY_PATH
=
${
TMP
}
else
export
EPICS_DISPLAY_PATH
=
${
TMP
}
:
${
EPICS_DISPLAY_PATH
}
fi
fi
if
[
"
$DISPLAY_MANAGER
"
==
"caqtdm"
]
;
then
if
[
-z
"
$CAQTDM_DISPLAY_PATH
"
]
;
then
export
CAQTDM_DISPLAY_PATH
=
${
TMP
}
else
export
CAQTDM_DISPLAY_PATH
=
${
TMP
}
:
${
CAQTDM_DISPLAY_PATH
}
fi
fi
This diff is collapsed.
Click to expand it.
start_MEDM_xxx.sh
+
5
−
52
View file @
95d9c05f
#!/bin/bash
EPICS_APP
=
/home/oxygen/MOONEY/epics/synApps_5_5/support/xxx
EPICS_APP_ADL_DIR
=
${
EPICS_APP
}
/xxxApp/op/adl
export
EPICS_APP
=
`
dirname
$0
`
export
EPICS_APP_ADL_DIR
=
${
EPICS_APP
}
/xxxApp/op/adl
export
DEFAULT_UI_FILE
=
${
DEFAULT_UI_FILE
:-
xxx
.ui
}
output
=
`
perl
-s
${
EPICS_APP
}
/release.pl
-form
=
bash
${
EPICS_APP
}
`
eval
$output
#######################################
# Prepare MEDM path
# EDP is temporary EPICS_DISPLAY_PATH
#
function
append_EDP
{
# note: in bash, macros are not expanded in aliases
if
[
-d
$1
]
# this will keep keep out nonexistent directories
then
EDP
=
${
EDP
}
:
$1
fi
}
EDP
=
.
append_EDP
${
EPICS_APP_ADL_DIR
}
append_EDP
${
ALIVE
}
/aliveApp/op/adl
append_EDP
${
AREA_DETECTOR
}
/ADApp/op/adl
append_EDP
${
AUTOSAVE
}
/asApp/op/adl
append_EDP
${
BUSY
}
/busyApp/op/adl
append_EDP
${
CALC
}
/calcApp/op/adl
append_EDP
${
CAMAC
}
/camacApp/op/adl
append_EDP
${
CAPUTRECORDER
}
/caputRecorderApp/op/adl
append_EDP
${
DAC128V
}
/dac128VApp/op/adl
append_EDP
${
DELAYGEN
}
/delaygenApp/op/adl
append_EDP
${
DEVIOCSTATS
}
/op/adl
append_EDP
${
DXP
}
/dxpApp/op/adl
append_EDP
${
IP
}
/ipApp/op/adl
append_EDP
${
IP330
}
/ip330App/op/adl
append_EDP
${
IPUNIDIG
}
/ipUnidigApp/op/adl
append_EDP
${
LOVE
}
/loveApp/op/adl
append_EDP
${
MCA
}
/mcaApp/op/adl
append_EDP
${
MOTOR
}
/motorApp/op/adl
append_EDP
${
OPTICS
}
/opticsApp/op/adl
append_EDP
${
QUADEM
}
/quadEMApp/op/adl
append_EDP
${
SSCAN
}
/sscanApp/op/adl
append_EDP
${
STD
}
/stdApp/op/adl
append_EDP
${
VME
}
/vmeApp/op/adl
append_EDP
${
ASYN
}
/opi/medm
append_EDP
${
VAC
}
/vacApp/op/adl
append_EDP
${
SOFTGLUE
}
/softGlueApp/op/adl
if
[
-z
"
$EPICS_DISPLAY_PATH
"
]
then
export
EPICS_DISPLAY_PATH
=
${
EDP
}
else
export
EPICS_DISPLAY_PATH
=
${
EDP
}
:
${
EPICS_DISPLAY_PATH
}
fi
echo
${
EPICS_DISPLAY_PATH
}
source
./setup_epics_common.sh medm
if
[
-z
"
${
MEDM_EXEC_LIST
}
"
]
then
...
...
@@ -67,5 +21,4 @@ export START_PUTRECORDER=${EPICS_APP}/start_putrecorder
export
MACROS_PY
=
${
EPICS_APP_ADL_DIR
}
/../python/macros.py
export
EDITOR
=
nedit
cd
${
EPICS_APP
}
/xxxApp/op/adl
medm xxx.adl&
medm
-x
xxx.adl&
This diff is collapsed.
Click to expand it.
start_caQtDM_xxx.sh
+
9
−
145
View file @
95d9c05f
...
...
@@ -4,160 +4,26 @@ export EPICS_APP=`dirname $0`
export
EPICS_APP_UI_DIR
=
${
EPICS_APP
}
/xxxApp/op/ui
export
DEFAULT_UI_FILE
=
${
DEFAULT_UI_FILE
:-
xxx
.ui
}
source
./setup_epics_common.sh caqtdm
#######################################
# support function to simplify repetitive task,
# used to build up displaty path of supported modules
#
# usage::
#
# addModule ENVIRONMENT_VARIABLE [SUBDIRECTORY]
#
# QTDMDP is temporary CAQTDM_DISPLAY_PATH
# QTDMDP is internal to this script, no need to export.
function
addModule
{
# $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
# module is required
addition
=
${
module_path
}
if
[
""
!=
"
$2
"
]
;
then
# optional subdirectory path
addition+
=
/
$2
fi
if
[
-d
"
${
addition
}
"
]
;
then
# proceed ONLY if new addition path exists
# Then, can define paths to all area detectors specific screens
if
[
""
==
"
${
QTDMDP
}
"
]
;
then
# no existing path defined, start here
QTDMDP
=
.
fi
QTDMDP+
=
:
${
addition
}
fi
fi
}
#######################################
# get environment variables for support modules
output
=
`
perl
-s
$EPICS_APP
/release.pl
-form
=
bash
$EPICS_APP
`
eval
$output
#######################################
# add support for modules defined by environment variables
# modules are *appended* to the growing list of directories
if
[
""
==
"
${
ADSIMDETECTOR
}
"
]
;
then
export
ADSIMDETECTOR
=
${
AREA_DETECTOR
}
/ADSimDetector-R2-4
fi
# ======== ================ ===========================
# function MODULE_VARIABLE subdirectory with .ui files
# ======== ================ ===========================
addModule EPICS_APP_UI_DIR
addModule ALIVE ./aliveApp/op/ui
addModule AREA_DETECTOR ./ADCore/ADApp/op/ui
addModule ADCORE ./ADApp/op/ui
addModule ADSIMDETECTOR ./simDetectorApp/op/ui
addModule ADURL ./urlApp/op/ui
addModule ASYN ./opi/caqtdm
addModule AUTOSAVE ./asApp/op/ui
addModule BUSY ./busyApp/op/ui
addModule CALC ./calcApp/op/ui
addModule CAMAC ./camacApp/op/ui
addModule CAPUTRECORDER ./caputRecorderApp/op/ui
addModule DAC128V ./dac128VApp/op/ui
addModule DELAYGEN ./delaygenApp/op/ui
addModule DXP ./dxpApp/op/ui
addModule DEVIOCSTATS ./op/ui
addModule IP ./ipApp/op/ui
addModule IP330 ./ip330App/op/ui
addModule IPUNIDIG ./ipUnidigApp/op/ui
addModule LOVE ./loveApp/op/ui
addModule MCA ./mcaApp/op/ui
addModule MODBUS ./modbusApp/op/ui
addModule MOTOR ./motorApp/op/ui
addModule OPTICS ./opticsApp/op/ui
addModule QUADEM ./quadEMApp/op/ui
addModule SOFTGLUE ./softGlueApp/op/ui
addModule SSCAN ./sscanApp/op/ui
addModule STD ./stdApp/op/ui
addModule VAC ./vacApp/op/ui
addModule VME ./vmeApp/op/ui
addModule AREA_DETECTOR ./ADCore/ADApp/op/ui/autoconvert
addModule ADCORE ./ADApp/op/ui/autoconvert
addModule ADSIMDETECTOR ./simDetectorApp/op/ui/autoconvert
addModule ADURL ./urlApp/op/ui/autoconvert
addModule ASYN ./opi/caqtdm/autoconvert
addModule AUTOSAVE ./asApp/op/ui/autoconvert
addModule BUSY ./busyApp/op/ui/autoconvert
addModule CALC ./calcApp/op/ui/autoconvert
addModule CAMAC ./camacApp/op/ui/autoconvert
addModule CAPUTRECORDER ./caputRecorderApp/op/ui/autoconvert
addModule DAC128V ./dac128VApp/op/ui/autoconvert
addModule DELAYGEN ./delaygenApp/op/ui/autoconvert
addModule DXP ./dxpApp/op/ui/autoconvert
addModule DEVIOCSTATS ./op/ui/autoconvert
addModule IP ./ipApp/op/ui/autoconvert
addModule IP330 ./ip330App/op/ui/autoconvert
addModule IPUNIDIG ./ipUnidigApp/op/ui/autoconvert
addModule LOVE ./loveApp/op/ui/autoconvert
addModule MCA ./mcaApp/op/ui/autoconvert
addModule MODBUS ./modbusApp/op/ui/autoconvert
addModule MOTOR ./motorApp/op/ui/autoconvert
addModule OPTICS ./opticsApp/op/ui/autoconvert
addModule QUADEM ./quadEMApp/op/ui/autoconvert
addModule SOFTGLUE ./softGlueApp/op/ui/autoconvert
addModule SSCAN ./sscanApp/op/ui/autoconvert
addModule STD ./stdApp/op/ui/autoconvert
addModule VAC ./vacApp/op/ui/autoconvert
addModule VME ./vmeApp/op/ui/autoconvert
# ======== ================ ===========================
#######################################
# optional: add support directories not associated with environment variables
# #######################################
# # optional: add support directories not associated with environment variables
if
[
-z
"/APSshare/caqtdm"
]
;
then
QTDM
DP
=
${
QTDMDP
}
:/APSshare/uisys/sr/id
CA
QTDM
_DISPLAY_PATH
=
$CAQTDM_DISPLAY_PATH
:/APSshare/uisys/sr/id
fi
#######################################
# 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
# #######################################
# # 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
=
8000100
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
...
...
@@ -205,9 +71,7 @@ fi
#######################################
# start caQtDM
#caQtDM -noMsg xxx.ui &
# allow for command line option to specify the file to be opened
caQtDM
-style
plastique
-noMsg
${
1
:-${
DEFAULT_UI_FILE
}}
/APSshare/bin/caQtDM
-style
plastique
-noMsg
${
1
:-${
DEFAULT_UI_FILE
}}
# TODO: what about ALL command line parameters? "$*"
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment