ProcessingBlock¶
The ProcessingBlock is used to configure a processing block.
A processing block consumes data from its inputs, processes it, and produces output on its signals.
Example¶
1 2 3 4 5 6 7 8 9 10 11 12 | <Controller Name="Arcas 5EG-0">
<AxisControl Name="X" Template="LogicalAxisControlStandard3rdOrderTemplate">
<ProcessingBlock Name="Watchdog" Template="WatchdogTemplate">
<Signal Name="Interval" Unit="s">1.0</Signal>
</ProcessingBlock>
</AxisControl>
<ProcessingBlock Name="WaveformGenerator" Template="WaveformGeneratorTemplate">
<Signal Name="Gain" Unit="">1.0</Signal>
<Signal Name="Type" Unit="">1</Signal>
</ProcessingBlock>
</Controller>
|
Note
A ProcessingBlock is instantiated (and scoped) within a controller.
If a ProcessingBlock block with the provided name already exists in the controller where it is defined, then either:
if it has the exact same attributes (specifying attributes when
Templatealready exists is optional), then input connections, signal values or updatable content can be changed.otherwise, initialization fails.
XML schema¶
ProcessingBlockType¶1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <xs:complexType name="ProcessingBlockType">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Signal" type="SignalType"/>
<xs:element name="Event" type="EventType"/>
<xs:element name="Input" type="InputType"/>
<xs:element name="Updatable" type="UpdatableType"/>
<xs:element name="Filter" type="FilterType"/>
<xs:element name="Variant" type="ProcessingBlockVariantType"/>
<xs:element name="NamedMutation" type="NamedMutationType"/>
</xs:choice>
<xs:attribute name="Name" type="xs:string" use="required"/>
<xs:attribute name="Template" type="xs:string"/>
<xs:attribute name="ExecutionBudget" type="xs:string"/>
<xs:attribute name="ExecutionType" type="xs:string"/>
<xs:attribute name="Period" type="xs:string"/>
<xs:attribute name="CalculationStart" type="Boolean"/>
</xs:complexType>
|
Attribute |
Description |
|---|---|
|
Used to define a name for a processing block. |
|
Specifies the template, which is required to be instantiated. |
|
Defines the maximum amount of time required by the processing block for each process step`. |
|
Reserved. |
|
Reserved. |
|
Defines the block to be calculated first In case of a circular dependency. |
ProcessingBlockVariantType¶1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | <xs:complexType name="ProcessingBlockVariantType">
<xs:complexContent>
<xs:extension base="BaseVariantType">
<xs:choice minOccurs="0" maxOccurs="unbounded">
<xs:element name="Signal" type="SignalType"/>
<xs:element name="Event" type="EventType"/>
<xs:element name="Input" type="InputType"/>
<xs:element name="Updatable" type="UpdatableType"/>
<xs:element name="Filter" type="FilterType"/>
<xs:element name="Variant" type="ProcessingBlockVariantType"/>
<xs:element name="NamedMutation" type="NamedMutationType"/>
</xs:choice>
</xs:extension>
</xs:complexContent>
</xs:complexType>
|