Salome HOME
a5e717df03ca39b6b133b6925a9a9c5e88ea3cac
[modules/superv.git] / examples / GraphLoopSwitch.xml
1 <!DOCTYPE Dataflow>
2 <dataflow>
3 <info-list>
4 <node>
5 <component-name>?</component-name>
6    <interface-name>?</interface-name>
7    <node-name>GraphLoopSwitch</node-name>
8    <kind>1</kind>
9    <coupled-node>?</coupled-node>
10    <service>
11 <service-name>GraphLoopSwitch</service-name>
12     <inParameter-list>
13 <inParameter>
14 <inParameter-type>long</inParameter-type>
15       <inParameter-name>InitLoop\Index</inParameter-name>     </inParameter>
16      <inParameter>
17 <inParameter-type>long</inParameter-type>
18       <inParameter-name>InitLoop\Min</inParameter-name>     </inParameter>
19      <inParameter>
20 <inParameter-type>long</inParameter-type>
21       <inParameter-name>InitLoop\Max</inParameter-name>     </inParameter>    </inParameter-list>
22     <outParameter-list>
23 <outParameter>
24 <outParameter-type>long</outParameter-type>
25       <outParameter-name>EndOfInitLoop\Index</outParameter-name>     </outParameter>
26      <outParameter>
27 <outParameter-type>long</outParameter-type>
28       <outParameter-name>EndOfInitLoop\Min</outParameter-name>     </outParameter>
29      <outParameter>
30 <outParameter-type>long</outParameter-type>
31       <outParameter-name>EndOfInitLoop\Max</outParameter-name>     </outParameter>    </outParameter-list>   </service>
32    <Parameter-list/>
33    <PyFunction-list/>
34    <creation-date>22/10/2003 - 10:36:39</creation-date>
35    <lastmodification-date>22/10/2003 - 10:37:20</lastmodification-date>
36    <editor-release>1.05</editor-release>
37    <author>?</author>
38    <container>?</container>
39    <comment>?</comment>
40    <x-position>0</x-position>
41    <y-position>0</y-position>  </node> </info-list>
42  <node-list>
43 <node>
44 <component-name>?</component-name>
45    <interface-name>?</interface-name>
46    <node-name>IsOdd</node-name>
47    <kind>3</kind>
48    <coupled-node>?</coupled-node>
49    <service>
50 <service-name>IsOdd</service-name>
51     <inParameter-list>
52 <inParameter>
53 <inParameter-type>long</inParameter-type>
54       <inParameter-name>a</inParameter-name>     </inParameter>
55      <inParameter>
56 <inParameter-type>boolean</inParameter-type>
57       <inParameter-name>Even</inParameter-name>     </inParameter>    </inParameter-list>
58     <outParameter-list>
59 <outParameter>
60 <outParameter-type>long</outParameter-type>
61       <outParameter-name>a</outParameter-name>     </outParameter>    </outParameter-list>   </service>
62    <Parameter-list/>
63    <PyFunction-list>
64 <PyFunction>
65 <FuncName>IsOdd</FuncName>
66      <PyFunc><![CDATA[from time import *    ]]></PyFunc>
67      <PyFunc><![CDATA[def IsOdd(a,Even) :        ]]></PyFunc>
68      <PyFunc><![CDATA[    print a,"IsOdd (GraphLoopSwitch1)"       ]]></PyFunc>
69      <PyFunc><![CDATA[    sleep( 1 )    ]]></PyFunc>
70      <PyFunc><![CDATA[    return a      ]]></PyFunc>    </PyFunction>   </PyFunction-list>
71    <creation-date>22/10/2003 - 10:36:39</creation-date>
72    <lastmodification-date>22/10/2003 - 10:36:39</lastmodification-date>
73    <editor-release>1.05</editor-release>
74    <author>?</author>
75    <container>?</container>
76    <comment>Python function</comment>
77    <x-position>397</x-position>
78    <y-position>1</y-position>  </node>
79   <node>
80 <component-name>?</component-name>
81    <interface-name>?</interface-name>
82    <node-name>InitLoop</node-name>
83    <kind>4</kind>
84    <coupled-node>EndOfInitLoop</coupled-node>
85    <service>
86 <service-name>Loop</service-name>
87     <inParameter-list>
88 <inParameter>
89 <inParameter-type>long</inParameter-type>
90       <inParameter-name>Index</inParameter-name>     </inParameter>
91      <inParameter>
92 <inParameter-type>long</inParameter-type>
93       <inParameter-name>Min</inParameter-name>     </inParameter>
94      <inParameter>
95 <inParameter-type>long</inParameter-type>
96       <inParameter-name>Max</inParameter-name>     </inParameter>    </inParameter-list>
97     <outParameter-list>
98 <outParameter>
99 <outParameter-type>long</outParameter-type>
100       <outParameter-name>Index</outParameter-name>     </outParameter>
101      <outParameter>
102 <outParameter-type>long</outParameter-type>
103       <outParameter-name>Min</outParameter-name>     </outParameter>
104      <outParameter>
105 <outParameter-type>long</outParameter-type>
106       <outParameter-name>Max</outParameter-name>     </outParameter>    </outParameter-list>   </service>
107    <Parameter-list/>
108    <PyFunction-list>
109 <PyFunction>
110 <FuncName>?</FuncName>
111      <PyFunc><![CDATA[?]]></PyFunc>    </PyFunction>
112     <PyFunction>
113 <FuncName>?</FuncName>
114      <PyFunc><![CDATA[?]]></PyFunc>    </PyFunction>
115     <PyFunction>
116 <FuncName>?</FuncName>
117      <PyFunc><![CDATA[?]]></PyFunc>    </PyFunction>   </PyFunction-list>
118    <creation-date>22/10/2003 - 10:36:40</creation-date>
119    <lastmodification-date>22/10/2003 - 10:36:40</lastmodification-date>
120    <editor-release>1.05</editor-release>
121    <author>?</author>
122    <container>?</container>
123    <comment>?</comment>
124    <x-position>10</x-position>
125    <y-position>108</y-position>  </node>
126   <node>
127 <component-name>?</component-name>
128    <interface-name>?</interface-name>
129    <node-name>EndOfInitLoop</node-name>
130    <kind>5</kind>
131    <coupled-node>InitLoop</coupled-node>
132    <service>
133 <service-name>EndLoop</service-name>
134     <inParameter-list>
135 <inParameter>
136 <inParameter-type>long</inParameter-type>
137       <inParameter-name>Index</inParameter-name>     </inParameter>
138      <inParameter>
139 <inParameter-type>long</inParameter-type>
140       <inParameter-name>Min</inParameter-name>     </inParameter>
141      <inParameter>
142 <inParameter-type>long</inParameter-type>
143       <inParameter-name>Max</inParameter-name>     </inParameter>    </inParameter-list>
144     <outParameter-list>
145 <outParameter>
146 <outParameter-type>long</outParameter-type>
147       <outParameter-name>Index</outParameter-name>     </outParameter>
148      <outParameter>
149 <outParameter-type>long</outParameter-type>
150       <outParameter-name>Min</outParameter-name>     </outParameter>
151      <outParameter>
152 <outParameter-type>long</outParameter-type>
153       <outParameter-name>Max</outParameter-name>     </outParameter>    </outParameter-list>   </service>
154    <Parameter-list/>
155    <PyFunction-list>
156 <PyFunction>
157 <FuncName>EndOfInitLoop</FuncName>
158      <PyFunc><![CDATA[def EndOfInitLoop( DoLoop , Index , Min , Max ) :]]></PyFunc>
159      <PyFunc><![CDATA[  Index = Index + 1     ]]></PyFunc>
160      <PyFunc><![CDATA[  if Index <= Max :   ]]></PyFunc>
161      <PyFunc><![CDATA[          DoLoop = 1     ]]></PyFunc>
162      <PyFunc><![CDATA[  else :     ]]></PyFunc>
163      <PyFunc><![CDATA[          DoLoop = 0     ]]></PyFunc>
164      <PyFunc><![CDATA[  return DoLoop,Index,Min,Max     ]]></PyFunc>    </PyFunction>   </PyFunction-list>
165    <creation-date>22/10/2003 - 10:36:40</creation-date>
166    <lastmodification-date>22/10/2003 - 10:36:40</lastmodification-date>
167    <editor-release>1.05</editor-release>
168    <author>?</author>
169    <container>?</container>
170    <comment>?</comment>
171    <x-position>767</x-position>
172    <y-position>102</y-position>  </node>
173   <node>
174 <component-name>?</component-name>
175    <interface-name>?</interface-name>
176    <node-name>Switch</node-name>
177    <kind>6</kind>
178    <coupled-node>EndSwitch</coupled-node>
179    <service>
180 <service-name>Switch</service-name>
181     <inParameter-list>
182 <inParameter>
183 <inParameter-type>long</inParameter-type>
184       <inParameter-name>a</inParameter-name>     </inParameter>    </inParameter-list>
185     <outParameter-list>
186 <outParameter>
187 <outParameter-type>long</outParameter-type>
188       <outParameter-name>Odd</outParameter-name>     </outParameter>
189      <outParameter>
190 <outParameter-type>int</outParameter-type>
191       <outParameter-name>Even</outParameter-name>     </outParameter>
192      <outParameter>
193 <outParameter-type>int</outParameter-type>
194       <outParameter-name>a</outParameter-name>     </outParameter>    </outParameter-list>   </service>
195    <Parameter-list/>
196    <PyFunction-list>
197 <PyFunction>
198 <FuncName>Switch</FuncName>
199      <PyFunc><![CDATA[from time import *  ]]></PyFunc>
200      <PyFunc><![CDATA[def Switch(a) :    ]]></PyFunc>
201      <PyFunc><![CDATA[    if ( a & 1 ) == 0 :  ]]></PyFunc>
202      <PyFunc><![CDATA[        sleep(1)  ]]></PyFunc>
203      <PyFunc><![CDATA[    return a & 1,1-(a&1),a    ]]></PyFunc>    </PyFunction>   </PyFunction-list>
204    <creation-date>22/10/2003 - 10:36:59</creation-date>
205    <lastmodification-date>22/10/2003 - 10:36:59</lastmodification-date>
206    <editor-release>1.05</editor-release>
207    <author>?</author>
208    <container>?</container>
209    <comment>?</comment>
210    <x-position>194</x-position>
211    <y-position>109</y-position>  </node>
212   <node>
213 <component-name>?</component-name>
214    <interface-name>?</interface-name>
215    <node-name>EndSwitch</node-name>
216    <kind>7</kind>
217    <coupled-node>Switch</coupled-node>
218    <service>
219 <service-name>EndSwitch</service-name>
220     <inParameter-list>
221 <inParameter>
222 <inParameter-type>long</inParameter-type>
223       <inParameter-name>a</inParameter-name>     </inParameter>    </inParameter-list>
224     <outParameter-list>
225 <outParameter>
226 <outParameter-type>long</outParameter-type>
227       <outParameter-name>a</outParameter-name>     </outParameter>    </outParameter-list>   </service>
228    <Parameter-list/>
229    <PyFunction-list>
230 <PyFunction>
231 <FuncName>EndSwitch</FuncName>
232      <PyFunc><![CDATA[def EndSwitch(a) :    ]]></PyFunc>
233      <PyFunc><![CDATA[    if ( a & 1 ) == 0 :  ]]></PyFunc>
234      <PyFunc><![CDATA[        sleep(1)  ]]></PyFunc>
235      <PyFunc><![CDATA[    return a    ]]></PyFunc>    </PyFunction>   </PyFunction-list>
236    <creation-date>22/10/2003 - 10:36:59</creation-date>
237    <lastmodification-date>22/10/2003 - 10:36:59</lastmodification-date>
238    <editor-release>1.05</editor-release>
239    <author>?</author>
240    <container>?</container>
241    <comment>?</comment>
242    <x-position>587</x-position>
243    <y-position>103</y-position>  </node> </node-list>
244  <link-list>
245 <link>
246 <fromnode-name>IsOdd</fromnode-name>
247    <fromserviceparameter-name>a</fromserviceparameter-name>
248    <tonode-name>EndSwitch</tonode-name>
249    <toserviceparameter-name>a</toserviceparameter-name>
250    <coord-list>
251 <coord>
252 <x>576</x>
253      <y>136</y>    </coord>
254     <coord>
255 <x>575</x>
256      <y>81</y>    </coord>   </coord-list>  </link>
257   <link>
258 <fromnode-name>InitLoop</fromnode-name>
259    <fromserviceparameter-name>DoLoop</fromserviceparameter-name>
260    <tonode-name>EndOfInitLoop</tonode-name>
261    <toserviceparameter-name>DoLoop</toserviceparameter-name>
262    <coord-list/>  </link>
263   <link>
264 <fromnode-name>InitLoop</fromnode-name>
265    <fromserviceparameter-name>Index</fromserviceparameter-name>
266    <tonode-name>Switch</tonode-name>
267    <toserviceparameter-name>a</toserviceparameter-name>
268    <coord-list/>  </link>
269   <link>
270 <fromnode-name>InitLoop</fromnode-name>
271    <fromserviceparameter-name>Min</fromserviceparameter-name>
272    <tonode-name>EndOfInitLoop</tonode-name>
273    <toserviceparameter-name>Min</toserviceparameter-name>
274    <coord-list/>  </link>
275   <link>
276 <fromnode-name>InitLoop</fromnode-name>
277    <fromserviceparameter-name>Max</fromserviceparameter-name>
278    <tonode-name>EndOfInitLoop</tonode-name>
279    <toserviceparameter-name>Max</toserviceparameter-name>
280    <coord-list/>  </link>
281   <link>
282 <fromnode-name>EndOfInitLoop</fromnode-name>
283    <fromserviceparameter-name>DoLoop</fromserviceparameter-name>
284    <tonode-name>InitLoop</tonode-name>
285    <toserviceparameter-name>InitLoop</toserviceparameter-name>
286    <coord-list/>  </link>
287   <link>
288 <fromnode-name>Switch</fromnode-name>
289    <fromserviceparameter-name>Odd</fromserviceparameter-name>
290    <tonode-name>IsOdd</tonode-name>
291    <toserviceparameter-name>InGate</toserviceparameter-name>
292    <coord-list/>  </link>
293   <link>
294 <fromnode-name>Switch</fromnode-name>
295    <fromserviceparameter-name>Even</fromserviceparameter-name>
296    <tonode-name>EndSwitch</tonode-name>
297    <toserviceparameter-name>Default</toserviceparameter-name>
298    <coord-list/>  </link>
299   <link>
300 <fromnode-name>Switch</fromnode-name>
301    <fromserviceparameter-name>Even</fromserviceparameter-name>
302    <tonode-name>IsOdd</tonode-name>
303    <toserviceparameter-name>Even</toserviceparameter-name>
304    <coord-list>
305 <coord>
306 <x>375</x>
307      <y>111</y>    </coord>
308     <coord>
309 <x>375</x>
310      <y>172</y>    </coord>   </coord-list>  </link>
311   <link>
312 <fromnode-name>Switch</fromnode-name>
313    <fromserviceparameter-name>a</fromserviceparameter-name>
314    <tonode-name>IsOdd</tonode-name>
315    <toserviceparameter-name>a</toserviceparameter-name>
316    <coord-list>
317 <coord>
318 <x>362</x>
319      <y>82</y>    </coord>
320     <coord>
321 <x>360</x>
322      <y>201</y>    </coord>   </coord-list>  </link>
323   <link>
324 <fromnode-name>EndSwitch</fromnode-name>
325    <fromserviceparameter-name>a</fromserviceparameter-name>
326    <tonode-name>EndOfInitLoop</tonode-name>
327    <toserviceparameter-name>Index</toserviceparameter-name>
328    <coord-list/>  </link> </link-list>
329  <data-list>
330 <data>
331 <fromnode-name>GraphLoopSwitch</fromnode-name>
332    <fromserviceparameter-name>InitLoop\Index</fromserviceparameter-name>
333    <tonode-name>InitLoop</tonode-name>
334    <toserviceparameter-name>Index</toserviceparameter-name>
335    <data-value>
336 <value-type>3</value-type>
337     <value>0</value>   </data-value>
338    <coord-list/>  </data>
339   <data>
340 <fromnode-name>GraphLoopSwitch</fromnode-name>
341    <fromserviceparameter-name>InitLoop\Min</fromserviceparameter-name>
342    <tonode-name>InitLoop</tonode-name>
343    <toserviceparameter-name>Min</toserviceparameter-name>
344    <data-value>
345 <value-type>3</value-type>
346     <value>0</value>   </data-value>
347    <coord-list/>  </data>
348   <data>
349 <fromnode-name>GraphLoopSwitch</fromnode-name>
350    <fromserviceparameter-name>InitLoop\Max</fromserviceparameter-name>
351    <tonode-name>InitLoop</tonode-name>
352    <toserviceparameter-name>Max</toserviceparameter-name>
353    <data-value>
354 <value-type>3</value-type>
355     <value>100</value>   </data-value>
356    <coord-list/>  </data> </data-list></dataflow>