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