Salome HOME
98d6ba29985e41eb1cdc81cf8c7df8a373ef26e9
[samples/datafiles.git] / Superv / Graphs / GraphSwitch1.xml
1 <!DOCTYPE SuperGraph>
2 <!--
3   Copyright (C) 2007-2014  CEA/DEN, EDF R&D, OPEN CASCADE
4
5   Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
6   CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
7
8   This library is free software; you can redistribute it and/or
9   modify it under the terms of the GNU Lesser General Public
10   License as published by the Free Software Foundation; either
11   version 2.1 of the License, or (at your option) any later version.
12
13   This library is distributed in the hope that it will be useful,
14   but WITHOUT ANY WARRANTY; without even the implied warranty of
15   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
16   Lesser General Public License for more details.
17
18   You should have received a copy of the GNU Lesser General Public
19   License along with this library; if not, write to the Free Software
20   Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
21
22   See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
23
24 -->
25 <supergraph>
26  <dataflow>
27   <info-list>
28    <node>
29     <component-name>?</component-name>
30     <interface-name>?</interface-name>
31     <node-name>GraphSwitch1</node-name>
32     <kind>1</kind>
33     <coupled-node>?</coupled-node>
34     <service>
35      <service-name>GraphSwitch1</service-name>
36      <inParameter-list>
37       <inParameter>
38        <inParameter-type>long</inParameter-type>
39        <inParameter-name>InitLoop__Index</inParameter-name>
40       </inParameter>
41       <inParameter>
42        <inParameter-type>long</inParameter-type>
43        <inParameter-name>InitLoop__Min</inParameter-name>
44       </inParameter>
45       <inParameter>
46        <inParameter-type>long</inParameter-type>
47        <inParameter-name>InitLoop__Max</inParameter-name>
48       </inParameter>
49      </inParameter-list>
50      <outParameter-list>
51       <outParameter>
52        <outParameter-type>long</outParameter-type>
53        <outParameter-name>EndOfInitLoop__Index</outParameter-name>
54       </outParameter>
55       <outParameter>
56        <outParameter-type>long</outParameter-type>
57        <outParameter-name>EndOfInitLoop__Min</outParameter-name>
58       </outParameter>
59       <outParameter>
60        <outParameter-type>long</outParameter-type>
61        <outParameter-name>EndOfInitLoop__Max</outParameter-name>
62       </outParameter>
63       <outParameter>
64        <outParameter-type>int</outParameter-type>
65        <outParameter-name>Switch__Even</outParameter-name>
66       </outParameter>
67      </outParameter-list>
68     </service>
69     <DataStream-list/>
70     <PyFunction-list/>
71     <creation-date>1/10/2003 - 17:12:48</creation-date>
72     <lastmodification-date>9/12/2005 - 17:19:21</lastmodification-date>
73     <editor-release>1.05</editor-release>
74     <author>?</author>
75     <container>?</container>
76     <comment>?</comment>
77     <x-position>0</x-position>
78     <y-position>0</y-position>
79    </node>
80   </info-list>
81   <node-list>
82    <node>
83     <component-name>?</component-name>
84     <interface-name>?</interface-name>
85     <node-name>IsOdd</node-name>
86     <kind>3</kind>
87     <coupled-node>?</coupled-node>
88     <service>
89      <service-name>IsOdd</service-name>
90      <inParameter-list>
91       <inParameter>
92        <inParameter-type>long</inParameter-type>
93        <inParameter-name>a</inParameter-name>
94       </inParameter>
95      </inParameter-list>
96      <outParameter-list>
97       <outParameter>
98        <outParameter-type>long</outParameter-type>
99        <outParameter-name>a</outParameter-name>
100       </outParameter>
101      </outParameter-list>
102     </service>
103     <DataStream-list/>
104     <PyFunction-list>
105      <PyFunction>
106       <FuncName>IsOdd</FuncName>
107       <PyFunc><![CDATA[from time import *   ]]></PyFunc>
108       <PyFunc><![CDATA[def IsOdd(a) :       ]]></PyFunc>
109       <PyFunc><![CDATA[    print a,"IsOdd (GraphSwitch1)"      ]]></PyFunc>
110       <PyFunc><![CDATA[    sleep( 1 )   ]]></PyFunc>
111       <PyFunc><![CDATA[    return a     ]]></PyFunc>
112      </PyFunction>
113     </PyFunction-list>
114     <creation-date>9/12/2005 - 17:18:41</creation-date>
115     <lastmodification-date>9/12/2005 - 17:18:41</lastmodification-date>
116     <editor-release>1.05</editor-release>
117     <author>?</author>
118     <container>?</container>
119     <comment>Python function</comment>
120     <x-position>408</x-position>
121     <y-position>34</y-position>
122    </node>
123    <node>
124     <component-name>?</component-name>
125     <interface-name>?</interface-name>
126     <node-name>InitLoop</node-name>
127     <kind>4</kind>
128     <coupled-node>EndOfInitLoop</coupled-node>
129     <service>
130      <service-name>InitLoop</service-name>
131      <inParameter-list>
132       <inParameter>
133        <inParameter-type>long</inParameter-type>
134        <inParameter-name>Index</inParameter-name>
135       </inParameter>
136       <inParameter>
137        <inParameter-type>long</inParameter-type>
138        <inParameter-name>Min</inParameter-name>
139       </inParameter>
140       <inParameter>
141        <inParameter-type>long</inParameter-type>
142        <inParameter-name>Max</inParameter-name>
143       </inParameter>
144      </inParameter-list>
145      <outParameter-list>
146       <outParameter>
147        <outParameter-type>long</outParameter-type>
148        <outParameter-name>Index</outParameter-name>
149       </outParameter>
150       <outParameter>
151        <outParameter-type>long</outParameter-type>
152        <outParameter-name>Min</outParameter-name>
153       </outParameter>
154       <outParameter>
155        <outParameter-type>long</outParameter-type>
156        <outParameter-name>Max</outParameter-name>
157       </outParameter>
158      </outParameter-list>
159     </service>
160     <DataStream-list/>
161     <PyFunction-list>
162      <PyFunction>
163       <FuncName>InitLoop</FuncName>
164       <PyFunc><![CDATA[def InitLoop(Index,Min,Max) :      ]]></PyFunc>
165       <PyFunc><![CDATA[ return Index,Min,Max     ]]></PyFunc>
166      </PyFunction>
167      <PyFunction>
168       <FuncName>MoreLoop</FuncName>
169       <PyFunc><![CDATA[def MoreLoop(Index,Min,Max) :     ]]></PyFunc>
170       <PyFunc><![CDATA[ if Index <= Max :   ]]></PyFunc>
171       <PyFunc><![CDATA[         DoLoop = 1     ]]></PyFunc>
172       <PyFunc><![CDATA[ else :     ]]></PyFunc>
173       <PyFunc><![CDATA[         DoLoop = 0     ]]></PyFunc>
174       <PyFunc><![CDATA[ return DoLoop,Index,Min,Max     ]]></PyFunc>
175      </PyFunction>
176      <PyFunction>
177       <FuncName>NextLoop</FuncName>
178       <PyFunc><![CDATA[def NextLoop(Index,Min,Max) :     ]]></PyFunc>
179       <PyFunc><![CDATA[ Index = Index + 1     ]]></PyFunc>
180       <PyFunc><![CDATA[ return Index,Min,Max     ]]></PyFunc>
181      </PyFunction>
182     </PyFunction-list>
183     <creation-date>9/12/2005 - 17:18:41</creation-date>
184     <lastmodification-date>9/12/2005 - 17:18:41</lastmodification-date>
185     <editor-release>1.05</editor-release>
186     <author>?</author>
187     <container>?</container>
188     <comment>Compute Node</comment>
189     <x-position>10</x-position>
190     <y-position>129</y-position>
191    </node>
192    <node>
193     <component-name>?</component-name>
194     <interface-name>?</interface-name>
195     <node-name>EndOfInitLoop</node-name>
196     <kind>5</kind>
197     <coupled-node>InitLoop</coupled-node>
198     <service>
199      <service-name>EndOfInitLoop</service-name>
200      <inParameter-list>
201       <inParameter>
202        <inParameter-type>long</inParameter-type>
203        <inParameter-name>Index</inParameter-name>
204       </inParameter>
205       <inParameter>
206        <inParameter-type>long</inParameter-type>
207        <inParameter-name>Min</inParameter-name>
208       </inParameter>
209       <inParameter>
210        <inParameter-type>long</inParameter-type>
211        <inParameter-name>Max</inParameter-name>
212       </inParameter>
213      </inParameter-list>
214      <outParameter-list>
215       <outParameter>
216        <outParameter-type>long</outParameter-type>
217        <outParameter-name>Index</outParameter-name>
218       </outParameter>
219       <outParameter>
220        <outParameter-type>long</outParameter-type>
221        <outParameter-name>Min</outParameter-name>
222       </outParameter>
223       <outParameter>
224        <outParameter-type>long</outParameter-type>
225        <outParameter-name>Max</outParameter-name>
226       </outParameter>
227      </outParameter-list>
228     </service>
229     <DataStream-list/>
230     <PyFunction-list>
231      <PyFunction>
232       <FuncName>?</FuncName>
233       <PyFunc><![CDATA[?]]></PyFunc>
234      </PyFunction>
235     </PyFunction-list>
236     <creation-date>9/12/2005 - 17:18:41</creation-date>
237     <lastmodification-date>9/12/2005 - 17:18:41</lastmodification-date>
238     <editor-release>1.05</editor-release>
239     <author>?</author>
240     <container>?</container>
241     <comment>Compute Node</comment>
242     <x-position>862</x-position>
243     <y-position>156</y-position>
244    </node>
245    <node>
246     <component-name>?</component-name>
247     <interface-name>?</interface-name>
248     <node-name>Switch</node-name>
249     <kind>6</kind>
250     <coupled-node>EndOfSwitch</coupled-node>
251     <service>
252      <service-name>Switch</service-name>
253      <inParameter-list>
254       <inParameter>
255        <inParameter-type>long</inParameter-type>
256        <inParameter-name>a</inParameter-name>
257       </inParameter>
258      </inParameter-list>
259      <outParameter-list>
260       <outParameter>
261        <outParameter-type>long</outParameter-type>
262        <outParameter-name>Odd</outParameter-name>
263       </outParameter>
264       <outParameter>
265        <outParameter-type>int</outParameter-type>
266        <outParameter-name>Even</outParameter-name>
267       </outParameter>
268       <outParameter>
269        <outParameter-type>int</outParameter-type>
270        <outParameter-name>a</outParameter-name>
271       </outParameter>
272      </outParameter-list>
273     </service>
274     <DataStream-list/>
275     <PyFunction-list>
276      <PyFunction>
277       <FuncName>Switch</FuncName>
278       <PyFunc><![CDATA[from time import *  ]]></PyFunc>
279       <PyFunc><![CDATA[def Switch(a) :    ]]></PyFunc>
280       <PyFunc><![CDATA[    if ( a & 1 ) == 0 :  ]]></PyFunc>
281       <PyFunc><![CDATA[        sleep(1)  ]]></PyFunc>
282       <PyFunc><![CDATA[    return a & 1,1-(a&1),a    ]]></PyFunc>
283      </PyFunction>
284     </PyFunction-list>
285     <creation-date>9/12/2005 - 17:18:41</creation-date>
286     <lastmodification-date>9/12/2005 - 17:18:41</lastmodification-date>
287     <editor-release>1.05</editor-release>
288     <author>?</author>
289     <container>?</container>
290     <comment>Compute Node</comment>
291     <x-position>195</x-position>
292     <y-position>130</y-position>
293    </node>
294    <node>
295     <component-name>?</component-name>
296     <interface-name>?</interface-name>
297     <node-name>EndOfSwitch</node-name>
298     <kind>7</kind>
299     <coupled-node>Switch</coupled-node>
300     <service>
301      <service-name>EndOfSwitch</service-name>
302      <inParameter-list>
303       <inParameter>
304        <inParameter-type>long</inParameter-type>
305        <inParameter-name>a</inParameter-name>
306       </inParameter>
307      </inParameter-list>
308      <outParameter-list>
309       <outParameter>
310        <outParameter-type>long</outParameter-type>
311        <outParameter-name>a</outParameter-name>
312       </outParameter>
313      </outParameter-list>
314     </service>
315     <DataStream-list/>
316     <PyFunction-list>
317      <PyFunction>
318       <FuncName>?</FuncName>
319       <PyFunc><![CDATA[?]]></PyFunc>
320      </PyFunction>
321     </PyFunction-list>
322     <creation-date>9/12/2005 - 17:18:41</creation-date>
323     <lastmodification-date>9/12/2005 - 17:18:41</lastmodification-date>
324     <editor-release>1.05</editor-release>
325     <author>?</author>
326     <container>?</container>
327     <comment>Compute Node</comment>
328     <x-position>640</x-position>
329     <y-position>155</y-position>
330    </node>
331   </node-list>
332   <link-list>
333    <link>
334     <fromnode-name>IsOdd</fromnode-name>
335     <fromserviceparameter-name>a</fromserviceparameter-name>
336     <tonode-name>EndOfSwitch</tonode-name>
337     <toserviceparameter-name>a</toserviceparameter-name>
338     <coord-list/>
339    </link>
340    <link>
341     <fromnode-name>InitLoop</fromnode-name>
342     <fromserviceparameter-name>DoLoop</fromserviceparameter-name>
343     <tonode-name>EndOfInitLoop</tonode-name>
344     <toserviceparameter-name>DoLoop</toserviceparameter-name>
345     <coord-list/>
346    </link>
347    <link>
348     <fromnode-name>InitLoop</fromnode-name>
349     <fromserviceparameter-name>Index</fromserviceparameter-name>
350     <tonode-name>Switch</tonode-name>
351     <toserviceparameter-name>a</toserviceparameter-name>
352     <coord-list/>
353    </link>
354    <link>
355     <fromnode-name>InitLoop</fromnode-name>
356     <fromserviceparameter-name>Min</fromserviceparameter-name>
357     <tonode-name>EndOfInitLoop</tonode-name>
358     <toserviceparameter-name>Min</toserviceparameter-name>
359     <coord-list/>
360    </link>
361    <link>
362     <fromnode-name>InitLoop</fromnode-name>
363     <fromserviceparameter-name>Max</fromserviceparameter-name>
364     <tonode-name>EndOfInitLoop</tonode-name>
365     <toserviceparameter-name>Max</toserviceparameter-name>
366     <coord-list/>
367    </link>
368    <link>
369     <fromnode-name>EndOfInitLoop</fromnode-name>
370     <fromserviceparameter-name>DoLoop</fromserviceparameter-name>
371     <tonode-name>InitLoop</tonode-name>
372     <toserviceparameter-name>DoLoop</toserviceparameter-name>
373     <coord-list/>
374    </link>
375    <link>
376     <fromnode-name>Switch</fromnode-name>
377     <fromserviceparameter-name>Odd</fromserviceparameter-name>
378     <tonode-name>IsOdd</tonode-name>
379     <toserviceparameter-name>Gate</toserviceparameter-name>
380     <coord-list/>
381    </link>
382    <link>
383     <fromnode-name>Switch</fromnode-name>
384     <fromserviceparameter-name>a</fromserviceparameter-name>
385     <tonode-name>IsOdd</tonode-name>
386     <toserviceparameter-name>a</toserviceparameter-name>
387     <coord-list>
388      <coord>
389       <x>375</x>
390       <y>105</y>
391      </coord>
392      <coord>
393       <x>375</x>
394       <y>201</y>
395      </coord>
396     </coord-list>
397    </link>
398    <link>
399     <fromnode-name>Switch</fromnode-name>
400     <fromserviceparameter-name>Default</fromserviceparameter-name>
401     <tonode-name>EndOfSwitch</tonode-name>
402     <toserviceparameter-name>Default</toserviceparameter-name>
403     <coord-list/>
404    </link>
405    <link>
406     <fromnode-name>EndOfSwitch</fromnode-name>
407     <fromserviceparameter-name>a</fromserviceparameter-name>
408     <tonode-name>EndOfInitLoop</tonode-name>
409     <toserviceparameter-name>Index</toserviceparameter-name>
410     <coord-list/>
411    </link>
412   </link-list>
413   <data-list>
414    <data>
415     <fromnode-name>GraphSwitch1</fromnode-name>
416     <fromserviceparameter-name>InitLoop__Index</fromserviceparameter-name>
417     <tonode-name>InitLoop</tonode-name>
418     <toserviceparameter-name>Index</toserviceparameter-name>
419     <data-value>
420      <value-type>3</value-type>
421      <value>0</value>
422     </data-value>
423     <coord-list/>
424    </data>
425    <data>
426     <fromnode-name>GraphSwitch1</fromnode-name>
427     <fromserviceparameter-name>InitLoop__Min</fromserviceparameter-name>
428     <tonode-name>InitLoop</tonode-name>
429     <toserviceparameter-name>Min</toserviceparameter-name>
430     <data-value>
431      <value-type>3</value-type>
432      <value>0</value>
433     </data-value>
434     <coord-list/>
435    </data>
436    <data>
437     <fromnode-name>GraphSwitch1</fromnode-name>
438     <fromserviceparameter-name>InitLoop__Max</fromserviceparameter-name>
439     <tonode-name>InitLoop</tonode-name>
440     <toserviceparameter-name>Max</toserviceparameter-name>
441     <data-value>
442      <value-type>3</value-type>
443      <value>100</value>
444     </data-value>
445     <coord-list/>
446    </data>
447   </data-list>
448  </dataflow>
449 </supergraph>
450