dol: initial dol commit
[jump.git] / dol / examples / example2 / example2.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <processnetwork xmlns="http://www.tik.ee.ethz.ch/~shapes/schema/PROCESSNETWORK" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.tik.ee.ethz.ch/~shapes/schema/PROCESSNETWORK
3 http://www.tik.ee.ethz.ch/~shapes/schema/processnetwork.xsd" name="example2"> 
4
5   <variable value="3" name="N"/>
6
7   <!-- instantiate resources -->
8   <process name="generator">
9     <port type="output" name="10"/>
10     <source type="c" location="generator.c"/>
11   </process>
12
13   <iterator variable="i" range="N">
14     <process name="square">
15       <append function="i"/>
16       <port type="input" name="0"/>
17       <port type="output" name="1"/>
18       <source type="c" location="square.c"/>
19     </process>
20   </iterator>
21
22   <process name="consumer">
23     <port type="input" name="100"/>
24     <source type="c" location="consumer.c"/>
25   </process>
26
27   <iterator variable="i" range="N + 1">
28     <sw_channel type="fifo" size="10" name="C2">
29       <append function="i"/>
30       <port type="input" name="0"/>
31       <port type="output" name="1"/>
32     </sw_channel>
33   </iterator>
34
35   <!-- instantiate connection -->
36   <iterator variable="i" range="N">
37     <connection name="to_square">
38       <append function="i"/>
39       <origin name="C2">
40         <append function="i"/>
41         <port name="1"/>
42       </origin>
43       <target name="square">
44         <append function="i"/>
45         <port name="0"/>
46       </target>
47     </connection>
48
49     <connection name="from_square">
50         <append function="i"/>
51         <origin name="square">
52           <append function="i"/>
53           <port name="1"/>
54         </origin>
55         <target name="C2">
56           <append function="i + 1"/>
57           <port name="0"/>
58         </target>
59     </connection>
60   </iterator>
61
62   <connection name="g_">
63     <origin name="generator">
64      <port name="10"/>
65     </origin>
66     <target name="C2"> 
67       <append function="0"/>
68       <port name="0"/>
69     </target>
70   </connection>
71
72   <connection name="_c">
73     <origin name="C2">
74       <append function="N"/>
75       <port name="1"/>
76     </origin>
77     <target name="consumer">
78       <port name="100"/>
79     </target>
80   </connection>
81
82 </processnetwork>