epics-base-rs 0.27.0

Pure Rust EPICS IOC core — record system, database, iocsh, calc engine
Documentation
# Device menus — the `device()` declarations for every record type this port
# vendors a `.dbd` for.
#
# C builds one `dbDeviceMenu` per record type out of these, in LOAD order, and
# the record's DTYP field is an INDEX into it: an unset DTYP is index 0, the
# first device declared for that type. `dbConvert.c::getDeviceString` renders
# that index as its choice string, which is why a C `softIoc` answers
# `caget -t REC.DTYP` with "Soft Channel" for a bare `record(ai,"X"){}` and with
# "" for a record type that declares no device support at all. The order below
# is therefore wire-visible and is copied verbatim, not sorted.
#
# Provenance (this machine):
#   base       — epics-base/dbd/softIoc.dbd, the expanded dbd the C IOC loads,
#                in its load order.
#   scalcout   — epics-modules/calc/calcApp/src/calcSupport_LOCAL.dbd
#   acalcout   — epics-modules/calc/calcApp/src/calcSupport_LOCAL.dbd
#   swait      — epics-modules/calc/calcApp/src/calcSupport_withSSCAN.dbd
#   busy       — epics-modules/busy/busyApp/src/busySupport_LOCAL.dbd
#   asyn       — epics-modules/asyn/asyn/asynRecord/devAsynRecord.dbd
#
# A record type absent from this file declares no device support (calc, sub,
# aSub, fanout, dfanout, sel, seq, sseq, state, permissive, transform,
# compress) — C serves its DTYP as the empty string.

device(aai, CONSTANT, devAaiSoft, "Soft Channel")
device(aao, CONSTANT, devAaoSoft, "Soft Channel")
device(ai, CONSTANT, devAiSoft, "Soft Channel")
device(ai, CONSTANT, devAiSoftRaw, "Raw Soft Channel")
device(ai, CONSTANT, devAiSoftCallback, "Async Soft Channel")
device(ai, INST_IO, devTimestampAI, "Soft Timestamp")
device(ai, INST_IO, devAiGeneralTime, "General Time")
device(ao, CONSTANT, devAoSoft, "Soft Channel")
device(ao, CONSTANT, devAoSoftRaw, "Raw Soft Channel")
device(ao, CONSTANT, devAoSoftCallback, "Async Soft Channel")
device(bi, CONSTANT, devBiSoft, "Soft Channel")
device(bi, CONSTANT, devBiSoftRaw, "Raw Soft Channel")
device(bi, CONSTANT, devBiSoftCallback, "Async Soft Channel")
device(bi, INST_IO, devBiDbState, "Db State")
device(bo, CONSTANT, devBoSoft, "Soft Channel")
device(bo, CONSTANT, devBoSoftRaw, "Raw Soft Channel")
device(bo, CONSTANT, devBoSoftCallback, "Async Soft Channel")
device(bo, INST_IO, devBoGeneralTime, "General Time")
device(bo, INST_IO, devBoDbState, "Db State")
device(calcout, CONSTANT, devCalcoutSoft, "Soft Channel")
device(calcout, CONSTANT, devCalcoutSoftCallback, "Async Soft Channel")
device(event, CONSTANT, devEventSoft, "Soft Channel")
device(histogram, CONSTANT, devHistogramSoft, "Soft Channel")
device(int64in, CONSTANT, devI64inSoft, "Soft Channel")
device(int64in, CONSTANT, devI64inSoftCallback, "Async Soft Channel")
device(int64out, CONSTANT, devI64outSoft, "Soft Channel")
device(int64out, CONSTANT, devI64outSoftCallback, "Async Soft Channel")
device(longin, CONSTANT, devLiSoft, "Soft Channel")
device(longin, CONSTANT, devLiSoftCallback, "Async Soft Channel")
device(longin, INST_IO, devLiGeneralTime, "General Time")
device(longout, CONSTANT, devLoSoft, "Soft Channel")
device(longout, CONSTANT, devLoSoftCallback, "Async Soft Channel")
device(lsi, CONSTANT, devLsiSoft, "Soft Channel")
device(lsi, INST_IO, devLsiEnviron, "getenv")
device(lso, CONSTANT, devLsoSoft, "Soft Channel")
device(lso, CONSTANT, devLsoSoftCallback, "Async Soft Channel")
device(lso, INST_IO, devLsoStdio, "stdio")
device(mbbi, CONSTANT, devMbbiSoft, "Soft Channel")
device(mbbi, CONSTANT, devMbbiSoftRaw, "Raw Soft Channel")
device(mbbi, CONSTANT, devMbbiSoftCallback, "Async Soft Channel")
device(mbbiDirect, CONSTANT, devMbbiDirectSoft, "Soft Channel")
device(mbbiDirect, CONSTANT, devMbbiDirectSoftRaw, "Raw Soft Channel")
device(mbbiDirect, CONSTANT, devMbbiDirectSoftCallback, "Async Soft Channel")
device(mbbo, CONSTANT, devMbboSoft, "Soft Channel")
device(mbbo, CONSTANT, devMbboSoftRaw, "Raw Soft Channel")
device(mbbo, CONSTANT, devMbboSoftCallback, "Async Soft Channel")
device(mbboDirect, CONSTANT, devMbboDirectSoft, "Soft Channel")
device(mbboDirect, CONSTANT, devMbboDirectSoftRaw, "Raw Soft Channel")
device(mbboDirect, CONSTANT, devMbboDirectSoftCallback, "Async Soft Channel")
device(printf, CONSTANT, devPrintfSoft, "Soft Channel")
device(printf, CONSTANT, devPrintfSoftCallback, "Async Soft Channel")
device(printf, INST_IO, devPrintfStdio, "stdio")
device(stringin, CONSTANT, devSiSoft, "Soft Channel")
device(stringin, CONSTANT, devSiSoftCallback, "Async Soft Channel")
device(stringin, INST_IO, devTimestampSI, "Soft Timestamp")
device(stringin, INST_IO, devSiGeneralTime, "General Time")
device(stringin, INST_IO, devSiEnviron, "getenv")
device(stringout, CONSTANT, devSoSoft, "Soft Channel")
device(stringout, CONSTANT, devSoSoftCallback, "Async Soft Channel")
device(stringout, INST_IO, devSoStdio, "stdio")
device(subArray, CONSTANT, devSASoft, "Soft Channel")
device(waveform, CONSTANT, devWfSoft, "Soft Channel")

# synApps calc
device(scalcout, CONSTANT, devsCalcoutSoft, "Soft Channel")
device(acalcout, CONSTANT, devaCalcoutSoft, "Soft Channel")
device(swait, CONSTANT, devSWaitIoEvent, "Soft Channel")

# synApps busy
device(busy, CONSTANT, devBusySoft, "Soft Channel")
device(busy, CONSTANT, devBusySoftRaw, "Raw Soft Channel")

# asyn
device(asyn, INST_IO, asynRecordDevice, "asynRecordDevice")