Salome HOME
Merge branch 'V7_dev'
[modules/yacs.git] / src / yacsloader / samples / foreach_init2fin.xml
1 <?xml version='1.0' encoding='iso-8859-1' ?>
2 <proc name="Schema">
3    <property name="DefaultStudyID" value="1"/>
4    <type name="string" kind="string"/>
5    <struct name="Engines/dataref">
6       <member name="ref" type="string"/>
7    </struct>
8    <type name="bool" kind="bool"/>
9    <sequence name="boolvec" content="bool"/>
10    <type name="double" kind="double"/>
11    <sequence name="dblevec" content="double"/>
12    <objref name="file" id="file"/>
13    <type name="int" kind="int"/>
14    <sequence name="intvec" content="int"/>
15    <struct name="stringpair">
16       <member name="name" type="string"/>
17       <member name="value" type="string"/>
18    </struct>
19    <sequence name="propvec" content="stringpair"/>
20    <objref name="pyobj" id="python:obj:1.0"/>
21    <sequence name="seqboolvec" content="boolvec"/>
22    <sequence name="seqdblevec" content="dblevec"/>
23    <sequence name="seqint" content="int"/>
24    <sequence name="seqintvec" content="intvec"/>
25    <sequence name="stringvec" content="string"/>
26    <sequence name="seqstringvec" content="stringvec"/>
27    <container name="DefaultContainer">
28       <property name="container_kind" value="Salome"/>
29       <property name="attached_on_cloning" value="0"/>
30       <property name="container_name" value="FactoryServer"/>
31       <property name="name" value="localhost"/>
32    </container>
33    <foreach name="ForEachLoop" nbranch="4" type="int">
34       <initnode>
35       <inline name="initScript">
36          <script><code><![CDATA[print "initnode"
37 o1=7
38 ]]></code></script>
39          <outport name="o1" type="int"/>
40       </inline>
41       </initnode>
42       <inline name="Work">
43          <function name="traitement">
44             <code><![CDATA[def traitement(elem,):
45   res = elem * 10
46   return res 
47 ]]></code>
48          </function>
49          <load container="DefaultContainer"/>
50          <inport name="elem" type="int"/>
51          <outport name="res" type="int"/>
52       </inline>
53       <finalizenode>
54       <inline name="finalizeScript">
55          <script><code><![CDATA[print "finalizenode"
56 ]]></code></script>
57          <inport name="i2" type="int"/>
58       </inline>
59       </finalizenode>
60       <datalink control="false">
61          <fromnode>initScript</fromnode> <fromport>o1</fromport>
62          <tonode>finalizeScript</tonode> <toport>i2</toport>
63       </datalink>
64    </foreach>
65    <inline name="PostProc">
66       <script><code><![CDATA[print "Post-traitement"
67 for x in i5:
68     print x
69 ]]></code></script>
70       <load container="DefaultContainer"/>
71       <inport name="i5" type="seqint"/>
72    </inline>
73    <control> <fromnode>ForEachLoop</fromnode> <tonode>PostProc</tonode> </control>
74    <datalink control="false">
75       <fromnode>ForEachLoop</fromnode> <fromport>evalSamples</fromport>
76       <tonode>ForEachLoop.Work</tonode> <toport>elem</toport>
77    </datalink>
78    <datalink control="false">
79       <fromnode>ForEachLoop.Work</fromnode> <fromport>res</fromport>
80       <tonode>PostProc</tonode> <toport>i5</toport>
81    </datalink>
82    <parameter>
83       <tonode>ForEachLoop</tonode><toport>nbBranches</toport>
84       <value><int>4</int></value>
85    </parameter>
86    <parameter>
87       <tonode>ForEachLoop</tonode><toport>SmplsCollection</toport>
88       <value><array><data>
89 <value><int>1</int></value>
90 <value><int>2</int></value>
91 <value><int>3</int></value>
92 <value><int>4</int></value>
93 <value><int>5</int></value>
94 <value><int>6</int></value>
95 <value><int>7</int></value>
96 <value><int>8</int></value>
97 <value><int>9</int></value>
98 </data></array></value>
99    </parameter>
100 </proc>