From 2abb1806ecce8c9c2078dc4e36722a8e3a7e252b Mon Sep 17 00:00:00 2001 From: Marcell Nagy Date: Mon, 1 Jul 2024 10:19:48 +0000 Subject: [PATCH 1/7] Add genicam auto db and pvi generation --- ADAravis/ADAravis.ibek.support.yaml | 63 +- ADAravis/arvFeature.pvi.device.yaml | 2 +- ADAravis/install.sh | 2 +- ADGenICam/ADGenICam.pvi.device.yaml | 5205 --------------------------- ADGenICam/install.sh | 5 + 5 files changed, 13 insertions(+), 5264 deletions(-) delete mode 100644 ADGenICam/ADGenICam.pvi.device.yaml diff --git a/ADAravis/ADAravis.ibek.support.yaml b/ADAravis/ADAravis.ibek.support.yaml index 9a51569..1a35f98 100644 --- a/ADAravis/ADAravis.ibek.support.yaml +++ b/ADAravis/ADAravis.ibek.support.yaml @@ -5,7 +5,7 @@ module: ADAravis entity_models: - name: aravisCamera description: |- - Creates a aravisCamera camera areaDetector driver + Creates an aravisCamera camera areaDetector driver parameters: P: type: str @@ -27,53 +27,6 @@ entity_models: description: |- Cam ip address, hostname, MAC address, or ID -, (e.g. Prosilica-02-2166A-06844) - CLASS: - type: enum - description: |- - Camera class for custom commands - values: - Basler-a2A2600-20gmBAS: - Basler-scA1400-30gm: - Basler-scA1300-32gm: - Basler-scA640-70gm: - Basler-acA640-90gm: - Basler-acA640-300gm: - Basler-acA1300-30gm: - Basler-acA1300-60gm: - Basler-acA1300-75gm: - Basler_piA640_210gm: - AVT_Manta_G319B: - AVT_Mako_G040B: - AVT_Manta_G2460C: - AVT_Mako_G125B: - AVT_Mako_G125C: - AVT_Prosilica_GC1280M: - AVT_Mako_1_52: - AVT_Manta_G507B: - AVT_Manta_G145B: - AVT_Mako_G507B: - AVT_Mako_G507C: - AVT_Prosilica_GT5120: - AVT_Mako_G319C: - AVT_Manta_G419C: - AVT_Prosilica_GC1020C: - AVT_Prosilica_GC655C: - XIMEA_MC124CG-SY: - JAI_CM140_v2-2: - Prosilica_GC: - AVT_Manta_G125B: - AVT_Manta_G125C: - AVT_Manta_G040B: - AVT_Manta_G895B: - AVT_Mako_G158B: - AVT_Mako_G158C: - AVT_Manta_G235B: - AVT_Manta_G235C: - AVT_Manta_1_44: - AVT_Mako_G234C: - AVT_Mako_G234B: - AVT_Manta_G609B: - JAI_CM140: BUFFERS: type: int description: |- @@ -100,6 +53,10 @@ entity_models: pre_init: - value: | + system "arv-tool-0.8 -a {{ID}} genicam > /epics/runtime/genicam.xml" + system "python /epics/support/ADGenICam/scripts/makeDb.py /epics/runtime/genicam.xml /epics/runtime/genicam.template" + dbLoadRecords /epics/runtime/genicam.template "P={{ P }},R={{ R }},PORT={{ PORT }}" + system "pvi convert device --template /epics/runtime/genicam.template /epics/pvi-defs/ /epics/support/ADGenICam/include/ADGenICam.h" # aravisConfig(const char *portName, const char *cameraName, size_t maxMemory, int priority, int stackSize) aravisConfig("{{PORT}}", "{{ID}}", {{MEMORY}}, 0, 1) @@ -112,14 +69,6 @@ entity_models: TIMEOUT: ADDR: - - file: $(ADGENICAM)/db/{{CLASS}}.template - args: - P: - R: - PORT: - TIMEOUT: - ADDR: - pvi: yaml_path: ADDriver.pvi.device.yaml ui_macros: @@ -130,7 +79,7 @@ entity_models: - name: aravisSettings description: |- - Creates detailed settings screens for and Aravis camera + Creates detailed settings screens for an Aravis camera parameters: camera: type: object diff --git a/ADAravis/arvFeature.pvi.device.yaml b/ADAravis/arvFeature.pvi.device.yaml index 662dc56..bec1424 100644 --- a/ADAravis/arvFeature.pvi.device.yaml +++ b/ADAravis/arvFeature.pvi.device.yaml @@ -1,5 +1,5 @@ label: arvFeature -parent: ADDriver +parent: ADGenICam children: - type: Group name: ADAravis diff --git a/ADAravis/install.sh b/ADAravis/install.sh index 029d8b4..d0c5356 100755 --- a/ADAravis/install.sh +++ b/ADAravis/install.sh @@ -49,7 +49,7 @@ ibek support register ${NAME} # declare the libs and DBDs that are required in ioc/iocApp/src/Makefile ibek support add-libs ADAravis -ibek support add-dbds ADAravisSupport.dbd +ibek support add-dbds ADAravisSupport.dbd system.dbd # add any required changes to CONFIG_SITE CONFIG=' diff --git a/ADGenICam/ADGenICam.pvi.device.yaml b/ADGenICam/ADGenICam.pvi.device.yaml deleted file mode 100644 index c1e24a8..0000000 --- a/ADGenICam/ADGenICam.pvi.device.yaml +++ /dev/null @@ -1,5205 +0,0 @@ -label: ADGenICam -parent: ADDriver -children: - -- type: Group - name: ADGenICam - layout: - type: Grid - children: - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: GainAuto - pv: GainAuto - widget: - type: ComboBox - read_pv: GainAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: PixelFormat - pv: PixelFormat - widget: - type: ComboBox - read_pv: PixelFormat_RBV - read_widget: - type: TextRead - -- type: Group - name: ADGenICamCollect - layout: - type: Grid - children: - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureAuto - pv: ExposureAuto - widget: - type: ComboBox - read_pv: ExposureAuto_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRate - pv: FrameRate - widget: - type: TextWrite - read_pv: FrameRate_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - - - type: SignalRW - name: FrameRateEnable - pv: FrameRateEnable - widget: - type: CheckBox - read_pv: FrameRateEnable_RBV - read_widget: - type: LED - -- type: Group - name: ADGenICamTrigger - layout: - type: Grid - children: - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSource - pv: TriggerSource - widget: - type: ComboBox - read_pv: TriggerSource_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerOverlap - pv: TriggerOverlap - widget: - type: ComboBox - read_pv: TriggerOverlap_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: ExposureMode - pv: ExposureMode - widget: - type: ComboBox - read_pv: ExposureMode_RBV - read_widget: - type: TextRead - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED - - - type: SignalRW - name: TriggerSoftware - pv: TriggerSoftware - widget: - type: CheckBox - read_pv: TriggerSoftware_RBV - read_widget: - type: LED diff --git a/ADGenICam/install.sh b/ADGenICam/install.sh index da12a5f..5995256 100755 --- a/ADGenICam/install.sh +++ b/ADGenICam/install.sh @@ -18,6 +18,11 @@ ibek support register ${NAME} # declare the libs and DBDs that are required in ioc/iocApp/src/Makefile ibek support add-libs ADGenICam +# declare file or folders to add to the runtime image +ibek support add-runtime-files \ + /epics/support/ADGenICam/scripts/makeDb.py \ + /epics/support/ADGenICam/include/ADGenICam.h + # global config settings ${FOLDER}/../_global/install.sh ${NAME} From fe1ad89441329a2954772e7b3fdea628bca2ecbe Mon Sep 17 00:00:00 2001 From: Marcell Nagy Date: Mon, 1 Jul 2024 13:18:05 +0000 Subject: [PATCH 2/7] Move system commands to start.sh --- ADAravis/ADAravis.ibek.support.yaml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/ADAravis/ADAravis.ibek.support.yaml b/ADAravis/ADAravis.ibek.support.yaml index 1a35f98..7eac59a 100644 --- a/ADAravis/ADAravis.ibek.support.yaml +++ b/ADAravis/ADAravis.ibek.support.yaml @@ -53,10 +53,7 @@ entity_models: pre_init: - value: | - system "arv-tool-0.8 -a {{ID}} genicam > /epics/runtime/genicam.xml" - system "python /epics/support/ADGenICam/scripts/makeDb.py /epics/runtime/genicam.xml /epics/runtime/genicam.template" - dbLoadRecords /epics/runtime/genicam.template "P={{ P }},R={{ R }},PORT={{ PORT }}" - system "pvi convert device --template /epics/runtime/genicam.template /epics/pvi-defs/ /epics/support/ADGenICam/include/ADGenICam.h" + dbLoadRecords /tmp/genicam.template "P={{ P }},R={{ R }},PORT={{ PORT }}" # aravisConfig(const char *portName, const char *cameraName, size_t maxMemory, int priority, int stackSize) aravisConfig("{{PORT}}", "{{ID}}", {{MEMORY}}, 0, 1) From 752aa303aeb4b8dac995b2547f2d650a6d8d60f8 Mon Sep 17 00:00:00 2001 From: Giles Knap Date: Tue, 2 Jul 2024 12:47:46 +0000 Subject: [PATCH 3/7] add /tmp/genicam for adaravis --- ADAravis/ADAravis.ibek.support.yaml | 8 +- ADGenICam/ADGenICam.pvi.device.yaml | 1369 +++++++++++++++++++++++++++ 2 files changed, 1373 insertions(+), 4 deletions(-) create mode 100644 ADGenICam/ADGenICam.pvi.device.yaml diff --git a/ADAravis/ADAravis.ibek.support.yaml b/ADAravis/ADAravis.ibek.support.yaml index 7eac59a..a09a878 100644 --- a/ADAravis/ADAravis.ibek.support.yaml +++ b/ADAravis/ADAravis.ibek.support.yaml @@ -53,7 +53,7 @@ entity_models: pre_init: - value: | - dbLoadRecords /tmp/genicam.template "P={{ P }},R={{ R }},PORT={{ PORT }}" + dbLoadRecords /tmp/genicam/genicam.template "P={{ P }},R={{ R }},PORT={{ PORT }}" # aravisConfig(const char *portName, const char *cameraName, size_t maxMemory, int priority, int stackSize) aravisConfig("{{PORT}}", "{{ID}}", {{MEMORY}}, 0, 1) @@ -84,7 +84,7 @@ entity_models: pvi: yaml_path: arvFeature.pvi.device.yaml ui_macros: - P: '{{ camera.P }}' - R: '{{ camera.R }}' + P: "{{ camera.P }}" + R: "{{ camera.R }}" pv: true - pv_prefix: '{{ camera.P }}{{ camera.R }}' + pv_prefix: "{{ camera.P }}{{ camera.R }}" diff --git a/ADGenICam/ADGenICam.pvi.device.yaml b/ADGenICam/ADGenICam.pvi.device.yaml new file mode 100644 index 0000000..8a912a4 --- /dev/null +++ b/ADGenICam/ADGenICam.pvi.device.yaml @@ -0,0 +1,1369 @@ +label: ADGenICam +parent: ADDriver +children: + +- type: Group + name: Genicam + layout: + type: Grid + labelled: true + children: + + - type: SignalW + name: GCGevTimConLatch + write_pv: $(P)$(R)GC_GevTimConLatch + write_widget: + type: TextWrite + + - type: SignalW + name: GCGevTimConReset + write_pv: $(P)$(R)GC_GevTimConReset + write_widget: + type: TextWrite + + - type: SignalW + name: GCAcquisitionStart + write_pv: $(P)$(R)GC_AcquisitionStart + write_widget: + type: TextWrite + + - type: SignalW + name: GCAcquisitionStop + write_pv: $(P)$(R)GC_AcquisitionStop + write_widget: + type: TextWrite + + - type: SignalW + name: GCAcquisitionAbort + write_pv: $(P)$(R)GC_AcquisitionAbort + write_widget: + type: TextWrite + + - type: SignalW + name: GCTriggerSoftware + write_pv: $(P)$(R)GC_TriggerSoftware + write_widget: + type: TextWrite + + - type: SignalW + name: GCLUTLoadAll + write_pv: $(P)$(R)GC_LUTLoadAll + write_widget: + type: TextWrite + + - type: SignalW + name: GCLUTSaveAll + write_pv: $(P)$(R)GC_LUTSaveAll + write_widget: + type: TextWrite + + - type: SignalW + name: GCUserSetLoad + write_pv: $(P)$(R)GC_UserSetLoad + write_widget: + type: TextWrite + + - type: SignalW + name: GCUserSetSave + write_pv: $(P)$(R)GC_UserSetSave + write_widget: + type: TextWrite + + - type: SignalR + name: GCFirmwareVerMajor + read_pv: $(P)$(R)GC_FirmwareVerMajor_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCFirmwareVerMinor + read_pv: $(P)$(R)GC_FirmwareVerMinor_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCFirmwareVerBuild + read_pv: $(P)$(R)GC_FirmwareVerBuild_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCSensorType + read_pv: $(P)$(R)GC_SensorType_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCSensorBits + read_pv: $(P)$(R)GC_SensorBits_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCDeviceVendorName + read_pv: $(P)$(R)GC_DeviceVendorName_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCDeviceModelName + read_pv: $(P)$(R)GC_DeviceModelName_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCDevFirVersion + read_pv: $(P)$(R)GC_DevFirVersion_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCDeviceID + read_pv: $(P)$(R)GC_DeviceID_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCDevicePartNumber + read_pv: $(P)$(R)GC_DevicePartNumber_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCDeviceScanType + read_pv: $(P)$(R)GC_DeviceScanType_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCDeviceTemperature + read_pv: $(P)$(R)GC_DeviceTemperature_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCPayloadSize + read_pv: $(P)$(R)GC_PayloadSize_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCNonImaPayloadSize + read_pv: $(P)$(R)GC_NonImaPayloadSize_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCStrHoldCapacity + read_pv: $(P)$(R)GC_StrHoldCapacity_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCGevTimTicFre + read_pv: $(P)$(R)GC_GevTimTicFre_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCGevTimestampValue + read_pv: $(P)$(R)GC_GevTimestampValue_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCPtpStatus + read_pv: $(P)$(R)GC_PtpStatus_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCAcqFrameRateLimit + read_pv: $(P)$(R)GC_AcqFrameRateLimit_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCSensorWidth + read_pv: $(P)$(R)GC_SensorWidth_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCSensorHeight + read_pv: $(P)$(R)GC_SensorHeight_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCWidthMax + read_pv: $(P)$(R)GC_WidthMax_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCHeightMax + read_pv: $(P)$(R)GC_HeightMax_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCImageSize + read_pv: $(P)$(R)GC_ImageSize_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCIrisVideoLevel + read_pv: $(P)$(R)GC_IrisVideoLevel_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCVsubValue + read_pv: $(P)$(R)GC_VsubValue_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCLUTBitDepthIn + read_pv: $(P)$(R)GC_LUTBitDepthIn_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCLUTBitDepthOut + read_pv: $(P)$(R)GC_LUTBitDepthOut_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCLUTAddress + read_pv: $(P)$(R)GC_LUTAddress_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCLUTSizeBytes + read_pv: $(P)$(R)GC_LUTSizeBytes_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCSyncInLevels + read_pv: $(P)$(R)GC_SyncInLevels_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEveAcqStart + read_pv: $(P)$(R)GC_EveAcqStart_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEveAcquisitionEnd + read_pv: $(P)$(R)GC_EveAcquisitionEnd_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEventFrameTrigger + read_pv: $(P)$(R)GC_EventFrameTrigger_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEventExposureEnd + read_pv: $(P)$(R)GC_EventExposureEnd_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEveAcqRecTrigger + read_pv: $(P)$(R)GC_EveAcqRecTrigger_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEveLinRisingEdge + read_pv: $(P)$(R)GC_EveLinRisingEdge_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEveLinFallingEdge + read_pv: $(P)$(R)GC_EveLinFallingEdge_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEveLinRisingEdg0 + read_pv: $(P)$(R)GC_EveLinRisingEdg0_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEveLinFallingEdg0 + read_pv: $(P)$(R)GC_EveLinFallingEdg0_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEveLinRisingEdg1 + read_pv: $(P)$(R)GC_EveLinRisingEdg1_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEveLinFallingEdg1 + read_pv: $(P)$(R)GC_EveLinFallingEdg1_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEveLinRisingEdg2 + read_pv: $(P)$(R)GC_EveLinRisingEdg2_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEveLinFallingEdg2 + read_pv: $(P)$(R)GC_EveLinFallingEdg2_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEveFraTriReady + read_pv: $(P)$(R)GC_EveFraTriReady_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEventOverflow + read_pv: $(P)$(R)GC_EventOverflow_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCEventError + read_pv: $(P)$(R)GC_EventError_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCTimeStampValueLo + read_pv: $(P)$(R)GC_TimeStampValueLo_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCTimeStampValueHi + read_pv: $(P)$(R)GC_TimeStampValueHi_RBV + read_widget: + type: TextRead + + - type: SignalR + name: GCModelName + read_pv: $(P)$(R)GC_ModelName_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCDevTemSelector + write_pv: $(P)$(R)GC_DevTemSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_DevTemSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCStrBytesPerSecond + write_pv: $(P)$(R)GC_StrBytesPerSecond + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_StrBytesPerSecond_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCBanControlMode + write_pv: $(P)$(R)GC_BanControlMode + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_BanControlMode_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCGevSCPSPacketSize + write_pv: $(P)$(R)GC_GevSCPSPacketSize + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_GevSCPSPacketSize_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCChunkModeActive + write_pv: $(P)$(R)GC_ChunkModeActive + write_widget: + type: ToggleButton + read_pv: $(P)$(R)GC_ChunkModeActive_RBV + read_widget: + type: LED + + - type: SignalRW + name: GCStrFraRatCon + write_pv: $(P)$(R)GC_StrFraRatCon + write_widget: + type: ToggleButton + read_pv: $(P)$(R)GC_StrFraRatCon_RBV + read_widget: + type: LED + + - type: SignalRW + name: GCStreamHoldEnable + write_pv: $(P)$(R)GC_StreamHoldEnable + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_StreamHoldEnable_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCPtpMode + write_pv: $(P)$(R)GC_PtpMode + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_PtpMode_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCPtpAcqGateTime + write_pv: $(P)$(R)GC_PtpAcqGateTime + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_PtpAcqGateTime_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCAcquisitionMode + write_pv: $(P)$(R)GC_AcquisitionMode + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_AcquisitionMode_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCAcqFrameCount + write_pv: $(P)$(R)GC_AcqFrameCount + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_AcqFrameCount_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCAcqFrameRateAbs + write_pv: $(P)$(R)GC_AcqFrameRateAbs + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_AcqFrameRateAbs_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCRecPreEventCount + write_pv: $(P)$(R)GC_RecPreEventCount + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_RecPreEventCount_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCTriggerSelector + write_pv: $(P)$(R)GC_TriggerSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_TriggerSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCTriggerMode + write_pv: $(P)$(R)GC_TriggerMode + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_TriggerMode_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCTriggerSource + write_pv: $(P)$(R)GC_TriggerSource + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_TriggerSource_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCTriggerActivation + write_pv: $(P)$(R)GC_TriggerActivation + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_TriggerActivation_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCTriggerOverlap + write_pv: $(P)$(R)GC_TriggerOverlap + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_TriggerOverlap_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCTriggerDelayAbs + write_pv: $(P)$(R)GC_TriggerDelayAbs + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_TriggerDelayAbs_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCBinningHorizontal + write_pv: $(P)$(R)GC_BinningHorizontal + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_BinningHorizontal_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCBinningVertical + write_pv: $(P)$(R)GC_BinningVertical + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_BinningVertical_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCDecHorizontal + write_pv: $(P)$(R)GC_DecHorizontal + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_DecHorizontal_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCDecVertical + write_pv: $(P)$(R)GC_DecVertical + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_DecVertical_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCPixelFormat + write_pv: $(P)$(R)GC_PixelFormat + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_PixelFormat_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCWidth + write_pv: $(P)$(R)GC_Width + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_Width_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCHeight + write_pv: $(P)$(R)GC_Height + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_Height_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCOffsetX + write_pv: $(P)$(R)GC_OffsetX + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_OffsetX_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCOffsetY + write_pv: $(P)$(R)GC_OffsetY + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_OffsetY_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCGamma + write_pv: $(P)$(R)GC_Gamma + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_Gamma_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCHue + write_pv: $(P)$(R)GC_Hue + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_Hue_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCSaturation + write_pv: $(P)$(R)GC_Saturation + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_Saturation_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCDSPSubregionLeft + write_pv: $(P)$(R)GC_DSPSubregionLeft + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_DSPSubregionLeft_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCDSPSubregionTop + write_pv: $(P)$(R)GC_DSPSubregionTop + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_DSPSubregionTop_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCDSPSubregionRight + write_pv: $(P)$(R)GC_DSPSubregionRight + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_DSPSubregionRight_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCDSPSubBottom + write_pv: $(P)$(R)GC_DSPSubBottom + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_DSPSubBottom_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCExposureMode + write_pv: $(P)$(R)GC_ExposureMode + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_ExposureMode_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCExposureTimeAbs + write_pv: $(P)$(R)GC_ExposureTimeAbs + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_ExposureTimeAbs_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCExposureAuto + write_pv: $(P)$(R)GC_ExposureAuto + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_ExposureAuto_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCExpAutoTarget + write_pv: $(P)$(R)GC_ExpAutoTarget + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_ExpAutoTarget_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCExposureAutoAlg + write_pv: $(P)$(R)GC_ExposureAutoAlg + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_ExposureAutoAlg_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCExposureAutoMin + write_pv: $(P)$(R)GC_ExposureAutoMin + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_ExposureAutoMin_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCExposureAutoMax + write_pv: $(P)$(R)GC_ExposureAutoMax + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_ExposureAutoMax_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCExposureAutoRate + write_pv: $(P)$(R)GC_ExposureAutoRate + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_ExposureAutoRate_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCExpAutoOutliers + write_pv: $(P)$(R)GC_ExpAutoOutliers + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_ExpAutoOutliers_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCExpAutoAdjustTol + write_pv: $(P)$(R)GC_ExpAutoAdjustTol + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_ExpAutoAdjustTol_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCGainSelector + write_pv: $(P)$(R)GC_GainSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_GainSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCGain + write_pv: $(P)$(R)GC_Gain + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_Gain_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCGainAuto + write_pv: $(P)$(R)GC_GainAuto + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_GainAuto_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCGainAutoTarget + write_pv: $(P)$(R)GC_GainAutoTarget + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_GainAutoTarget_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCGainAutoMin + write_pv: $(P)$(R)GC_GainAutoMin + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_GainAutoMin_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCGainAutoMax + write_pv: $(P)$(R)GC_GainAutoMax + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_GainAutoMax_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCGainAutoRate + write_pv: $(P)$(R)GC_GainAutoRate + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_GainAutoRate_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCGainAutoOutliers + write_pv: $(P)$(R)GC_GainAutoOutliers + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_GainAutoOutliers_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCGainAutoAdjustTol + write_pv: $(P)$(R)GC_GainAutoAdjustTol + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_GainAutoAdjustTol_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCBlaLevelSelector + write_pv: $(P)$(R)GC_BlaLevelSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_BlaLevelSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCBlackLevel + write_pv: $(P)$(R)GC_BlackLevel + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_BlackLevel_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCBalRatioSelector + write_pv: $(P)$(R)GC_BalRatioSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_BalRatioSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCBalanceRatioAbs + write_pv: $(P)$(R)GC_BalanceRatioAbs + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_BalanceRatioAbs_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCBalanceWhiteAuto + write_pv: $(P)$(R)GC_BalanceWhiteAuto + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_BalanceWhiteAuto_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCBalWhiteAutoRate + write_pv: $(P)$(R)GC_BalWhiteAutoRate + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_BalWhiteAutoRate_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCBalWhiAutAdjTol + write_pv: $(P)$(R)GC_BalWhiAutAdjTol + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_BalWhiAutAdjTol_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCIrisMode + write_pv: $(P)$(R)GC_IrisMode + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_IrisMode_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCIrisAutoTarget + write_pv: $(P)$(R)GC_IrisAutoTarget + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_IrisAutoTarget_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCIrisVideoLevelMin + write_pv: $(P)$(R)GC_IrisVideoLevelMin + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_IrisVideoLevelMin_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCIrisVideoLevelMax + write_pv: $(P)$(R)GC_IrisVideoLevelMax + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_IrisVideoLevelMax_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCLenPIrisFrequency + write_pv: $(P)$(R)GC_LenPIrisFrequency + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_LenPIrisFrequency_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCLensPIrisNumSteps + write_pv: $(P)$(R)GC_LensPIrisNumSteps + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_LensPIrisNumSteps_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCLensPIrisPosition + write_pv: $(P)$(R)GC_LensPIrisPosition + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_LensPIrisPosition_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCLenDCDriStrength + write_pv: $(P)$(R)GC_LenDCDriStrength + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_LenDCDriStrength_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCDefMasColEnable + write_pv: $(P)$(R)GC_DefMasColEnable + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_DefMasColEnable_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCDefMasPixelEnable + write_pv: $(P)$(R)GC_DefMasPixelEnable + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_DefMasPixelEnable_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCColTraSelector + write_pv: $(P)$(R)GC_ColTraSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_ColTraSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCColTraMode + write_pv: $(P)$(R)GC_ColTraMode + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_ColTraMode_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCColTraValSelector + write_pv: $(P)$(R)GC_ColTraValSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_ColTraValSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCColTraValue + write_pv: $(P)$(R)GC_ColTraValue + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_ColTraValue_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCLUTSelector + write_pv: $(P)$(R)GC_LUTSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_LUTSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCLUTMode + write_pv: $(P)$(R)GC_LUTMode + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_LUTMode_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCLUTEnable + write_pv: $(P)$(R)GC_LUTEnable + write_widget: + type: ToggleButton + read_pv: $(P)$(R)GC_LUTEnable_RBV + read_widget: + type: LED + + - type: SignalRW + name: GCLUTIndex + write_pv: $(P)$(R)GC_LUTIndex + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_LUTIndex_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCLUTValue + write_pv: $(P)$(R)GC_LUTValue + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_LUTValue_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCSyncInSelector + write_pv: $(P)$(R)GC_SyncInSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_SyncInSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCSynInGlitchFilter + write_pv: $(P)$(R)GC_SynInGlitchFilter + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_SynInGlitchFilter_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCSyncOutLevels + write_pv: $(P)$(R)GC_SyncOutLevels + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_SyncOutLevels_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCSyncOutSelector + write_pv: $(P)$(R)GC_SyncOutSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_SyncOutSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCSyncOutSource + write_pv: $(P)$(R)GC_SyncOutSource + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_SyncOutSource_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCSyncOutPolarity + write_pv: $(P)$(R)GC_SyncOutPolarity + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_SyncOutPolarity_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCStrobeSource + write_pv: $(P)$(R)GC_StrobeSource + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_StrobeSource_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCStrDurationMode + write_pv: $(P)$(R)GC_StrDurationMode + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_StrDurationMode_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCStrobeDelay + write_pv: $(P)$(R)GC_StrobeDelay + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_StrobeDelay_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCStrobeDuration + write_pv: $(P)$(R)GC_StrobeDuration + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_StrobeDuration_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCEventSelector + write_pv: $(P)$(R)GC_EventSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_EventSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCEventNotification + write_pv: $(P)$(R)GC_EventNotification + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_EventNotification_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCEventsEnable1 + write_pv: $(P)$(R)GC_EventsEnable1 + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_EventsEnable1_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCUserSetSelector + write_pv: $(P)$(R)GC_UserSetSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_UserSetSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCUseSetDefSelector + write_pv: $(P)$(R)GC_UseSetDefSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_UseSetDefSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCCmosisOffset + write_pv: $(P)$(R)GC_CmosisOffset + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_CmosisOffset_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCCmosisGain + write_pv: $(P)$(R)GC_CmosisGain + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_CmosisGain_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCCmosisVramp + write_pv: $(P)$(R)GC_CmosisVramp + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_CmosisVramp_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCPvDumTriSelector + write_pv: $(P)$(R)GC_PvDumTriSelector + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_PvDumTriSelector_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCPvDumFraStaTriMod + write_pv: $(P)$(R)GC_PvDumFraStaTriMod + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_PvDumFraStaTriMod_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCPvDumTriggerMode + write_pv: $(P)$(R)GC_PvDumTriggerMode + write_widget: + type: ComboBox + read_pv: $(P)$(R)GC_PvDumTriggerMode_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCFraStaTriDelay + write_pv: $(P)$(R)GC_FraStaTriDelay + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_FraStaTriDelay_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCExposureValue + write_pv: $(P)$(R)GC_ExposureValue + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_ExposureValue_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCWhitebalValueRed + write_pv: $(P)$(R)GC_WhitebalValueRed + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_WhitebalValueRed_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCWhitebalValueBlue + write_pv: $(P)$(R)GC_WhitebalValueBlue + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_WhitebalValueBlue_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCPvGainRaw + write_pv: $(P)$(R)GC_PvGainRaw + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_PvGainRaw_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCPvGainAutoMin + write_pv: $(P)$(R)GC_PvGainAutoMin + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_PvGainAutoMin_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCPvGainAutoMax + write_pv: $(P)$(R)GC_PvGainAutoMax + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_PvGainAutoMax_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCOffsetValue + write_pv: $(P)$(R)GC_OffsetValue + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_OffsetValue_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCPtpAcqGateTimeHi + write_pv: $(P)$(R)GC_PtpAcqGateTimeHi + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_PtpAcqGateTimeHi_RBV + read_widget: + type: TextRead + + - type: SignalRW + name: GCPtpAcqGateTimeLo + write_pv: $(P)$(R)GC_PtpAcqGateTimeLo + write_widget: + type: TextWrite + read_pv: $(P)$(R)GC_PtpAcqGateTimeLo_RBV + read_widget: + type: TextRead From 8d18d58c19aa4443aaf7e9df7e81eb4e141b9774 Mon Sep 17 00:00:00 2001 From: Giles Knap Date: Tue, 2 Jul 2024 21:26:03 +0000 Subject: [PATCH 4/7] updates for autogenerated aravis db/pvi --- ADAravis/ADAravis.ibek.support.yaml | 98 ++++- ...i.device.yaml => ADAravis.pvi.device.yaml} | 2 +- ADGenICam/ADGenICam.pvi.device.yaml | 2 +- schemas/ibek.support.schema.json | 349 +++++++++++------- 4 files changed, 307 insertions(+), 144 deletions(-) rename ADAravis/{arvFeature.pvi.device.yaml => ADAravis.pvi.device.yaml} (99%) diff --git a/ADAravis/ADAravis.ibek.support.yaml b/ADAravis/ADAravis.ibek.support.yaml index a09a878..929a821 100644 --- a/ADAravis/ADAravis.ibek.support.yaml +++ b/ADAravis/ADAravis.ibek.support.yaml @@ -7,6 +7,11 @@ entity_models: description: |- Creates an aravisCamera camera areaDetector driver parameters: + ID: + type: str + description: |- + Cam ip address, hostname, MAC address, or ID -, (e.g. Prosilica-02-2166A-06844) + P: type: str description: |- @@ -22,11 +27,6 @@ entity_models: description: |- Port name for the camera - ID: - type: str - description: |- - Cam ip address, hostname, MAC address, or ID -, (e.g. Prosilica-02-2166A-06844) - BUFFERS: type: int description: |- @@ -51,23 +51,68 @@ entity_models: Asyn Port address, default 0 default: 0 + CLASS: + type: enum + description: |- + Camera class for custom commands + values: + Basler-a2A2600-20gmBAS: + Basler-scA1400-30gm: + Basler-scA1300-32gm: + Basler-scA640-70gm: + Basler-acA640-90gm: + Basler-acA640-300gm: + Basler-acA1300-30gm: + Basler-acA1300-60gm: + Basler-acA1300-75gm: + Basler_piA640_210gm: + AVT_Manta_G319B: + AVT_Mako_G040B: + AVT_Manta_G2460C: + AVT_Mako_G125B: + AVT_Mako_G125C: + AVT_Prosilica_GC1280M: + AVT_Mako_1_52: + AVT_Manta_G507B: + AVT_Manta_G145B: + AVT_Mako_G507B: + AVT_Mako_G507C: + AVT_Prosilica_GT5120: + AVT_Mako_G319C: + AVT_Manta_G419C: + AVT_Prosilica_GC1020C: + AVT_Prosilica_GC655C: + XIMEA_MC124CG-SY: + JAI_CM140_v2-2: + Prosilica_GC: + AVT_Manta_G125B: + AVT_Manta_G125C: + AVT_Manta_G040B: + AVT_Manta_G895B: + AVT_Mako_G158B: + AVT_Mako_G158C: + AVT_Manta_G235B: + AVT_Manta_G235C: + AVT_Manta_1_44: + AVT_Mako_G234C: + AVT_Mako_G234B: + AVT_Manta_G609B: + JAI_CM140: + AutoADGenICam: + # The AutoADGenICam value causes the start.sh to contact the camera and auto + # generate the DB file. The pvi.device file is always autogenerated + pre_init: - value: | - dbLoadRecords /tmp/genicam/genicam.template "P={{ P }},R={{ R }},PORT={{ PORT }}" # aravisConfig(const char *portName, const char *cameraName, size_t maxMemory, int priority, int stackSize) aravisConfig("{{PORT}}", "{{ID}}", {{MEMORY}}, 0, 1) databases: - file: $(ADARAVIS)/db/aravisCamera.template - args: - P: - R: - PORT: - TIMEOUT: - ADDR: + args: { P, R, PORT, TIMEOUT, ADDR } pvi: - yaml_path: ADDriver.pvi.device.yaml + yaml_path: ADAravis.pvi.device.yaml ui_macros: P: R: @@ -75,16 +120,37 @@ entity_models: pv_prefix: $(P)$(R) - name: aravisSettings - description: |- - Creates detailed settings screens for an Aravis camera + + description: | + Create detailed settings screens for an Aravis camera from one of + the predefined database files in ADGenICam or from the auto generated + database file for a specific camera. + + Specify which one using the CLASS parameter or leave CLASS as the + default value to auto generate database file. In this case start.sh + will contact the camera and generate the database file from its XML + description of all its configuration parameters. + parameters: camera: type: object description: the aravisCamera object to create settings for + pvi: - yaml_path: arvFeature.pvi.device.yaml + # TODO - fix ibek to support yaml + #yaml_path: "{{CLASS}}.pvi.device.yaml" + yaml_path: "AutoADGenICam.pvi.device.yaml" ui_macros: P: "{{ camera.P }}" R: "{{ camera.R }}" pv: true pv_prefix: "{{ camera.P }}{{ camera.R }}" + + databases: + - file: "{{ camera.CLASS }}.template" + args: + P: "{{ camera.P }}" + R: "{{ camera.R }}" + PORT: "{{ camera.PORT }}" + TIMEOUT: "{{ camera.TIMEOUT }}" + ADDR: "{{ camera.ADDR }}" diff --git a/ADAravis/arvFeature.pvi.device.yaml b/ADAravis/ADAravis.pvi.device.yaml similarity index 99% rename from ADAravis/arvFeature.pvi.device.yaml rename to ADAravis/ADAravis.pvi.device.yaml index bec1424..662dc56 100644 --- a/ADAravis/arvFeature.pvi.device.yaml +++ b/ADAravis/ADAravis.pvi.device.yaml @@ -1,5 +1,5 @@ label: arvFeature -parent: ADGenICam +parent: ADDriver children: - type: Group name: ADAravis diff --git a/ADGenICam/ADGenICam.pvi.device.yaml b/ADGenICam/ADGenICam.pvi.device.yaml index 8a912a4..807e781 100644 --- a/ADGenICam/ADGenICam.pvi.device.yaml +++ b/ADGenICam/ADGenICam.pvi.device.yaml @@ -3,7 +3,7 @@ parent: ADDriver children: - type: Group - name: Genicam + name: AutoADGenICam layout: type: Grid labelled: true diff --git a/schemas/ibek.support.schema.json b/schemas/ibek.support.schema.json index a46e450..4eeac91 100644 --- a/schemas/ibek.support.schema.json +++ b/schemas/ibek.support.schema.json @@ -1,17 +1,16 @@ { "$defs": { - "BoolArg": { + "BoolParam": { "additionalProperties": false, "description": "An argument with an bool value", "properties": { "type": { "const": "bool", "default": "bool", - "title": "Type" - }, - "name": { - "description": "Name of the argument that the IOC instance should pass", - "title": "Name", + "enum": [ + "bool" + ], + "title": "Type", "type": "string" }, "description": { @@ -24,6 +23,11 @@ { "type": "boolean" }, + { + "description": "A Jinja2 template string", + "pattern": ".*\\{\\{.*\\}\\}.*", + "type": "string" + }, { "type": "null" } @@ -33,10 +37,9 @@ } }, "required": [ - "name", "description" ], - "title": "BoolArg", + "title": "BoolParam", "type": "object" }, "Comment": { @@ -46,7 +49,11 @@ "type": { "const": "comment", "default": "comment", - "title": "Type" + "enum": [ + "comment" + ], + "title": "Type", + "type": "string" }, "when": { "allOf": [ @@ -105,12 +112,57 @@ "title": "Database", "type": "object" }, - "Definition": { + "Define": { "additionalProperties": false, - "description": "A single definition of a class of Entity that an IOC instance may instantiate", + "description": "A calculated value for an Entity Model", + "properties": { + "description": { + "description": "Description of what the value will be used for", + "title": "Description", + "type": "string" + }, + "value": { + "description": "The contents of the value", + "title": "Value" + }, + "type": { + "anyOf": [ + { + "$ref": "#/$defs/DefineType" + }, + { + "type": "null" + } + ], + "default": "str", + "description": "The type of the value" + } + }, + "required": [ + "description", + "value" + ], + "title": "Define", + "type": "object" + }, + "DefineType": { + "description": "The type of a value", + "enum": [ + "str", + "float", + "int", + "bool", + "list" + ], + "title": "DefineType", + "type": "string" + }, + "EntityModel": { + "additionalProperties": false, + "description": "A Model for a class of Entity that an IOC instance may instantiate", "properties": { "name": { - "description": "Publish Definition as type . for IOC instances", + "description": "Publish EntityModel as type . for IOC instances", "title": "Name", "type": "string" }, @@ -119,54 +171,67 @@ "title": "Description", "type": "string" }, - "args": { + "pre_defines": { + "additionalProperties": { + "$ref": "#/$defs/Define" + }, "default": [], - "description": "The arguments IOC instance should supply", - "items": { - "anyOf": [ + "description": "Calculated values to use as additional arguments With Jinja evaluation before all Args", + "title": "Pre Defines", + "type": "object" + }, + "parameters": { + "additionalProperties": { + "description": "union of arg types", + "discriminator": { + "mapping": { + "bool": "#/$defs/BoolParam", + "enum": "#/$defs/EnumParam", + "float": "#/$defs/FloatParam", + "id": "#/$defs/IdParam", + "int": "#/$defs/IntParam", + "object": "#/$defs/ObjectParam", + "str": "#/$defs/StrParam" + }, + "propertyName": "type" + }, + "oneOf": [ { - "$ref": "#/$defs/FloatArg" + "$ref": "#/$defs/FloatParam" }, { - "$ref": "#/$defs/StrArg" + "$ref": "#/$defs/StrParam" }, { - "$ref": "#/$defs/IntArg" + "$ref": "#/$defs/IntParam" }, { - "$ref": "#/$defs/BoolArg" + "$ref": "#/$defs/BoolParam" }, { - "$ref": "#/$defs/ObjectArg" + "$ref": "#/$defs/ObjectParam" }, { - "$ref": "#/$defs/IdArg" + "$ref": "#/$defs/IdParam" }, { - "$ref": "#/$defs/EnumArg" + "$ref": "#/$defs/EnumParam" } ] }, - "title": "Args", - "type": "array" - }, - "values": { "default": [], - "description": "The values IOC instance should supply", - "items": { - "$ref": "#/$defs/Value" - }, - "title": "Values", - "type": "array" + "description": "The arguments IOC instance should supply", + "title": "Parameters", + "type": "object" }, - "databases": { - "default": [], - "description": "Databases to instantiate", - "items": { - "$ref": "#/$defs/Database" + "post_defines": { + "additionalProperties": { + "$ref": "#/$defs/Define" }, - "title": "Databases", - "type": "array" + "default": [], + "description": "Calculated values to use as additional arguments With Jinja evaluation after all Args", + "title": "Post Defines", + "type": "object" }, "pre_init": { "default": [], @@ -200,6 +265,15 @@ "title": "Post Init", "type": "array" }, + "databases": { + "default": [], + "description": "Databases to instantiate", + "items": { + "$ref": "#/$defs/Database" + }, + "title": "Databases", + "type": "array" + }, "env_vars": { "default": [], "description": "Environment variables to set in the boot script", @@ -210,20 +284,39 @@ "type": "array" }, "pvi": { - "allOf": [ + "anyOf": [ { "$ref": "#/$defs/EntityPVI" + }, + { + "type": "null" } ], "default": null, "description": "PVI definition for Entity" + }, + "sub_entities": { + "default": [], + "description": "The sub-entity instances that this collection is to instantiate", + "items": { + "$ref": "#/$defs/SubEntity" + }, + "title": "Sub Entities", + "type": "array" + }, + "shared": { + "default": [], + "description": "A place to create any anchors required for repeating YAML", + "items": {}, + "title": "Shared", + "type": "array" } }, "required": [ "name", "description" ], - "title": "Definition", + "title": "EntityModel", "type": "object" }, "EntityPVI": { @@ -276,18 +369,17 @@ "title": "EntityPVI", "type": "object" }, - "EnumArg": { + "EnumParam": { "additionalProperties": false, "description": "An argument with an enum value", "properties": { "type": { "const": "enum", "default": "enum", - "title": "Type" - }, - "name": { - "description": "Name of the argument that the IOC instance should pass", - "title": "Name", + "enum": [ + "enum" + ], + "title": "Type", "type": "string" }, "description": { @@ -312,11 +404,10 @@ } }, "required": [ - "name", "description", "values" ], - "title": "EnumArg", + "title": "EnumParam", "type": "object" }, "EnvironmentVariable": { @@ -341,18 +432,17 @@ "title": "EnvironmentVariable", "type": "object" }, - "FloatArg": { + "FloatParam": { "additionalProperties": false, "description": "An argument with a float value", "properties": { "type": { "const": "float", "default": "float", - "title": "Type" - }, - "name": { - "description": "Name of the argument that the IOC instance should pass", - "title": "Name", + "enum": [ + "float" + ], + "title": "Type", "type": "string" }, "description": { @@ -365,6 +455,11 @@ { "type": "number" }, + { + "description": "A Jinja2 template string", + "pattern": ".*\\{\\{.*\\}\\}.*", + "type": "string" + }, { "type": "null" } @@ -374,24 +469,22 @@ } }, "required": [ - "name", "description" ], - "title": "FloatArg", + "title": "FloatParam", "type": "object" }, - "IdArg": { + "IdParam": { "additionalProperties": false, "description": "Explicit ID argument that an object can refer to", "properties": { "type": { "const": "id", "default": "id", - "title": "Type" - }, - "name": { - "description": "Name of the argument that the IOC instance should pass", - "title": "Name", + "enum": [ + "id" + ], + "title": "Type", "type": "string" }, "description": { @@ -413,24 +506,22 @@ } }, "required": [ - "name", "description" ], - "title": "IdArg", + "title": "IdParam", "type": "object" }, - "IntArg": { + "IntParam": { "additionalProperties": false, "description": "An argument with an int value", "properties": { "type": { "const": "int", "default": "int", - "title": "Type" - }, - "name": { - "description": "Name of the argument that the IOC instance should pass", - "title": "Name", + "enum": [ + "int" + ], + "title": "Type", "type": "string" }, "description": { @@ -443,6 +534,11 @@ { "type": "integer" }, + { + "description": "A Jinja2 template string", + "pattern": ".*\\{\\{.*\\}\\}.*", + "type": "string" + }, { "type": "null" } @@ -452,24 +548,22 @@ } }, "required": [ - "name", "description" ], - "title": "IntArg", + "title": "IntParam", "type": "object" }, - "ObjectArg": { + "ObjectParam": { "additionalProperties": false, "description": "A reference to another entity defined in this IOC", "properties": { "type": { "const": "object", "default": "object", - "title": "Type" - }, - "name": { - "description": "Name of the argument that the IOC instance should pass", - "title": "Name", + "enum": [ + "object" + ], + "title": "Type", "type": "string" }, "description": { @@ -482,6 +576,7 @@ { "type": "string" }, + {}, { "type": "null" } @@ -491,24 +586,22 @@ } }, "required": [ - "name", "description" ], - "title": "ObjectArg", + "title": "ObjectParam", "type": "object" }, - "StrArg": { + "StrParam": { "additionalProperties": false, "description": "An argument with a str value", "properties": { "type": { "const": "str", "default": "str", - "title": "Type" - }, - "name": { - "description": "Name of the argument that the IOC instance should pass", - "title": "Name", + "enum": [ + "str" + ], + "title": "Type", "type": "string" }, "description": { @@ -530,10 +623,31 @@ } }, "required": [ - "name", "description" ], - "title": "StrArg", + "title": "StrParam", + "type": "object" + }, + "SubEntity": { + "additionalProperties": true, + "description": "A loosely defined class to declare the Entities\nin an ibek.support.yaml file in the 'sub_entities' property of an Entity\nsection", + "properties": { + "type": { + "description": "The type of this entity", + "title": "Type", + "type": "string" + }, + "entity_enabled": { + "default": true, + "description": "enable or disable this entity instance", + "title": "Entity Enabled", + "type": "boolean" + } + }, + "required": [ + "type" + ], + "title": "SubEntity", "type": "object" }, "Text": { @@ -543,7 +657,11 @@ "type": { "const": "text", "default": "text", - "title": "Type" + "enum": [ + "text" + ], + "title": "Type", + "type": "string" }, "when": { "default": "every", @@ -561,34 +679,6 @@ "title": "Text", "type": "object" }, - "Value": { - "additionalProperties": false, - "description": "A calculated string value for a definition", - "properties": { - "name": { - "description": "Name of the value that the IOC instance will expose", - "title": "Name", - "type": "string" - }, - "description": { - "description": "Description of what the value will be used for", - "title": "Description", - "type": "string" - }, - "value": { - "description": "The contents of the value", - "title": "Value", - "type": "string" - } - }, - "required": [ - "name", - "description", - "value" - ], - "title": "Value", - "type": "object" - }, "When": { "enum": [ "first", @@ -600,26 +690,33 @@ } }, "additionalProperties": false, - "description": "Lists the definitions for a support module, this defines what Entities it supports\n\nProvides the deserialize entry point.", + "description": "Lists the EntityModels for a support module, this defines what Entities it supports", "properties": { + "shared": { + "default": [], + "description": "A place to create any anchors required for repeating YAML", + "items": {}, + "title": "Shared", + "type": "array" + }, "module": { "description": "Support module name, normally the repo name", "title": "Module", "type": "string" }, - "defs": { - "description": "The definitions an IOC can create using this module", + "entity_models": { + "description": "The Entity Models an IOC can create using this module", "items": { - "$ref": "#/$defs/Definition" + "$ref": "#/$defs/EntityModel" }, - "title": "Defs", + "title": "Entity Models", "type": "array" } }, "required": [ "module", - "defs" + "entity_models" ], "title": "Support", "type": "object" -} \ No newline at end of file +} From 3dcc8ad5e0bb8f7ead394de3859f62e104d8de0e Mon Sep 17 00:00:00 2001 From: Marcell Nagy Date: Wed, 10 Jul 2024 10:43:41 +0000 Subject: [PATCH 5/7] accommodate AutoADGenICam --- ADAravis/ADAravis.ibek.support.yaml | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/ADAravis/ADAravis.ibek.support.yaml b/ADAravis/ADAravis.ibek.support.yaml index 929a821..b791501 100644 --- a/ADAravis/ADAravis.ibek.support.yaml +++ b/ADAravis/ADAravis.ibek.support.yaml @@ -137,9 +137,7 @@ entity_models: description: the aravisCamera object to create settings for pvi: - # TODO - fix ibek to support yaml - #yaml_path: "{{CLASS}}.pvi.device.yaml" - yaml_path: "AutoADGenICam.pvi.device.yaml" + yaml_path: "{{ '-'.join([camera.ID,camera.CLASS]) if camera.CLASS=='AutoADGenICam' else camera.CLASS }}.pvi.device.yaml" ui_macros: P: "{{ camera.P }}" R: "{{ camera.R }}" @@ -147,7 +145,7 @@ entity_models: pv_prefix: "{{ camera.P }}{{ camera.R }}" databases: - - file: "{{ camera.CLASS }}.template" + - file: "{{ '-'.join([camera.ID,camera.CLASS]) if camera.CLASS=='AutoADGenICam' else camera.CLASS }}.template" args: P: "{{ camera.P }}" R: "{{ camera.R }}" From 6766d7a14cc58c49a2c7422d4b95dc5a895ccf6a Mon Sep 17 00:00:00 2001 From: Marcell Nagy Date: Wed, 10 Jul 2024 10:44:42 +0000 Subject: [PATCH 6/7] Change arvFeature label --- ADAravis/ADAravis.pvi.device.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ADAravis/ADAravis.pvi.device.yaml b/ADAravis/ADAravis.pvi.device.yaml index 662dc56..35c1867 100644 --- a/ADAravis/ADAravis.pvi.device.yaml +++ b/ADAravis/ADAravis.pvi.device.yaml @@ -1,4 +1,4 @@ -label: arvFeature +label: ADAravis Camera parent: ADDriver children: - type: Group From e40f5b5944c05cf1e81264ab824ac86c0fc01f2b Mon Sep 17 00:00:00 2001 From: Marcell Nagy <133755508+marcelldls@users.noreply.github.com> Date: Wed, 10 Jul 2024 13:17:12 +0100 Subject: [PATCH 7/7] Remove system.dbd --- ADAravis/install.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ADAravis/install.sh b/ADAravis/install.sh index d0c5356..029d8b4 100755 --- a/ADAravis/install.sh +++ b/ADAravis/install.sh @@ -49,7 +49,7 @@ ibek support register ${NAME} # declare the libs and DBDs that are required in ioc/iocApp/src/Makefile ibek support add-libs ADAravis -ibek support add-dbds ADAravisSupport.dbd system.dbd +ibek support add-dbds ADAravisSupport.dbd # add any required changes to CONFIG_SITE CONFIG='