Salome HOME
copy tag mergefrom_BR_V0_1_CC_Salome_04oct07
[modules/yacs.git] / src / yacsloader / samples / foreach3.xml
1 <proc>
2     <!-- a for each loop with 3 branches : error on output (dblevec expected) -->
3     <!--types -->
4     <sequence name="dblevec" content="double"/>
5
6     <!--nodes -->
7     <inline name="node0" >
8       <script>
9         <code>p1=[i*0.5 for i in range(10)]</code>
10       </script>
11       <outport name="p1" type="dblevec"/>
12     </inline>
13
14     <foreach name="b1" nbranch="3" type="double" >
15       <inline name="node2" >
16         <function name="f">
17             <code>a=0</code>
18             <code>def f(p1):</code>
19             <code>  global a</code>
20             <code>  p1= p1+10.</code>
21             <code>  print a</code>
22             <code>  a=a+p1</code>
23             <code>  print a</code>
24             <code>  return p1</code>
25         </function>
26         <inport name="p1" type="double"/>
27         <outport name="p1" type="double"/>
28       </inline>
29     </foreach>
30     <inline name="node1" >
31       <script>
32         <code>print p1</code>
33       </script>
34       <inport name="p1" type="double"/>
35     </inline>
36
37     <!--control -->
38     <control> <fromnode>node0</fromnode> <tonode>b1</tonode> </control>
39     <control> <fromnode>b1</fromnode> <tonode>node1</tonode> </control>
40
41     <!--datalink -->
42     <datalink>
43       <fromnode>node0</fromnode><fromport>p1</fromport>
44       <tonode>b1</tonode> <toport>SmplsCollection</toport>
45     </datalink>
46     <datalink>
47       <fromnode>b1</fromnode><fromport>SmplPrt</fromport>
48       <tonode>b1.node2</tonode> <toport>p1</toport>
49     </datalink>
50     <datalink>
51       <fromnode>b1.node2</fromnode><fromport>p1</fromport>
52       <tonode>node1</tonode> <toport>p1</toport>
53     </datalink>
54
55     <!--parameters -->
56
57 </proc>