Salome HOME
Merge from V6_main_20120808 08Aug12
[samples/datafiles.git] / Superv / Python / GraphLoopMacroNodesOutput.py
1 #  Copyright (C) 2007-2011  CEA/DEN, EDF R&D, OPEN CASCADE
2 #
3 #  Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 #  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 #
6 #  This library is free software; you can redistribute it and/or
7 #  modify it under the terms of the GNU Lesser General Public
8 #  License as published by the Free Software Foundation; either
9 #  version 2.1 of the License.
10 #
11 #  This library is distributed in the hope that it will be useful,
12 #  but WITHOUT ANY WARRANTY; without even the implied warranty of
13 #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 #  Lesser General Public License for more details.
15 #
16 #  You should have received a copy of the GNU Lesser General Public
17 #  License along with this library; if not, write to the Free Software
18 #  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
19 #
20 #  See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 #
22 # Generated python file of Graph GraphLoopMacroNodesOutput
23 #
24 from SuperV import *
25
26 # Graph creation of GraphLoopMacroNodesOutput
27 def DefGraphLoopMacroNodesOutput() :
28     GraphLoopMacroNodesOutput = Graph( 'GraphLoopMacroNodesOutput' )
29     GraphLoopMacroNodesOutput.SetName( 'GraphLoopMacroNodesOutput' )
30     GraphLoopMacroNodesOutput.SetAuthor( 'JR' )
31     GraphLoopMacroNodesOutput.SetComment( '' )
32     GraphLoopMacroNodesOutput.Coords( 0 , 0 )
33     
34     # Creation of Factory Nodes
35     
36     Add = GraphLoopMacroNodesOutput.FNode( 'AddComponent' , 'AddComponent' , 'Add' )
37     Add.SetName( 'Add' )
38     Add.SetAuthor( '' )
39     Add.SetContainer( 'FactoryServer' )
40     Add.SetComment( 'Add from AddComponent' )
41     Add.Coords( 205 , 238 )
42     IAddx = Add.GetInPort( 'x' )
43     IAddy = Add.GetInPort( 'y' )
44     IAddGate = Add.GetInPort( 'Gate' )
45     OAddFuncValue = Add.GetOutPort( 'FuncValue' )
46     OAddz = Add.GetOutPort( 'z' )
47     OAddGate = Add.GetOutPort( 'Gate' )
48     
49     Sub = GraphLoopMacroNodesOutput.FNode( 'SubComponent' , 'SubComponent' , 'Sub' )
50     Sub.SetName( 'Sub' )
51     Sub.SetAuthor( '' )
52     Sub.SetContainer( 'FactoryServer' )
53     Sub.SetComment( 'Sub from SubComponent' )
54     Sub.Coords( 394 , 146 )
55     ISubx = Sub.GetInPort( 'x' )
56     ISuby = Sub.GetInPort( 'y' )
57     ISubGate = Sub.GetInPort( 'Gate' )
58     OSubz = Sub.GetOutPort( 'z' )
59     OSubGate = Sub.GetOutPort( 'Gate' )
60     
61     Mul = GraphLoopMacroNodesOutput.FNode( 'MulComponent' , 'MulComponent' , 'Mul' )
62     Mul.SetName( 'Mul' )
63     Mul.SetAuthor( '' )
64     Mul.SetContainer( 'FactoryServer' )
65     Mul.SetComment( 'Mul from MulComponent' )
66     Mul.Coords( 821 , 319 )
67     IMulx = Mul.GetInPort( 'x' )
68     IMuly = Mul.GetInPort( 'y' )
69     IMulGate = Mul.GetInPort( 'Gate' )
70     OMulz = Mul.GetOutPort( 'z' )
71     OMulGate = Mul.GetOutPort( 'Gate' )
72     
73     Div = GraphLoopMacroNodesOutput.FNode( 'DivComponent' , 'DivComponent' , 'Div' )
74     Div.SetName( 'Div' )
75     Div.SetAuthor( '' )
76     Div.SetContainer( 'FactoryServer' )
77     Div.SetComment( 'Div from DivComponent' )
78     Div.Coords( 825 , 133 )
79     IDivx = Div.GetInPort( 'x' )
80     IDivy = Div.GetInPort( 'y' )
81     IDivGate = Div.GetInPort( 'Gate' )
82     ODivz = Div.GetOutPort( 'z' )
83     ODivGate = Div.GetOutPort( 'Gate' )
84     
85     # Creation of InLine Nodes
86     PyResultsControl = []
87     PyResultsControl.append( 'def ResultsControl(x,y,zDiv,zMul) :' )
88     PyResultsControl.append( '    Add_FuncValue = x - y' )
89     PyResultsControl.append( '    Add_z = x + y' )
90     PyResultsControl.append( '    Sub_z = 1.5 - Add_z' )
91     PyResultsControl.append( '    Macro_GraphAdd_Add_FuncValue = Sub_z - Add_FuncValue' )
92     PyResultsControl.append( '    Macro_GraphAdd_Add_z = Sub_z + Add_FuncValue' )
93     PyResultsControl.append( '    Macro_GraphSub_z = Add_FuncValue - Add_z' )
94     PyResultsControl.append( '    Div_z = Macro_GraphAdd_Add_FuncValue/Macro_GraphAdd_Add_z' )
95     PyResultsControl.append( '    Mul_z = Sub_z * Macro_GraphSub_z' )
96     PyResultsControl.append( '    OK = \'Okay\'' )
97     PyResultsControl.append( '    if Div_z != zDiv or Mul_z != zMul :' )
98     PyResultsControl.append( '        OK = \'KO\'' )
99     PyResultsControl.append( '    return zDiv,zMul,Div_z,Mul_z,OK' )
100     PyResultsControl.append( '' )
101     ResultsControl = GraphLoopMacroNodesOutput.INode( 'ResultsControl' , PyResultsControl )
102     ResultsControl.SetName( 'ResultsControl' )
103     ResultsControl.SetAuthor( '' )
104     ResultsControl.SetComment( 'Compute Node' )
105     ResultsControl.Coords( 1102 , 196 )
106     IResultsControlx = ResultsControl.InPort( 'x' , 'double' )
107     IResultsControly = ResultsControl.InPort( 'y' , 'double' )
108     IResultsControlzDiv = ResultsControl.InPort( 'zDiv' , 'double' )
109     IResultsControlzMul = ResultsControl.InPort( 'zMul' , 'double' )
110     IResultsControlGate = ResultsControl.GetInPort( 'Gate' )
111     OResultsControlzDiv = ResultsControl.OutPort( 'zDiv' , 'double' )
112     OResultsControlzMul = ResultsControl.OutPort( 'zMul' , 'double' )
113     OResultsControlDiv_z = ResultsControl.OutPort( 'Div_z' , 'double' )
114     OResultsControlMul_z = ResultsControl.OutPort( 'Mul_z' , 'double' )
115     OResultsControlOK = ResultsControl.OutPort( 'OK' , 'string' )
116     OResultsControlGate = ResultsControl.GetOutPort( 'Gate' )
117     
118     # Creation of Loop Nodes
119     PyLoop = []
120     PyLoop.append( 'def Init(Index,Min,Max,Incr,zDiv,zMul,OK) :' )
121     PyLoop.append( '        if Min <= Max :' )
122     PyLoop.append( '            Index = Min' )
123     PyLoop.append( '        else :' )
124     PyLoop.append( '            Index = Max' )
125     PyLoop.append( '        return Index,Min,Max,Incr,zDiv,zMul,OK' )
126     PyLoop.append( '' )
127     PyMoreLoop = []
128     PyMoreLoop.append( 'def More(Index,Min,Max,Incr,zDiv,zMul,OK) :' )
129     PyMoreLoop.append( '        if Index < Max :' )
130     PyMoreLoop.append( '            DoLoop = 1' )
131     PyMoreLoop.append( '        else :' )
132     PyMoreLoop.append( '            DoLoop = 0' )
133     PyMoreLoop.append( '        return DoLoop,Index,Min,Max,Incr,zDiv,zMul,OK' )
134     PyMoreLoop.append( '' )
135     PyNextLoop = []
136     PyNextLoop.append( 'def Next(Index,Min,Max,Incr,zDiv,zMul,OK) :' )
137     PyNextLoop.append( '        Index = Index + Incr' )
138     PyNextLoop.append( '        return Index,Min,Max,Incr,zDiv,zMul,OK' )
139     PyNextLoop.append( '' )
140     Loop,EndLoop = GraphLoopMacroNodesOutput.LNode( 'Init' , PyLoop , 'More' , PyMoreLoop , 'Next' , PyNextLoop )
141     EndLoop.SetName( 'EndLoop' )
142     EndLoop.SetAuthor( '' )
143     EndLoop.SetComment( 'Compute Node' )
144     EndLoop.Coords( 1354 , 156 )
145     PyEndLoop = []
146     PyEndLoop.append( 'def EndLoop(DoLoop,Index,Min,Max,Incr,zDiv,zMul,OK) :' )
147     PyEndLoop.append( ' print \'EndLoop\',DoLoop,Index,Min,Max,Incr,zDiv,zMul,OK' )
148     PyEndLoop.append( ' if OK != \'Okay\' :' )
149     PyEndLoop.append( '     DoLoop = 0' )
150     PyEndLoop.append( ' return DoLoop,Index,Min,Max,Incr ,zDiv,zMul,OK' )
151     PyEndLoop.append( '' )
152     EndLoop.SetPyFunction( 'EndLoop' , PyEndLoop )
153     ILoopDoLoop = Loop.GetInPort( 'DoLoop' )
154     ILoopIndex = Loop.InPort( 'Index' , 'long' )
155     ILoopMin = Loop.InPort( 'Min' , 'long' )
156     ILoopMax = Loop.InPort( 'Max' , 'long' )
157     ILoopIncr = Loop.InPort( 'Incr' , 'long' )
158     ILoopzDiv = Loop.InPort( 'zDiv' , 'double' )
159     ILoopzMul = Loop.InPort( 'zMul' , 'double' )
160     ILoopOK = Loop.InPort( 'OK' , 'string' )
161     ILoopGate = Loop.GetInPort( 'Gate' )
162     OLoopDoLoop = Loop.GetOutPort( 'DoLoop' )
163     OLoopIndex = Loop.GetOutPort( 'Index' )
164     OLoopMin = Loop.GetOutPort( 'Min' )
165     OLoopMax = Loop.GetOutPort( 'Max' )
166     OLoopIncr = Loop.GetOutPort( 'Incr' )
167     OLoopzDiv = Loop.GetOutPort( 'zDiv' )
168     OLoopzMul = Loop.GetOutPort( 'zMul' )
169     OLoopOK = Loop.GetOutPort( 'OK' )
170     OLoopGate = Loop.GetOutPort( 'Gate' )
171     IEndLoopDoLoop = EndLoop.GetInPort( 'DoLoop' )
172     IEndLoopIndex = EndLoop.GetInPort( 'Index' )
173     IEndLoopMin = EndLoop.GetInPort( 'Min' )
174     IEndLoopMax = EndLoop.GetInPort( 'Max' )
175     IEndLoopIncr = EndLoop.GetInPort( 'Incr' )
176     IEndLoopzDiv = EndLoop.GetInPort( 'zDiv' )
177     IEndLoopzMul = EndLoop.GetInPort( 'zMul' )
178     IEndLoopOK = EndLoop.GetInPort( 'OK' )
179     IEndLoopGate = EndLoop.GetInPort( 'Gate' )
180     OEndLoopDoLoop = EndLoop.GetOutPort( 'DoLoop' )
181     OEndLoopIndex = EndLoop.GetOutPort( 'Index' )
182     OEndLoopMin = EndLoop.GetOutPort( 'Min' )
183     OEndLoopMax = EndLoop.GetOutPort( 'Max' )
184     OEndLoopIncr = EndLoop.GetOutPort( 'Incr' )
185     OEndLoopzDiv = EndLoop.GetOutPort( 'zDiv' )
186     OEndLoopzMul = EndLoop.GetOutPort( 'zMul' )
187     OEndLoopOK = EndLoop.GetOutPort( 'OK' )
188     OEndLoopGate = EndLoop.GetOutPort( 'Gate' )
189     Loop.SetName( 'Loop' )
190     Loop.SetAuthor( '' )
191     Loop.SetComment( 'Compute Node' )
192     Loop.Coords( 5 , 265 )
193     
194     # Creation of Macro Nodes
195     GraphSub_1 = DefGraphSub_1()
196     Macro_GraphSub = GraphLoopMacroNodesOutput.GraphMNode( GraphSub_1 )
197     Macro_GraphSub.SetCoupled( 'GraphSub_1' )
198     Macro_GraphSub.SetName( 'Macro_GraphSub' )
199     Macro_GraphSub.SetAuthor( '' )
200     Macro_GraphSub.SetComment( 'Macro Node' )
201     Macro_GraphSub.Coords( 512 , 319 )
202     IMacro_GraphSubSub__x = Macro_GraphSub.GetInPort( 'Sub__x' )
203     IMacro_GraphSubSub__y = Macro_GraphSub.GetInPort( 'Sub__y' )
204     IMacro_GraphSubGate = Macro_GraphSub.GetInPort( 'Gate' )
205     OMacro_GraphSubSub__z = Macro_GraphSub.GetOutPort( 'Sub__z' )
206     OMacro_GraphSubGate = Macro_GraphSub.GetOutPort( 'Gate' )
207     
208     GraphAddLoop = DefGraphAddLoop()
209     Macro_GraphAddLoop = GraphLoopMacroNodesOutput.GraphMNode( GraphAddLoop )
210     Macro_GraphAddLoop.SetCoupled( 'GraphAddLoop' )
211     Macro_GraphAddLoop.SetName( 'Macro_GraphAddLoop' )
212     Macro_GraphAddLoop.SetAuthor( '' )
213     Macro_GraphAddLoop.SetComment( 'Macro Node' )
214     Macro_GraphAddLoop.Coords( 628 , 14 )
215     IMacro_GraphAddLoopInit_1__Index = Macro_GraphAddLoop.GetInPort( 'Init_1__Index' )
216     IMacro_GraphAddLoopInit_1__Min = Macro_GraphAddLoop.GetInPort( 'Init_1__Min' )
217     IMacro_GraphAddLoopInit_1__Max = Macro_GraphAddLoop.GetInPort( 'Init_1__Max' )
218     IMacro_GraphAddLoopInit_1__Incr = Macro_GraphAddLoop.GetInPort( 'Init_1__Incr' )
219     IMacro_GraphAddLoopInit_1__zDiv = Macro_GraphAddLoop.GetInPort( 'Init_1__zDiv' )
220     IMacro_GraphAddLoopInit_1__zMul = Macro_GraphAddLoop.GetInPort( 'Init_1__zMul' )
221     IMacro_GraphAddLoopInit_1__OK = Macro_GraphAddLoop.GetInPort( 'Init_1__OK' )
222     IMacro_GraphAddLoopInit_1__x = Macro_GraphAddLoop.GetInPort( 'Init_1__x' )
223     IMacro_GraphAddLoopInit_1__y = Macro_GraphAddLoop.GetInPort( 'Init_1__y' )
224     IMacro_GraphAddLoopGate = Macro_GraphAddLoop.GetInPort( 'Gate' )
225     OMacro_GraphAddLoopAdd__FuncValue = Macro_GraphAddLoop.GetOutPort( 'Add__FuncValue' )
226     OMacro_GraphAddLoopAdd__z = Macro_GraphAddLoop.GetOutPort( 'Add__z' )
227     OMacro_GraphAddLoopEndInit_1__Index = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__Index' )
228     OMacro_GraphAddLoopEndInit_1__Min = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__Min' )
229     OMacro_GraphAddLoopEndInit_1__Max = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__Max' )
230     OMacro_GraphAddLoopEndInit_1__Incr = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__Incr' )
231     OMacro_GraphAddLoopEndInit_1__zDiv = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__zDiv' )
232     OMacro_GraphAddLoopEndInit_1__zMul = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__zMul' )
233     OMacro_GraphAddLoopEndInit_1__OK = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__OK' )
234     OMacro_GraphAddLoopEndInit_1__x = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__x' )
235     OMacro_GraphAddLoopEndInit_1__y = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__y' )
236     OMacro_GraphAddLoopGate = Macro_GraphAddLoop.GetOutPort( 'Gate' )
237     
238     # Creation of Links
239     LAddFuncValueMacro_GraphSubSub__x = GraphLoopMacroNodesOutput.Link( OAddFuncValue , IMacro_GraphSubSub__x )
240     
241     LAddFuncValueMacro_GraphAddLoopInit_1__y = GraphLoopMacroNodesOutput.Link( OAddFuncValue , IMacro_GraphAddLoopInit_1__y )
242     
243     LAddzSuby = GraphLoopMacroNodesOutput.Link( OAddz , ISuby )
244     
245     LAddzMacro_GraphSubSub__y = GraphLoopMacroNodesOutput.Link( OAddz , IMacro_GraphSubSub__y )
246     
247     LSubzMulx = GraphLoopMacroNodesOutput.Link( OSubz , IMulx )
248     LSubzMulx.AddCoord( 1 , 767 , 389 )
249     LSubzMulx.AddCoord( 2 , 767 , 297 )
250     LSubzMulx.AddCoord( 3 , 592 , 297 )
251     LSubzMulx.AddCoord( 4 , 592 , 217 )
252     
253     LSubzMacro_GraphAddLoopInit_1__x = GraphLoopMacroNodesOutput.Link( OSubz , IMacro_GraphAddLoopInit_1__x )
254     
255     LSubzMacro_GraphAddLoopInit_1__zDiv = GraphLoopMacroNodesOutput.Link( OSubz , IMacro_GraphAddLoopInit_1__zDiv )
256     
257     LSubzMacro_GraphAddLoopInit_1__zMul = GraphLoopMacroNodesOutput.Link( OSubz , IMacro_GraphAddLoopInit_1__zMul )
258     
259     LSubzMacro_GraphAddLoopInit_1__OK = GraphLoopMacroNodesOutput.Link( OSubz , IMacro_GraphAddLoopInit_1__OK )
260     
261     LMulzResultsControlzMul = GraphLoopMacroNodesOutput.Link( OMulz , IResultsControlzMul )
262     
263     LDivzResultsControlzDiv = GraphLoopMacroNodesOutput.Link( ODivz , IResultsControlzDiv )
264     
265     LMacro_GraphSubSub__zMuly = GraphLoopMacroNodesOutput.Link( OMacro_GraphSubSub__z , IMuly )
266     
267     LMacro_GraphSubGateMulGate = GraphLoopMacroNodesOutput.Link( OMacro_GraphSubGate , IMulGate )
268     
269     LLoopIndexEndLoopIndex = GraphLoopMacroNodesOutput.Link( OLoopIndex , IEndLoopIndex )
270     
271     LLoopIndexAddx = GraphLoopMacroNodesOutput.Link( OLoopIndex , IAddx )
272     
273     LLoopIndexResultsControlx = GraphLoopMacroNodesOutput.Link( OLoopIndex , IResultsControlx )
274     
275     LLoopMinEndLoopMin = GraphLoopMacroNodesOutput.Link( OLoopMin , IEndLoopMin )
276     
277     LLoopMaxEndLoopMax = GraphLoopMacroNodesOutput.Link( OLoopMax , IEndLoopMax )
278     
279     LLoopMaxAddy = GraphLoopMacroNodesOutput.Link( OLoopMax , IAddy )
280     
281     LLoopMaxResultsControly = GraphLoopMacroNodesOutput.Link( OLoopMax , IResultsControly )
282     
283     LLoopIncrEndLoopIncr = GraphLoopMacroNodesOutput.Link( OLoopIncr , IEndLoopIncr )
284     
285     LResultsControlzDivEndLoopzDiv = GraphLoopMacroNodesOutput.Link( OResultsControlzDiv , IEndLoopzDiv )
286     
287     LResultsControlzMulEndLoopzMul = GraphLoopMacroNodesOutput.Link( OResultsControlzMul , IEndLoopzMul )
288     
289     LResultsControlOKEndLoopOK = GraphLoopMacroNodesOutput.Link( OResultsControlOK , IEndLoopOK )
290     
291     LMacro_GraphAddLoopAdd__FuncValueDivx = GraphLoopMacroNodesOutput.Link( OMacro_GraphAddLoopAdd__FuncValue , IDivx )
292     
293     LMacro_GraphAddLoopAdd__zDivy = GraphLoopMacroNodesOutput.Link( OMacro_GraphAddLoopAdd__z , IDivy )
294     
295     # Input datas
296     ISubx.Input( 1.5 )
297     ILoopIndex.Input( 0 )
298     ILoopMin.Input( 7 )
299     ILoopMax.Input( 17 )
300     ILoopIncr.Input( 1 )
301     ILoopzDiv.Input( 0 )
302     ILoopzMul.Input( 0 )
303     ILoopOK.Input( 'Okay' )
304     IMacro_GraphAddLoopInit_1__Index.Input( 0 )
305     IMacro_GraphAddLoopInit_1__Min.Input( 5 )
306     IMacro_GraphAddLoopInit_1__Max.Input( 11 )
307     IMacro_GraphAddLoopInit_1__Incr.Input( 1 )
308     
309     # Output Ports of the graph
310     #OEndLoopIndex = EndLoop.GetOutPort( 'Index' )
311     #OEndLoopMin = EndLoop.GetOutPort( 'Min' )
312     #OEndLoopMax = EndLoop.GetOutPort( 'Max' )
313     #OEndLoopIncr = EndLoop.GetOutPort( 'Incr' )
314     #OEndLoopzDiv = EndLoop.GetOutPort( 'zDiv' )
315     #OEndLoopzMul = EndLoop.GetOutPort( 'zMul' )
316     #OEndLoopOK = EndLoop.GetOutPort( 'OK' )
317     #OResultsControlDiv_z = ResultsControl.GetOutPort( 'Div_z' )
318     #OResultsControlMul_z = ResultsControl.GetOutPort( 'Mul_z' )
319     #OMacro_GraphAddLoopEndInit_1__Index = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__Index' )
320     #OMacro_GraphAddLoopEndInit_1__Min = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__Min' )
321     #OMacro_GraphAddLoopEndInit_1__Max = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__Max' )
322     #OMacro_GraphAddLoopEndInit_1__Incr = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__Incr' )
323     #OMacro_GraphAddLoopEndInit_1__zDiv = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__zDiv' )
324     #OMacro_GraphAddLoopEndInit_1__zMul = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__zMul' )
325     #OMacro_GraphAddLoopEndInit_1__OK = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__OK' )
326     #OMacro_GraphAddLoopEndInit_1__x = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__x' )
327     #OMacro_GraphAddLoopEndInit_1__y = Macro_GraphAddLoop.GetOutPort( 'EndInit_1__y' )
328     return GraphLoopMacroNodesOutput
329
330 # Graph creation of GraphSub_1
331 def DefGraphSub_1() :
332     GraphSub_1 = Graph( 'GraphSub_1' )
333     GraphSub_1.SetCoupled( 'Macro_GraphSub' )
334     GraphSub_1.SetName( 'GraphSub_1' )
335     GraphSub_1.SetAuthor( '' )
336     GraphSub_1.SetComment( '' )
337     GraphSub_1.Coords( 0 , 0 )
338     
339     # Creation of Factory Nodes
340     
341     Sub = GraphSub_1.FNode( 'SubComponent' , 'SubComponent' , 'Sub' )
342     Sub.SetName( 'Sub' )
343     Sub.SetAuthor( '' )
344     Sub.SetContainer( 'localhost/FactoryServer' )
345     Sub.SetComment( 'Sub from SubComponent' )
346     Sub.Coords( 55 , 71 )
347     ISubx = Sub.GetInPort( 'x' )
348     ISuby = Sub.GetInPort( 'y' )
349     ISubGate = Sub.GetInPort( 'Gate' )
350     OSubz = Sub.GetOutPort( 'z' )
351     OSubGate = Sub.GetOutPort( 'Gate' )
352     
353     # Input Ports of the graph
354     #ISubx = Sub.GetInPort( 'x' )
355     #ISuby = Sub.GetInPort( 'y' )
356     
357     # Output Ports of the graph
358     #OSubz = Sub.GetOutPort( 'z' )
359     return GraphSub_1
360
361 # Graph creation of GraphAddLoop
362 def DefGraphAddLoop() :
363     GraphAddLoop = Graph( 'GraphAddLoop' )
364     GraphAddLoop.SetCoupled( 'Macro_GraphAddLoop' )
365     GraphAddLoop.SetName( 'GraphAddLoop' )
366     GraphAddLoop.SetAuthor( '' )
367     GraphAddLoop.SetComment( '' )
368     GraphAddLoop.Coords( 0 , 0 )
369     
370     # Creation of Factory Nodes
371     
372     Add = GraphAddLoop.FNode( 'AddComponent' , 'AddComponent' , 'Add' )
373     Add.SetName( 'Add' )
374     Add.SetAuthor( '' )
375     Add.SetContainer( 'localhost/FactoryServer' )
376     Add.SetComment( 'Add from AddComponent' )
377     Add.Coords( 248 , 247 )
378     IAddx = Add.GetInPort( 'x' )
379     IAddy = Add.GetInPort( 'y' )
380     IAddGate = Add.GetInPort( 'Gate' )
381     OAddFuncValue = Add.GetOutPort( 'FuncValue' )
382     OAddz = Add.GetOutPort( 'z' )
383     OAddGate = Add.GetOutPort( 'Gate' )
384     
385     # Creation of Loop Nodes
386     PyInit_1 = []
387     PyInit_1.append( 'def Init_1(Index,Min,Max,Incr,zDiv,zMul,OK,x,y) :' )
388     PyInit_1.append( '        if Min <= Max :' )
389     PyInit_1.append( '            Index = Min' )
390     PyInit_1.append( '        else :' )
391     PyInit_1.append( '            Index = Max' )
392     PyInit_1.append( '        return Index,Min,Max,Incr,zDiv,zMul,OK,x,y' )
393     PyInit_1.append( '' )
394     PyMoreInit_1 = []
395     PyMoreInit_1.append( 'def More_1(Index,Min,Max,Incr,zDiv,zMul,OK,x,y) :' )
396     PyMoreInit_1.append( '        if Index < Max :' )
397     PyMoreInit_1.append( '            DoLoop = 1' )
398     PyMoreInit_1.append( '        else :' )
399     PyMoreInit_1.append( '            DoLoop = 0' )
400     PyMoreInit_1.append( '        return DoLoop,Index,Min,Max,Incr,zDiv,zMul,OK,x,y' )
401     PyMoreInit_1.append( '' )
402     PyNextInit_1 = []
403     PyNextInit_1.append( 'def Next_1(Index,Min,Max,Incr,zDiv,zMul,OK,x,y) :' )
404     PyNextInit_1.append( '        Index = Index + Incr' )
405     PyNextInit_1.append( '        return Index,Min,Max,Incr,zDiv,zMul,OK,x,y' )
406     PyNextInit_1.append( '' )
407     Init_1,EndInit_1 = GraphAddLoop.LNode( 'Init_1' , PyInit_1 , 'More_1' , PyMoreInit_1 , 'Next_1' , PyNextInit_1 )
408     EndInit_1.SetName( 'EndInit_1' )
409     EndInit_1.SetAuthor( '' )
410     EndInit_1.SetComment( 'Compute Node' )
411     EndInit_1.Coords( 460 , 146 )
412     PyEndInit_1 = []
413     EndInit_1.SetPyFunction( 'EndInit_1' , PyEndInit_1 )
414     IInit_1DoLoop = Init_1.GetInPort( 'DoLoop' )
415     IInit_1Index = Init_1.InPort( 'Index' , 'long' )
416     IInit_1Min = Init_1.InPort( 'Min' , 'long' )
417     IInit_1Max = Init_1.InPort( 'Max' , 'long' )
418     IInit_1Incr = Init_1.InPort( 'Incr' , 'long' )
419     IInit_1zDiv = Init_1.InPort( 'zDiv' , 'double' )
420     IInit_1zMul = Init_1.InPort( 'zMul' , 'double' )
421     IInit_1OK = Init_1.InPort( 'OK' , 'string' )
422     IInit_1x = Init_1.InPort( 'x' , 'double' )
423     IInit_1y = Init_1.InPort( 'y' , 'double' )
424     IInit_1Gate = Init_1.GetInPort( 'Gate' )
425     OInit_1DoLoop = Init_1.GetOutPort( 'DoLoop' )
426     OInit_1Index = Init_1.GetOutPort( 'Index' )
427     OInit_1Min = Init_1.GetOutPort( 'Min' )
428     OInit_1Max = Init_1.GetOutPort( 'Max' )
429     OInit_1Incr = Init_1.GetOutPort( 'Incr' )
430     OInit_1zDiv = Init_1.GetOutPort( 'zDiv' )
431     OInit_1zMul = Init_1.GetOutPort( 'zMul' )
432     OInit_1OK = Init_1.GetOutPort( 'OK' )
433     OInit_1x = Init_1.GetOutPort( 'x' )
434     OInit_1y = Init_1.GetOutPort( 'y' )
435     OInit_1Gate = Init_1.GetOutPort( 'Gate' )
436     IEndInit_1DoLoop = EndInit_1.GetInPort( 'DoLoop' )
437     IEndInit_1Index = EndInit_1.GetInPort( 'Index' )
438     IEndInit_1Min = EndInit_1.GetInPort( 'Min' )
439     IEndInit_1Max = EndInit_1.GetInPort( 'Max' )
440     IEndInit_1Incr = EndInit_1.GetInPort( 'Incr' )
441     IEndInit_1zDiv = EndInit_1.GetInPort( 'zDiv' )
442     IEndInit_1zMul = EndInit_1.GetInPort( 'zMul' )
443     IEndInit_1OK = EndInit_1.GetInPort( 'OK' )
444     IEndInit_1x = EndInit_1.GetInPort( 'x' )
445     IEndInit_1y = EndInit_1.GetInPort( 'y' )
446     IEndInit_1Gate = EndInit_1.GetInPort( 'Gate' )
447     OEndInit_1DoLoop = EndInit_1.GetOutPort( 'DoLoop' )
448     OEndInit_1Index = EndInit_1.GetOutPort( 'Index' )
449     OEndInit_1Min = EndInit_1.GetOutPort( 'Min' )
450     OEndInit_1Max = EndInit_1.GetOutPort( 'Max' )
451     OEndInit_1Incr = EndInit_1.GetOutPort( 'Incr' )
452     OEndInit_1zDiv = EndInit_1.GetOutPort( 'zDiv' )
453     OEndInit_1zMul = EndInit_1.GetOutPort( 'zMul' )
454     OEndInit_1OK = EndInit_1.GetOutPort( 'OK' )
455     OEndInit_1x = EndInit_1.GetOutPort( 'x' )
456     OEndInit_1y = EndInit_1.GetOutPort( 'y' )
457     OEndInit_1Gate = EndInit_1.GetOutPort( 'Gate' )
458     Init_1.SetName( 'Init_1' )
459     Init_1.SetAuthor( '' )
460     Init_1.SetComment( 'Compute Node' )
461     Init_1.Coords( 37 , 147 )
462     
463     # Creation of Links
464     LAddGateEndInit_1Gate = GraphAddLoop.Link( OAddGate , IEndInit_1Gate )
465     
466     LInit_1IndexEndInit_1Index = GraphAddLoop.Link( OInit_1Index , IEndInit_1Index )
467     
468     LInit_1MinEndInit_1Min = GraphAddLoop.Link( OInit_1Min , IEndInit_1Min )
469     
470     LInit_1MaxEndInit_1Max = GraphAddLoop.Link( OInit_1Max , IEndInit_1Max )
471     
472     LInit_1IncrEndInit_1Incr = GraphAddLoop.Link( OInit_1Incr , IEndInit_1Incr )
473     
474     LInit_1zDivEndInit_1zDiv = GraphAddLoop.Link( OInit_1zDiv , IEndInit_1zDiv )
475     
476     LInit_1zMulEndInit_1zMul = GraphAddLoop.Link( OInit_1zMul , IEndInit_1zMul )
477     
478     LInit_1OKEndInit_1OK = GraphAddLoop.Link( OInit_1OK , IEndInit_1OK )
479     
480     LInit_1xEndInit_1x = GraphAddLoop.Link( OInit_1x , IEndInit_1x )
481     
482     LInit_1xAddx = GraphAddLoop.Link( OInit_1x , IAddx )
483     
484     LInit_1yEndInit_1y = GraphAddLoop.Link( OInit_1y , IEndInit_1y )
485     
486     LInit_1yAddy = GraphAddLoop.Link( OInit_1y , IAddy )
487     
488     # Input Ports of the graph
489     #IInit_1Index = Init_1.GetInPort( 'Index' )
490     #IInit_1Min = Init_1.GetInPort( 'Min' )
491     #IInit_1Max = Init_1.GetInPort( 'Max' )
492     #IInit_1Incr = Init_1.GetInPort( 'Incr' )
493     #IInit_1zDiv = Init_1.GetInPort( 'zDiv' )
494     #IInit_1zMul = Init_1.GetInPort( 'zMul' )
495     #IInit_1OK = Init_1.GetInPort( 'OK' )
496     #IInit_1x = Init_1.GetInPort( 'x' )
497     #IInit_1y = Init_1.GetInPort( 'y' )
498     
499     # Output Ports of the graph
500     #OAddFuncValue = Add.GetOutPort( 'FuncValue' )
501     #OAddz = Add.GetOutPort( 'z' )
502     #OEndInit_1Index = EndInit_1.GetOutPort( 'Index' )
503     #OEndInit_1Min = EndInit_1.GetOutPort( 'Min' )
504     #OEndInit_1Max = EndInit_1.GetOutPort( 'Max' )
505     #OEndInit_1Incr = EndInit_1.GetOutPort( 'Incr' )
506     #OEndInit_1zDiv = EndInit_1.GetOutPort( 'zDiv' )
507     #OEndInit_1zMul = EndInit_1.GetOutPort( 'zMul' )
508     #OEndInit_1OK = EndInit_1.GetOutPort( 'OK' )
509     #OEndInit_1x = EndInit_1.GetOutPort( 'x' )
510     #OEndInit_1y = EndInit_1.GetOutPort( 'y' )
511     return GraphAddLoop
512
513
514 GraphLoopMacroNodesOutput = DefGraphLoopMacroNodesOutput()