diff options
Diffstat (limited to 'xml')
| -rw-r--r-- | xml/test/props.xml | 2 | ||||
| -rw-r--r-- | xml/test/test_prop2.py | 6 | ||||
| -rw-r--r-- | xml/test/test_prop3.py | 5 | ||||
| -rw-r--r-- | xml/types.xsd | 2 | 
4 files changed, 15 insertions, 0 deletions
| diff --git a/xml/test/props.xml b/xml/test/props.xml index cf163eb..57702e2 100644 --- a/xml/test/props.xml +++ b/xml/test/props.xml @@ -1,4 +1,6 @@  <?xml version="1.0"?>  <model xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">    <transform path="/test/prop1" register="test_prop1" unit="C" read_from_register="(503975./1024000)*${/registers/fpga/sensor_temperature:C} - 27315./100" description="formula to get real fpga temperature from the fpga_temperature register in decimal"/> +  <transform path="/test/prop2" register="test_prop2" unit="C" script="test_prop2.py" description="test python script #1" write_verification="0" /> +  <transform path="/test/prop3" register="test_prop3" unit="C" script="test_prop3.py" description="test python script #2" />  </model> diff --git a/xml/test/test_prop2.py b/xml/test/test_prop2.py new file mode 100644 index 0000000..d78dbea --- /dev/null +++ b/xml/test/test_prop2.py @@ -0,0 +1,6 @@ +def read_from_register(ctx, value): +   return ctx.get_property('/test/prop3') / 2 +     +def write_to_register(ctx, value): +    ctx.set_property(value*2, '/test/prop3') + diff --git a/xml/test/test_prop3.py b/xml/test/test_prop3.py new file mode 100644 index 0000000..c0728a3 --- /dev/null +++ b/xml/test/test_prop3.py @@ -0,0 +1,5 @@ +def read_from_register(ctx, value): +   return ctx.get_property('/registers/fpga/sensor_temperature') + 500 + +def write_to_register(ctx, value): +   ctx.set_property(value, '/registers/fpga/sensor_temperature') - 500 diff --git a/xml/types.xsd b/xml/types.xsd index 78be773..5fc8902 100644 --- a/xml/types.xsd +++ b/xml/types.xsd @@ -59,6 +59,7 @@      <xsd:attribute name="unit" type="xsd:string" />      <xsd:attribute name="type" type="pcilib_data_type_t" />      <xsd:attribute name="mode" type="pcilib_access_mode_t" /> +    <xsd:attribute name="write_verification" type="bool_t" default="1"/>      <xsd:attribute name="visible" type="bool_t" default="0" />      <xsd:attribute name="description" type="xsd:string" />    </xsd:complexType> @@ -70,6 +71,7 @@            <xsd:attribute name="register" type="xsd:string" />            <xsd:attribute name="read_from_register" type="xsd:string" />            <xsd:attribute name="write_to_register" type="xsd:string" /> +          <xsd:attribute name="script" type="xsd:string" />            <!-- xsd 1.1 <xsd:assert test="(@path and not(@name)) or (not(@path) and @name)"/> -->          </xsd:extension>      </xsd:complexContent> | 
