SystemML has the concept of Sets on the input and output interfaces of a Process, allowing inputs and outputs to be grouped semantically. One set (the Default Set) always exists on each interface (input and output); it is this set that the template Process uses for its input and output port (implicitly, see the overloaded calls on SystemMLInterface). You can add more Sets if your Process needs them, but if you're not sure if you need Sets, you probably don't.
Additional sets, above and beyond the Default Set, are created for you by the framework whilst creating your Process, based on the specification given in the
Systems, Processes, Sets and Ports are referred to in SystemML documents using their SystemML Absolute Identifier. Full details of the SystemML Identifier syntax are available in the SystemML Documentation (at SystemML Systems), but we will run over parts of it below quickly, for convenience.
A process is written, simply,
The default set has the SystemML Name "", that is, the empty string. Therefore, to refer to a port on the default set of this process, we would use the identifier
XML File or Snippet
<?xml version="1.0" encoding="UTF-8"?> <!-- This is a standard process node descriptor file --> <Node> <Type>Process</Type> <Specification> <Connectivity> <InputSets> <Set>double</Set> <Set>round</Set> <Set>invert</Set> </InputSets> <OutputSets> <Set>double</Set> <Set>round</Set> <Set>invert</Set> </OutputSets> </Connectivity> </Specification> </Node>
This example uses the 1199 interface to interact with Sets.
C++ Source Code (against 1199)
|This is a documentation page for the BRAHMS Modular Execution (Simulation) Framework. For details of licensing and distribution, please click here. To advise of an error or omission, please click here.|