synApps#
Ophyd-style support for EPICS synApps structures (records and databases).
For complete API details see the Full API Reference.
EXAMPLES:
import apstools.synApps
calcs = apstools.synApps.userCalcsDevice("xxx:", name="calcs")
scans = apstools.synApps.SscanDevice("xxx:", name="scans")
scripts = apstools.synApps.userScriptsDevice("xxx:set1:", name="scripts")
xxxstats = apstools.synApps.IocStatsDevice("xxx:", name="xxxstats")
calc1 = calcs.calc1
apstools.synApps.swait_setup_random_number(calc1)
apstools.synApps.swait_setup_incrementer(calcs.calc2)
calc1.reset()
Categories#
Support the default structures as provided by the synApps template XXX [1] IOC. Also support, as needed, for structures from EPICS base.
Records#
EPICS asyn record support |
|
EPICS synApps busy record |
|
EPICS base calcout record support |
|
EPICS synApps epid record support |
|
EPICS synApps luascript record |
|
EPICS synApps scalcout record support |
|
EPICS synApps sscan record |
|
EPICS synApps sseq record support |
|
EPICS base sub record support |
|
EPICS synApps swait record |
|
EPICS transform record support |
The ophyd-style Devices for these records rely on common structures:
|
fields common to all EPICS records |
|
fields common to EPICS records supporting floating point values |
|
fields common to EPICS input records |
|
fields common to EPICS output records |
Databases#
quickly re-arrange steps in an sseq record |
|
synApps IOC stats |
|
synApps optics 2slit.db 1D support: xn, xp, size, center, sync |
|
synApps optics 2slit.db 2D support: h.xn, h.xp, v.xn, v.xp |
|
synApps optics 2slit.db 2D support: inb, out, bot, top |
|
synApps saveData support |
|
synApps XXX IOC setup of sscan records |
|
synApps XXX IOC setup of user averaging sub records |
|
single instance of the user average sub record |
|
single instance of the userCalcN database |
|
synApps XXX IOC setup of user calcouts |
|
single instance of the userCalcoutN database |
|
synApps XXX IOC setup of userCalcs |
|
synApps XXX IOC setup of user scalcouts |
|
single instance of the userStringCalcN database |
|
synApps XXX IOC setup of user lua scripts |
|
synApps XXX IOC setup of userStringSeqs |
|
single instance of the userStringSeqN database |
|
single instance of the userTranN database |
|
synApps XXX IOC setup of userTransforms |
Common support structures:
channel of a calcout record: A–L |
|
|
supports |
number input of a luascript record: A–J |
|
string input of a luascript record: AA–JJ |
|
number channel of a scalcout record: A–L |
|
string channel of a scalcout record: AA–LL |
|
number channel of a sub record: A–L |
|
single channel of a swait record: A–L |
Other Support#
These functions configure calcout or swait records for certain algorithms.
set up calcout record for a noisy Gaussian |
|
set up swait record for a noisy Gaussian |
|
set up calcout record as an incrementer |
|
set up swait record as an incrementer |
|
set up calcout record for a noisy Lorentzian |
|
set up swait record for a noisy Lorentzian |
|
set up swait record to generate random numbers |
All Submodules#
- EPICS Record support: common structures
- EPICS base aCalcout record
- synApps asyn record
- synApps busy record
- EPICS base calcout record
- EPICS synApps optics 2slit.db
- synApps epid record
- synApps IOC statistics
- synApps luascript record
- synApps save data
- EPICS synApps calc scalcout record
- synApps sscan record
- synApps sseq record
- EPICS base sub record & synApps userAve records
- synApps swait record
- synApps transform record