fastcs.transports.epics.emission#
Per-controller GUI / docs file emission for the EPICS transports.
D4 of #351: each transport produces output_dir/{id}{ext} for every
configured controller plus an index{ext} file linking to them. The
index is always emitted – even for a single controller – so the file
layout is stable as the number of controllers changes. Controllers
appear in the index in the order they were declared in fastcs.yaml,
which is the order in which controller_apis is passed in.
Members
Per-flavour |
|
Write |
|
Write |
- fastcs.transports.epics.emission.GUIBuilder#
Per-flavour
EpicsGUIconstructor (CA bare PV / PVApva://PV).alias of
Callable[[ControllerAPI],EpicsGUI]
- fastcs.transports.epics.emission.emit_gui_files(controller_apis: list[ControllerAPI], options: EpicsGUIOptions, gui_builder: Callable[[ControllerAPI], EpicsGUI]) None[source]#
Write
{id}{ext}per controller plus an index file inoutput_dir.gui_builderlets each EPICS transport pick its PV-flavoured GUI builder (CA’sEpicsGUIwrites bare PVs; PVA’sPvaEpicsGUIprefixes them withpva://). An index file with oneDeviceRefbutton per controller sits at the root ofoutput_dirregardless of how many controllers there are; controllers appear in the order they were declared infastcs.yaml(i.e. the order ofcontroller_apis).
- fastcs.transports.epics.emission.emit_docs_files(controller_apis: list[ControllerAPI], options: EpicsDocsOptions) None[source]#
Write
{id}.mdper controller plusindex.mdinoutput_dir.Each per-controller file lists the controller’s attributes and commands as a flat reference page. The index links to each one in declaration order, mirroring the GUI emission.