<?xml version="1.0" encoding="UTF-8"?>
<!-- <?xml-stylesheet type="text/xsl" href="lvinput_format.xsl" ?> -->
<!--
@file lvinput.xml Example lvDCOM driver configuration file. Loaded at IOC boot time in @link st.cmd @endlink via e.g.
lvDCOMConfigure(
"ex1",
"frontpanel",
"$(TOP)/exampleApp/src/lvinput.xml",
"", 6)
@author Freddie Akeroyd, STFC ISIS facility, UK (freddie.akeroyd at stfc.ac.uk)
$LastChangedRevision: 495 $:
$LastChangedBy: faa59 $:
$LastChangedDate: 2013-09-30 16:36:25 +0100 (Mon, 30 Sep 2013) $:
$HeadURL: https:
Note: you can generate an initial version of one of these configuartioon files, and associated EPICS DB records,
using the spllied xslt files - see README.txt for details
-->
<lvinput
xmlns="http:
xmlns:xsi="http:
xsi:schemaLocation="http:
<!--
the exint Vi is an ISIS Vi that is used as a proxy Vi for "set" operations when extint="true" is specified below.
If your labview front panels are not "labview event driven" then you do not need to worry about this.
If, however, they are (i.e. you would require the "signalling" version of the setControlValue() method) then contact
ISIS computing group via "freddie.akeroyd at stfc.ac.uk"
path is parsed using EPICS macEnvExpand() and so can contain EPICS environment variables
-->
<extint path="c:/LabVIEW Modules old/Common/External Interface/External Interface.llb/External Interface - Set Value.vi" />
<!-- this name will be mapped (via
lvDCOMConfigure()) to an asyn driver port name that can then be specified in an EPICS record -->
<section name="frontpanel">
<!-- path to LabVIEW vi file we are using, which is parsed using EPICS macEnvExpand() and so can contain EPICS environment variables -->
<vi path="$(TOP)/exampleApp/src/example.vi">
<!--
<param> defines as asyn driver parameter that can be specified in an epics record to access data on the labview Vi. The <set>
and <read> items specify the name of the appropriate control/indicator on the LabVIEW Vi to access for these
operations. The "method" attribute controls the underlying method by which the new value is communicated,
currently only "GCV" for reads (use DCOM exposed getControlValue()) and "SCV" for sets (use DCOM exposed setControlValue())
are supported. The meaning and use of the extint attribute has been covered earlier above.
-->
<param name="cont1" type="float64">
<read method="GCV" target="Some Control" />
<set method="SCV" extint="false" target="Some Control" />
</param>
<param name="ind1" type="int32">
<read method="GCV" target="Some Indicator" />
<!--set method="SCV" extint="false" target="Some Indicator" /-->
</param>
<param name="strcont1" type="string">
<read method="GCV" target="Some String" />
<set method="SCV" extint="false" target="Some String" />
</param>
<param name="arrayind1" type="float64array">
<read method="GCV" target="Some Array" />
<!--set method="SCV" extint="false" target="Some Array" /-->
</param>
<!-- optionally push a button control either after a set or before a read
{pre,post}_button
{pre,post}_button_wait controls whether you should wait for the button to "pop back" before continuing (i.e. false -> true -> false sequence)
{pre,post}_button_delay is a delay (ms) to wait after pushing button before doing a read
-->
<param name="cont2" type="float64">
<read method="GCV" target="Some Control" />
<set method="SCV" extint="false" target="Some Control" post_button="Some Button" post_button_wait="true" />
</param>
<param name="ind2" type="int32">
<read method="GCV" target="Some Indicator" pre_button="Some Button" pre_button_wait="true" pre_button_delay="10" />
<!--set method="SCV" extint="false" target="Some Indicator" /-->
</param>
</vi>
</section>
</lvinput>