1 # Copyright (C) 2007-2011 CEA/DEN, EDF R&D, OPEN CASCADE
3 # Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
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.
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.
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
20 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
22 # Generated python file of Graph GraphMacroNodes
26 # Graph creation of GraphMacroNodes
27 def DefGraphMacroNodes() :
28 GraphMacroNodes = Graph( 'GraphMacroNodes' )
29 GraphMacroNodes.SetName( 'GraphMacroNodes' )
30 GraphMacroNodes.SetAuthor( '' )
31 GraphMacroNodes.SetComment( '' )
32 GraphMacroNodes.Coords( 0 , 0 )
34 # Creation of Factory Nodes
36 Add = GraphMacroNodes.FNode( 'AddComponent' , 'AddComponent' , 'Add' )
39 Add.SetContainer( 'FactoryServer' )
40 Add.SetComment( 'Add from AddComponent' )
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' )
49 Sub = GraphMacroNodes.FNode( 'SubComponent' , 'SubComponent' , 'Sub' )
52 Sub.SetContainer( 'FactoryServer' )
53 Sub.SetComment( 'Sub from SubComponent' )
54 Sub.Coords( 227 , 99 )
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' )
61 Mul = GraphMacroNodes.FNode( 'MulComponent' , 'MulComponent' , 'Mul' )
64 Mul.SetContainer( 'FactoryServer' )
65 Mul.SetComment( 'Mul from MulComponent' )
66 Mul.Coords( 443 , 278 )
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' )
73 Div = GraphMacroNodes.FNode( 'DivComponent' , 'DivComponent' , 'Div' )
76 Div.SetContainer( 'FactoryServer' )
77 Div.SetComment( 'Div from DivComponent' )
78 Div.Coords( 634 , 97 )
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' )
85 # Creation of Macro Nodes
86 SyrStruct_1 = DefSyrStruct_1()
87 Macro_SyrStruct = GraphMacroNodes.GraphMNode( SyrStruct_1 )
88 Macro_SyrStruct.SetCoupled( 'SyrStruct_1' )
89 Macro_SyrStruct.SetName( 'Macro_SyrStruct' )
90 Macro_SyrStruct.SetAuthor( '' )
91 Macro_SyrStruct.SetComment( 'Macro Node' )
92 Macro_SyrStruct.Coords( 13 , 6 )
93 IMacro_SyrStructSyrComponent__aContainer = Macro_SyrStruct.GetInPort( 'SyrComponent__aContainer' )
94 IMacro_SyrStructSyrComponent__aComponent = Macro_SyrStruct.GetInPort( 'SyrComponent__aComponent' )
95 IMacro_SyrStructforN__N = Macro_SyrStruct.GetInPort( 'forN__N' )
96 IMacro_SyrStructforN__K = Macro_SyrStruct.GetInPort( 'forN__K' )
97 IMacro_SyrStructforN__min = Macro_SyrStruct.GetInPort( 'forN__min' )
98 IMacro_SyrStructforN__max = Macro_SyrStruct.GetInPort( 'forN__max' )
99 IMacro_SyrStructfori__i = Macro_SyrStruct.GetInPort( 'fori__i' )
100 IMacro_SyrStructGate = Macro_SyrStruct.GetInPort( 'Gate' )
101 OMacro_SyrStructEndOfforN__N = Macro_SyrStruct.GetOutPort( 'EndOfforN__N' )
102 OMacro_SyrStructEndOfforN__K = Macro_SyrStruct.GetOutPort( 'EndOfforN__K' )
103 OMacro_SyrStructEndOfforN__SyrComponent = Macro_SyrStruct.GetOutPort( 'EndOfforN__SyrComponent' )
104 OMacro_SyrStructEndOfforN__min = Macro_SyrStruct.GetOutPort( 'EndOfforN__min' )
105 OMacro_SyrStructEndOfforN__max = Macro_SyrStruct.GetOutPort( 'EndOfforN__max' )
106 OMacro_SyrStructEndOfwhileNotOne__SyrComponent = Macro_SyrStruct.GetOutPort( 'EndOfwhileNotOne__SyrComponent' )
107 OMacro_SyrStructEndOfwhileNotOne__N = Macro_SyrStruct.GetOutPort( 'EndOfwhileNotOne__N' )
108 OMacro_SyrStructEndOffori__i = Macro_SyrStruct.GetOutPort( 'EndOffori__i' )
109 OMacro_SyrStructEndOfwhileEven__SyrComponent = Macro_SyrStruct.GetOutPort( 'EndOfwhileEven__SyrComponent' )
110 OMacro_SyrStructGate = Macro_SyrStruct.GetOutPort( 'Gate' )
112 SyrStruct_1_1 = DefSyrStruct_1_1()
113 Macro_SyrStruct_1 = GraphMacroNodes.GraphMNode( SyrStruct_1_1 )
114 Macro_SyrStruct_1.SetCoupled( 'SyrStruct_1_1' )
115 Macro_SyrStruct_1.SetName( 'Macro_SyrStruct_1' )
116 Macro_SyrStruct_1.SetAuthor( '' )
117 Macro_SyrStruct_1.SetComment( 'Macro Node' )
118 Macro_SyrStruct_1.Coords( 8 , 441 )
119 IMacro_SyrStruct_1SyrComponent__aContainer = Macro_SyrStruct_1.GetInPort( 'SyrComponent__aContainer' )
120 IMacro_SyrStruct_1SyrComponent__aComponent = Macro_SyrStruct_1.GetInPort( 'SyrComponent__aComponent' )
121 IMacro_SyrStruct_1forN__N = Macro_SyrStruct_1.GetInPort( 'forN__N' )
122 IMacro_SyrStruct_1forN__K = Macro_SyrStruct_1.GetInPort( 'forN__K' )
123 IMacro_SyrStruct_1forN__min = Macro_SyrStruct_1.GetInPort( 'forN__min' )
124 IMacro_SyrStruct_1forN__max = Macro_SyrStruct_1.GetInPort( 'forN__max' )
125 IMacro_SyrStruct_1fori__i = Macro_SyrStruct_1.GetInPort( 'fori__i' )
126 IMacro_SyrStruct_1Gate = Macro_SyrStruct_1.GetInPort( 'Gate' )
127 OMacro_SyrStruct_1EndOfforN__N = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__N' )
128 OMacro_SyrStruct_1EndOfforN__K = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__K' )
129 OMacro_SyrStruct_1EndOfforN__SyrComponent = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__SyrComponent' )
130 OMacro_SyrStruct_1EndOfforN__min = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__min' )
131 OMacro_SyrStruct_1EndOfforN__max = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__max' )
132 OMacro_SyrStruct_1EndOfwhileNotOne__SyrComponent = Macro_SyrStruct_1.GetOutPort( 'EndOfwhileNotOne__SyrComponent' )
133 OMacro_SyrStruct_1EndOfwhileNotOne__N = Macro_SyrStruct_1.GetOutPort( 'EndOfwhileNotOne__N' )
134 OMacro_SyrStruct_1EndOffori__i = Macro_SyrStruct_1.GetOutPort( 'EndOffori__i' )
135 OMacro_SyrStruct_1EndOfwhileEven__SyrComponent = Macro_SyrStruct_1.GetOutPort( 'EndOfwhileEven__SyrComponent' )
136 OMacro_SyrStruct_1Gate = Macro_SyrStruct_1.GetOutPort( 'Gate' )
139 LAddzSuby = GraphMacroNodes.Link( OAddz , ISuby )
141 LAddzMuly = GraphMacroNodes.Link( OAddz , IMuly )
143 LSubzMulx = GraphMacroNodes.Link( OSubz , IMulx )
145 LSubzDivx = GraphMacroNodes.Link( OSubz , IDivx )
147 LMulzDivy = GraphMacroNodes.Link( OMulz , IDivy )
153 IMacro_SyrStructSyrComponent__aContainer.Input( 'FactoryServer' )
154 IMacro_SyrStructSyrComponent__aComponent.Input( 'SyrComponent' )
155 IMacro_SyrStructforN__N.Input( 0 )
156 IMacro_SyrStructforN__K.Input( 0 )
157 IMacro_SyrStructforN__min.Input( 5 )
158 IMacro_SyrStructforN__max.Input( 9 )
159 IMacro_SyrStructfori__i.Input( 0 )
160 IMacro_SyrStruct_1SyrComponent__aContainer.Input( 'FactoryServer' )
161 IMacro_SyrStruct_1SyrComponent__aComponent.Input( 'SyrComponent' )
162 IMacro_SyrStruct_1forN__N.Input( 0 )
163 IMacro_SyrStruct_1forN__K.Input( 0 )
164 IMacro_SyrStruct_1forN__min.Input( 5 )
165 IMacro_SyrStruct_1forN__max.Input( 9 )
166 IMacro_SyrStruct_1fori__i.Input( 0 )
168 # Output Ports of the graph
169 #OAddFuncValue = Add.GetOutPort( 'FuncValue' )
170 #ODivz = Div.GetOutPort( 'z' )
171 #OMacro_SyrStructEndOfforN__N = Macro_SyrStruct.GetOutPort( 'EndOfforN__N' )
172 #OMacro_SyrStructEndOfforN__K = Macro_SyrStruct.GetOutPort( 'EndOfforN__K' )
173 #OMacro_SyrStructEndOfforN__SyrComponent = Macro_SyrStruct.GetOutPort( 'EndOfforN__SyrComponent' )
174 #OMacro_SyrStructEndOfforN__min = Macro_SyrStruct.GetOutPort( 'EndOfforN__min' )
175 #OMacro_SyrStructEndOfforN__max = Macro_SyrStruct.GetOutPort( 'EndOfforN__max' )
176 #OMacro_SyrStructEndOfwhileNotOne__SyrComponent = Macro_SyrStruct.GetOutPort( 'EndOfwhileNotOne__SyrComponent' )
177 #OMacro_SyrStructEndOfwhileNotOne__N = Macro_SyrStruct.GetOutPort( 'EndOfwhileNotOne__N' )
178 #OMacro_SyrStructEndOffori__i = Macro_SyrStruct.GetOutPort( 'EndOffori__i' )
179 #OMacro_SyrStructEndOfwhileEven__SyrComponent = Macro_SyrStruct.GetOutPort( 'EndOfwhileEven__SyrComponent' )
180 #OMacro_SyrStruct_1EndOfforN__N = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__N' )
181 #OMacro_SyrStruct_1EndOfforN__K = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__K' )
182 #OMacro_SyrStruct_1EndOfforN__SyrComponent = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__SyrComponent' )
183 #OMacro_SyrStruct_1EndOfforN__min = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__min' )
184 #OMacro_SyrStruct_1EndOfforN__max = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__max' )
185 #OMacro_SyrStruct_1EndOfwhileNotOne__SyrComponent = Macro_SyrStruct_1.GetOutPort( 'EndOfwhileNotOne__SyrComponent' )
186 #OMacro_SyrStruct_1EndOfwhileNotOne__N = Macro_SyrStruct_1.GetOutPort( 'EndOfwhileNotOne__N' )
187 #OMacro_SyrStruct_1EndOffori__i = Macro_SyrStruct_1.GetOutPort( 'EndOffori__i' )
188 #OMacro_SyrStruct_1EndOfwhileEven__SyrComponent = Macro_SyrStruct_1.GetOutPort( 'EndOfwhileEven__SyrComponent' )
189 return GraphMacroNodes
191 # Graph creation of SyrStruct_1
192 def DefSyrStruct_1() :
193 SyrStruct_1 = Graph( 'SyrStruct_1' )
194 SyrStruct_1.SetCoupled( 'Macro_SyrStruct' )
195 SyrStruct_1.SetName( 'SyrStruct_1' )
196 SyrStruct_1.SetAuthor( 'JR' )
197 SyrStruct_1.SetComment( 'Syracuse algorithm' )
198 SyrStruct_1.Coords( 0 , 0 )
200 # Creation of Factory Nodes
202 m3 = SyrStruct_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_M3' )
205 m3.SetContainer( 'localhost/FactoryServer' )
206 m3.SetComment( 'C_M3 from SyrComponent' )
207 m3.Coords( 672 , 28 )
208 Im3anOddInteger = m3.GetInPort( 'anOddInteger' )
209 Im3Gate = m3.GetInPort( 'Gate' )
210 Om3anInteger = m3.GetOutPort( 'anInteger' )
211 Om3Gate = m3.GetOutPort( 'Gate' )
213 m3incr = SyrStruct_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_INCR' )
214 m3incr.SetName( 'm3incr' )
215 m3incr.SetAuthor( '' )
216 m3incr.SetContainer( 'localhost/FactoryServer' )
217 m3incr.SetComment( 'C_INCR from SyrComponent' )
218 m3incr.Coords( 898 , 29 )
219 Im3incraCount = m3incr.GetInPort( 'aCount' )
220 Im3incrGate = m3incr.GetInPort( 'Gate' )
221 Om3incraNewCount = m3incr.GetOutPort( 'aNewCount' )
222 Om3incrGate = m3incr.GetOutPort( 'Gate' )
224 incra = SyrStruct_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_INCR' )
225 incra.SetName( 'incra' )
226 incra.SetAuthor( '' )
227 incra.SetContainer( 'localhost/FactoryServer' )
228 incra.SetComment( 'C_INCR from SyrComponent' )
229 incra.Coords( 803 , 195 )
230 IincraaCount = incra.GetInPort( 'aCount' )
231 IincraGate = incra.GetInPort( 'Gate' )
232 OincraaNewCount = incra.GetOutPort( 'aNewCount' )
233 OincraGate = incra.GetOutPort( 'Gate' )
235 div2 = SyrStruct_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_DIV2' )
236 div2.SetName( 'div2' )
238 div2.SetContainer( 'localhost/FactoryServer' )
239 div2.SetComment( 'C_DIV2 from SyrComponent' )
240 div2.Coords( 810 , 435 )
241 Idiv2anEvenInteger = div2.GetInPort( 'anEvenInteger' )
242 Idiv2Gate = div2.GetInPort( 'Gate' )
243 Odiv2anInteger = div2.GetOutPort( 'anInteger' )
244 Odiv2Gate = div2.GetOutPort( 'Gate' )
246 incrb = SyrStruct_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_INCR' )
247 incrb.SetName( 'incrb' )
248 incrb.SetAuthor( '' )
249 incrb.SetContainer( 'localhost/FactoryServer' )
250 incrb.SetComment( 'C_INCR from SyrComponent' )
251 incrb.Coords( 809 , 574 )
252 IincrbaCount = incrb.GetInPort( 'aCount' )
253 IincrbGate = incrb.GetInPort( 'Gate' )
254 OincrbaNewCount = incrb.GetOutPort( 'aNewCount' )
255 OincrbGate = incrb.GetOutPort( 'Gate' )
257 # Creation of InLine Nodes
259 PySyrComponent.append( 'from LifeCycleCORBA import * ' )
260 PySyrComponent.append( 'def SyrComponent( aContainer , aComponent ) : ' )
261 PySyrComponent.append( ' orb = CORBA.ORB_init([], CORBA.ORB_ID) ' )
262 PySyrComponent.append( ' lcc = LifeCycleCORBA(orb) ' )
263 PySyrComponent.append( ' ComponentRef = lcc.FindOrLoadComponent( aContainer , aComponent ) ' )
264 PySyrComponent.append( ' return ComponentRef ' )
265 SyrComponent = SyrStruct_1.INode( 'SyrComponent' , PySyrComponent )
266 SyrComponent.SetName( 'SyrComponent' )
267 SyrComponent.SetAuthor( '' )
268 SyrComponent.SetComment( 'SyrComponent( aContainer , aComponent )' )
269 SyrComponent.Coords( 0 , 0 )
270 ISyrComponentaContainer = SyrComponent.InPort( 'aContainer' , 'string' )
271 ISyrComponentaComponent = SyrComponent.InPort( 'aComponent' , 'string' )
272 ISyrComponentGate = SyrComponent.GetInPort( 'Gate' )
273 OSyrComponentSyrComponentobjref = SyrComponent.OutPort( 'SyrComponentobjref' , 'objref' )
274 OSyrComponentGate = SyrComponent.GetOutPort( 'Gate' )
276 # Creation of Loop Nodes
278 PyforN.append( 'def InitN( NN , K , SyrComponent , min , max ) : ' )
279 PyforN.append( ' N = max ' )
280 PyforN.append( ' if min > 0 : ' )
281 PyforN.append( ' if max >= min : ' )
282 PyforN.append( ' N = min ' )
283 PyforN.append( ' return N,K,SyrComponent,min,max ' )
285 PyMoreforN.append( 'def MoreN( NN , KK , SyrComponent , min , max ) : ' )
286 PyMoreforN.append( ' N = NN ' )
287 PyMoreforN.append( ' OutLoop = 0 ' )
288 PyMoreforN.append( ' if max > NN : ' )
289 PyMoreforN.append( ' OutLoop = 1 ' )
290 PyMoreforN.append( ' return OutLoop,N,0,SyrComponent,min,max ' )
292 PyNextforN.append( 'def NextN( NN , KK , SyrComponent , min , max ) : ' )
293 PyNextforN.append( ' N = NN + 1 ' )
294 PyNextforN.append( ' K = KK ' )
295 PyNextforN.append( ' return N,K,SyrComponent,min,max ' )
296 forN,EndOfforN = SyrStruct_1.LNode( 'InitN' , PyforN , 'MoreN' , PyMoreforN , 'NextN' , PyNextforN )
297 EndOfforN.SetName( 'EndOfforN' )
298 EndOfforN.SetAuthor( '' )
299 EndOfforN.SetComment( '' )
300 EndOfforN.Coords( 1535 , 332 )
302 EndOfforN.SetPyFunction( '' , PyEndOfforN )
303 IforNDoLoop = forN.GetInPort( 'DoLoop' )
304 IforNN = forN.InPort( 'N' , 'long' )
305 IforNK = forN.InPort( 'K' , 'long' )
306 IforNSyrComponent = forN.InPort( 'SyrComponent' , 'objref' )
307 IforNmin = forN.InPort( 'min' , 'long' )
308 IforNmax = forN.InPort( 'max' , 'long' )
309 IforNGate = forN.GetInPort( 'Gate' )
310 OforNDoLoop = forN.GetOutPort( 'DoLoop' )
311 OforNN = forN.GetOutPort( 'N' )
312 OforNK = forN.GetOutPort( 'K' )
313 OforNSyrComponent = forN.GetOutPort( 'SyrComponent' )
314 OforNmin = forN.GetOutPort( 'min' )
315 OforNmax = forN.GetOutPort( 'max' )
316 IEndOfforNDoLoop = EndOfforN.GetInPort( 'DoLoop' )
317 IEndOfforNN = EndOfforN.GetInPort( 'N' )
318 IEndOfforNK = EndOfforN.GetInPort( 'K' )
319 IEndOfforNSyrComponent = EndOfforN.GetInPort( 'SyrComponent' )
320 IEndOfforNmin = EndOfforN.GetInPort( 'min' )
321 IEndOfforNmax = EndOfforN.GetInPort( 'max' )
322 IEndOfforNGate = EndOfforN.GetInPort( 'Gate' )
323 OEndOfforNDoLoop = EndOfforN.GetOutPort( 'DoLoop' )
324 OEndOfforNN = EndOfforN.GetOutPort( 'N' )
325 OEndOfforNK = EndOfforN.GetOutPort( 'K' )
326 OEndOfforNSyrComponent = EndOfforN.GetOutPort( 'SyrComponent' )
327 OEndOfforNmin = EndOfforN.GetOutPort( 'min' )
328 OEndOfforNmax = EndOfforN.GetOutPort( 'max' )
329 OEndOfforNGate = EndOfforN.GetOutPort( 'Gate' )
330 forN.SetName( 'forN' )
332 forN.SetComment( 'InitN , MoreN , NextN' )
333 forN.Coords( 20 , 302 )
336 PywhileNotOne.append( 'import threading' )
337 PywhileNotOne.append( 'import SyrComponent_idl' )
338 PywhileNotOne.append( 'def InitNotOne( SyrComponent , N , K ) :' )
339 PywhileNotOne.append( ' return SyrComponent,N,K' )
340 PyMorewhileNotOne = []
341 PyMorewhileNotOne.append( 'import SyrComponent_idl' )
342 PyMorewhileNotOne.append( 'def MoreNotOne( SyrComponent , N , K ) :' )
343 PyMorewhileNotOne.append( ' OutLoop = 1 - SyrComponent.C_ISONE( N )' )
344 PyMorewhileNotOne.append( ' return OutLoop,SyrComponent,N,K ' )
345 PyNextwhileNotOne = []
346 PyNextwhileNotOne.append( 'import SyrComponent_idl' )
347 PyNextwhileNotOne.append( 'def NextNotOne( SyrComponent , N , K ) :' )
348 PyNextwhileNotOne.append( ' return SyrComponent,N,K' )
349 whileNotOne,EndOfwhileNotOne = SyrStruct_1.LNode( 'InitNotOne' , PywhileNotOne , 'MoreNotOne' , PyMorewhileNotOne , 'NextNotOne' , PyNextwhileNotOne )
350 EndOfwhileNotOne.SetName( 'EndOfwhileNotOne' )
351 EndOfwhileNotOne.SetAuthor( '' )
352 EndOfwhileNotOne.SetComment( '' )
353 EndOfwhileNotOne.Coords( 1366 , 303 )
354 PyEndOfwhileNotOne = []
355 EndOfwhileNotOne.SetPyFunction( '' , PyEndOfwhileNotOne )
356 IwhileNotOneDoLoop = whileNotOne.GetInPort( 'DoLoop' )
357 IwhileNotOneSyrComponent = whileNotOne.InPort( 'SyrComponent' , 'objref' )
358 IwhileNotOneN = whileNotOne.InPort( 'N' , 'long' )
359 IwhileNotOneK = whileNotOne.InPort( 'K' , 'long' )
360 IwhileNotOneGate = whileNotOne.GetInPort( 'Gate' )
361 OwhileNotOneDoLoop = whileNotOne.GetOutPort( 'DoLoop' )
362 OwhileNotOneSyrComponent = whileNotOne.GetOutPort( 'SyrComponent' )
363 OwhileNotOneN = whileNotOne.GetOutPort( 'N' )
364 OwhileNotOneK = whileNotOne.GetOutPort( 'K' )
365 IEndOfwhileNotOneDoLoop = EndOfwhileNotOne.GetInPort( 'DoLoop' )
366 IEndOfwhileNotOneSyrComponent = EndOfwhileNotOne.GetInPort( 'SyrComponent' )
367 IEndOfwhileNotOneN = EndOfwhileNotOne.GetInPort( 'N' )
368 IEndOfwhileNotOneK = EndOfwhileNotOne.GetInPort( 'K' )
369 IEndOfwhileNotOneGate = EndOfwhileNotOne.GetInPort( 'Gate' )
370 OEndOfwhileNotOneDoLoop = EndOfwhileNotOne.GetOutPort( 'DoLoop' )
371 OEndOfwhileNotOneSyrComponent = EndOfwhileNotOne.GetOutPort( 'SyrComponent' )
372 OEndOfwhileNotOneN = EndOfwhileNotOne.GetOutPort( 'N' )
373 OEndOfwhileNotOneK = EndOfwhileNotOne.GetOutPort( 'K' )
374 OEndOfwhileNotOneGate = EndOfwhileNotOne.GetOutPort( 'Gate' )
375 whileNotOne.SetName( 'whileNotOne' )
376 whileNotOne.SetAuthor( '' )
377 whileNotOne.SetComment( 'InitNotOne , MoreNotOne , NextNotOne' )
378 whileNotOne.Coords( 212 , 274 )
381 Pyfori.append( 'def Initfori( ii , K ) :' )
382 Pyfori.append( ' return 1,0,K' )
384 PyMorefori.append( 'def Morefori( ii , K ) :' )
385 PyMorefori.append( ' OutLoop = 0' )
386 PyMorefori.append( ' if 2 > ii :' )
387 PyMorefori.append( ' OutLoop = 1' )
388 PyMorefori.append( ' return OutLoop,ii,K' )
390 PyNextfori.append( 'def Nextfori( ii , K ) :' )
391 PyNextfori.append( ' ii = ii + 1' )
392 PyNextfori.append( ' return ii,K' )
393 fori,EndOffori = SyrStruct_1.LNode( 'Initfori' , Pyfori , 'Morefori' , PyMorefori , 'Nextfori' , PyNextfori )
394 EndOffori.SetName( 'EndOffori' )
395 EndOffori.SetAuthor( '' )
396 EndOffori.SetComment( '' )
397 EndOffori.Coords( 976 , 212 )
399 EndOffori.SetPyFunction( '' , PyEndOffori )
400 IforiDoLoop = fori.GetInPort( 'DoLoop' )
401 Iforii = fori.InPort( 'i' , 'long' )
402 IforiK = fori.InPort( 'K' , 'long' )
403 IforiGate = fori.GetInPort( 'Gate' )
404 OforiDoLoop = fori.GetOutPort( 'DoLoop' )
405 Oforii = fori.GetOutPort( 'i' )
406 OforiK = fori.GetOutPort( 'K' )
407 IEndOfforiDoLoop = EndOffori.GetInPort( 'DoLoop' )
408 IEndOfforii = EndOffori.GetInPort( 'i' )
409 IEndOfforiK = EndOffori.GetInPort( 'K' )
410 IEndOfforiGate = EndOffori.GetInPort( 'Gate' )
411 OEndOfforiDoLoop = EndOffori.GetOutPort( 'DoLoop' )
412 OEndOfforii = EndOffori.GetOutPort( 'i' )
413 OEndOfforiK = EndOffori.GetOutPort( 'K' )
414 OEndOfforiGate = EndOffori.GetOutPort( 'Gate' )
415 fori.SetName( 'fori' )
417 fori.SetComment( 'Initfori, Morefori, Nextfori' )
418 fori.Coords( 635 , 212 )
421 PywhileEven.append( 'import SyrComponent_idl' )
422 PywhileEven.append( 'def InitEven( SyrComponent , N , K ) :' )
423 PywhileEven.append( ' return SyrComponent,N,K' )
425 PyMorewhileEven.append( 'import SyrComponent_idl' )
426 PyMorewhileEven.append( 'def MoreEven( SyrComponent , N , K ) :' )
427 PyMorewhileEven.append( ' OutLoop = SyrComponent.C_ISEVEN( N )' )
428 PyMorewhileEven.append( ' return OutLoop,SyrComponent,N,K ' )
430 PyNextwhileEven.append( 'import SyrComponent_idl' )
431 PyNextwhileEven.append( 'def NextEven( SyrComponent , N , K ) :' )
432 PyNextwhileEven.append( ' return SyrComponent,N,K' )
433 whileEven,EndOfwhileEven = SyrStruct_1.LNode( 'InitEven' , PywhileEven , 'MoreEven' , PyMorewhileEven , 'NextEven' , PyNextwhileEven )
434 EndOfwhileEven.SetName( 'EndOfwhileEven' )
435 EndOfwhileEven.SetAuthor( '' )
436 EndOfwhileEven.SetComment( '' )
437 EndOfwhileEven.Coords( 988 , 451 )
438 PyEndOfwhileEven = []
439 EndOfwhileEven.SetPyFunction( '' , PyEndOfwhileEven )
440 IwhileEvenDoLoop = whileEven.GetInPort( 'DoLoop' )
441 IwhileEvenSyrComponent = whileEven.InPort( 'SyrComponent' , 'objref' )
442 IwhileEvenN = whileEven.InPort( 'N' , 'long' )
443 IwhileEvenK = whileEven.InPort( 'K' , 'long' )
444 IwhileEvenGate = whileEven.GetInPort( 'Gate' )
445 OwhileEvenDoLoop = whileEven.GetOutPort( 'DoLoop' )
446 OwhileEvenSyrComponent = whileEven.GetOutPort( 'SyrComponent' )
447 OwhileEvenN = whileEven.GetOutPort( 'N' )
448 OwhileEvenK = whileEven.GetOutPort( 'K' )
449 IEndOfwhileEvenDoLoop = EndOfwhileEven.GetInPort( 'DoLoop' )
450 IEndOfwhileEvenSyrComponent = EndOfwhileEven.GetInPort( 'SyrComponent' )
451 IEndOfwhileEvenN = EndOfwhileEven.GetInPort( 'N' )
452 IEndOfwhileEvenK = EndOfwhileEven.GetInPort( 'K' )
453 IEndOfwhileEvenGate = EndOfwhileEven.GetInPort( 'Gate' )
454 OEndOfwhileEvenDoLoop = EndOfwhileEven.GetOutPort( 'DoLoop' )
455 OEndOfwhileEvenSyrComponent = EndOfwhileEven.GetOutPort( 'SyrComponent' )
456 OEndOfwhileEvenN = EndOfwhileEven.GetOutPort( 'N' )
457 OEndOfwhileEvenK = EndOfwhileEven.GetOutPort( 'K' )
458 OEndOfwhileEvenGate = EndOfwhileEven.GetOutPort( 'Gate' )
459 whileEven.SetName( 'whileEven' )
460 whileEven.SetAuthor( '' )
461 whileEven.SetComment( 'InitEven, MoreEven, NextEven' )
462 whileEven.Coords( 632 , 451 )
464 # Creation of Switch Nodes
466 PyifNotEven.append( 'import SyrComponent_idl' )
467 PyifNotEven.append( 'def ifNotEven( SyrComponent , N , K ) :' )
468 PyifNotEven.append( ' Even = SyrComponent.C_ISEVEN( N )' )
469 PyifNotEven.append( ' Odd = 1 - Even' )
470 PyifNotEven.append( ' return Odd,Even,SyrComponent,N,K' )
471 ifNotEven,EndOfifNotEven = SyrStruct_1.SNode( 'ifNotEven' , PyifNotEven )
472 EndOfifNotEven.SetName( 'EndOfifNotEven' )
473 EndOfifNotEven.SetAuthor( '' )
474 EndOfifNotEven.SetComment( '' )
475 EndOfifNotEven.Coords( 1205 , 331 )
476 PyEndOfifNotEven = []
477 EndOfifNotEven.SetPyFunction( '' , PyEndOfifNotEven )
478 IEndOfifNotEvenN = EndOfifNotEven.InPort( 'N' , 'long' )
479 IEndOfifNotEvenK = EndOfifNotEven.InPort( 'K' , 'long' )
480 IEndOfifNotEvenDefault = EndOfifNotEven.GetInPort( 'Default' )
481 OEndOfifNotEvenN = EndOfifNotEven.OutPort( 'N' , 'long' )
482 OEndOfifNotEvenK = EndOfifNotEven.OutPort( 'K' , 'long' )
483 OEndOfifNotEvenGate = EndOfifNotEven.GetOutPort( 'Gate' )
484 ifNotEven.SetName( 'ifNotEven' )
485 ifNotEven.SetAuthor( '' )
486 ifNotEven.SetComment( 'ifNotEven' )
487 ifNotEven.Coords( 418 , 274 )
488 IifNotEvenSyrComponent = ifNotEven.InPort( 'SyrComponent' , 'objref' )
489 IifNotEvenN = ifNotEven.InPort( 'N' , 'long' )
490 IifNotEvenK = ifNotEven.InPort( 'K' , 'long' )
491 IifNotEvenGate = ifNotEven.GetInPort( 'Gate' )
492 OifNotEvenOdd = ifNotEven.OutPort( 'Odd' , 'long' )
493 OifNotEvenEven = ifNotEven.OutPort( 'Even' , 'long' )
494 OifNotEvenSyrComponent = ifNotEven.OutPort( 'SyrComponent' , 'objref' )
495 OifNotEvenN = ifNotEven.OutPort( 'N' , 'long' )
496 OifNotEvenK = ifNotEven.OutPort( 'K' , 'long' )
497 OifNotEvenDefault = ifNotEven.GetOutPort( 'Default' )
500 Lm3anIntegerm3incraCount = SyrStruct_1.Link( Om3anInteger , Im3incraCount )
502 Lm3incraNewCountEndOfifNotEvenN = SyrStruct_1.Link( Om3incraNewCount , IEndOfifNotEvenN )
503 Lm3incraNewCountEndOfifNotEvenN.AddCoord( 1 , 1190 , 366 )
504 Lm3incraNewCountEndOfifNotEvenN.AddCoord( 2 , 1191 , 109 )
506 LincraaNewCountEndOfforiK = SyrStruct_1.Link( OincraaNewCount , IEndOfforiK )
508 Ldiv2anIntegerEndOfwhileEvenN = SyrStruct_1.Link( Odiv2anInteger , IEndOfwhileEvenN )
510 LincrbaNewCountEndOfwhileEvenK = SyrStruct_1.Link( OincrbaNewCount , IEndOfwhileEvenK )
511 LincrbaNewCountEndOfwhileEvenK.AddCoord( 1 , 988 , 543 )
512 LincrbaNewCountEndOfwhileEvenK.AddCoord( 2 , 988 , 654 )
514 LSyrComponentSyrComponentobjrefforNSyrComponent = SyrStruct_1.Link( OSyrComponentSyrComponentobjref , IforNSyrComponent )
515 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 1 , 13 , 394 )
516 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 2 , 12 , 181 )
517 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 3 , 196 , 181 )
518 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 4 , 197 , 81 )
520 LforNNwhileNotOneN = SyrStruct_1.Link( OforNN , IwhileNotOneN )
522 LforNNEndOfforNN = SyrStruct_1.Link( OforNN , IEndOfforNN )
524 LforNKwhileNotOneK = SyrStruct_1.Link( OforNK , IwhileNotOneK )
526 LforNSyrComponentEndOfforNSyrComponent = SyrStruct_1.Link( OforNSyrComponent , IEndOfforNSyrComponent )
528 LforNSyrComponentwhileNotOneSyrComponent = SyrStruct_1.Link( OforNSyrComponent , IwhileNotOneSyrComponent )
529 LforNSyrComponentwhileNotOneSyrComponent.AddCoord( 1 , 192 , 309 )
530 LforNSyrComponentwhileNotOneSyrComponent.AddCoord( 2 , 191 , 394 )
532 LforNminEndOfforNmin = SyrStruct_1.Link( OforNmin , IEndOfforNmin )
534 LforNmaxEndOfforNmax = SyrStruct_1.Link( OforNmax , IEndOfforNmax )
536 LwhileNotOneSyrComponentEndOfwhileNotOneSyrComponent = SyrStruct_1.Link( OwhileNotOneSyrComponent , IEndOfwhileNotOneSyrComponent )
538 LwhileNotOneSyrComponentifNotEvenSyrComponent = SyrStruct_1.Link( OwhileNotOneSyrComponent , IifNotEvenSyrComponent )
540 LwhileNotOneNifNotEvenN = SyrStruct_1.Link( OwhileNotOneN , IifNotEvenN )
542 LwhileNotOneKifNotEvenK = SyrStruct_1.Link( OwhileNotOneK , IifNotEvenK )
544 LEndOfwhileNotOneKEndOfforNK = SyrStruct_1.Link( OEndOfwhileNotOneK , IEndOfforNK )
546 LforiiEndOfforii = SyrStruct_1.Link( Oforii , IEndOfforii )
548 LforiKincraaCount = SyrStruct_1.Link( OforiK , IincraaCount )
550 LEndOfforiKEndOfifNotEvenK = SyrStruct_1.Link( OEndOfforiK , IEndOfifNotEvenK )
551 LEndOfforiKEndOfifNotEvenK.AddCoord( 1 , 1170 , 396 )
552 LEndOfforiKEndOfifNotEvenK.AddCoord( 2 , 1169 , 275 )
554 LwhileEvenSyrComponentEndOfwhileEvenSyrComponent = SyrStruct_1.Link( OwhileEvenSyrComponent , IEndOfwhileEvenSyrComponent )
556 LwhileEvenNdiv2anEvenInteger = SyrStruct_1.Link( OwhileEvenN , Idiv2anEvenInteger )
558 LwhileEvenKincrbaCount = SyrStruct_1.Link( OwhileEvenK , IincrbaCount )
559 LwhileEvenKincrbaCount.AddCoord( 1 , 796 , 655 )
560 LwhileEvenKincrbaCount.AddCoord( 2 , 795 , 543 )
562 LEndOfwhileEvenNEndOfifNotEvenN = SyrStruct_1.Link( OEndOfwhileEvenN , IEndOfifNotEvenN )
563 LEndOfwhileEvenNEndOfifNotEvenN.AddCoord( 1 , 1191 , 366 )
564 LEndOfwhileEvenNEndOfifNotEvenN.AddCoord( 2 , 1191 , 513 )
566 LEndOfwhileEvenKEndOfifNotEvenK = SyrStruct_1.Link( OEndOfwhileEvenK , IEndOfifNotEvenK )
567 LEndOfwhileEvenKEndOfifNotEvenK.AddCoord( 1 , 1169 , 395 )
568 LEndOfwhileEvenKEndOfifNotEvenK.AddCoord( 2 , 1170 , 543 )
570 LifNotEvenOddm3Gate = SyrStruct_1.Link( OifNotEvenOdd , Im3Gate )
571 LifNotEvenOddm3Gate.AddCoord( 1 , 593 , 141 )
572 LifNotEvenOddm3Gate.AddCoord( 2 , 593 , 307 )
574 LifNotEvenOddforiGate = SyrStruct_1.Link( OifNotEvenOdd , IforiGate )
576 LifNotEvenEvenwhileEvenGate = SyrStruct_1.Link( OifNotEvenEven , IwhileEvenGate )
577 LifNotEvenEvenwhileEvenGate.AddCoord( 1 , 593 , 576 )
578 LifNotEvenEvenwhileEvenGate.AddCoord( 2 , 592 , 339 )
580 LifNotEvenSyrComponentwhileEvenSyrComponent = SyrStruct_1.Link( OifNotEvenSyrComponent , IwhileEvenSyrComponent )
581 LifNotEvenSyrComponentwhileEvenSyrComponent.AddCoord( 1 , 586 , 486 )
582 LifNotEvenSyrComponentwhileEvenSyrComponent.AddCoord( 2 , 587 , 367 )
584 LifNotEvenNwhileEvenN = SyrStruct_1.Link( OifNotEvenN , IwhileEvenN )
585 LifNotEvenNwhileEvenN.AddCoord( 1 , 604 , 513 )
586 LifNotEvenNwhileEvenN.AddCoord( 2 , 603 , 397 )
588 LifNotEvenNm3anOddInteger = SyrStruct_1.Link( OifNotEvenN , Im3anOddInteger )
589 LifNotEvenNm3anOddInteger.AddCoord( 1 , 604 , 107 )
590 LifNotEvenNm3anOddInteger.AddCoord( 2 , 604 , 395 )
592 LifNotEvenKwhileEvenK = SyrStruct_1.Link( OifNotEvenK , IwhileEvenK )
593 LifNotEvenKwhileEvenK.AddCoord( 1 , 621 , 544 )
594 LifNotEvenKwhileEvenK.AddCoord( 2 , 622 , 426 )
596 LifNotEvenKforiK = SyrStruct_1.Link( OifNotEvenK , IforiK )
597 LifNotEvenKforiK.AddCoord( 1 , 622 , 275 )
598 LifNotEvenKforiK.AddCoord( 2 , 622 , 426 )
600 LifNotEvenDefaultEndOfifNotEvenDefault = SyrStruct_1.Link( OifNotEvenDefault , IEndOfifNotEvenDefault )
601 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 1 , 1204 , 429 )
602 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 2 , 1203 , 12 )
603 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 3 , 581 , 13 )
604 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 4 , 581 , 458 )
606 LEndOfifNotEvenNEndOfwhileNotOneN = SyrStruct_1.Link( OEndOfifNotEvenN , IEndOfwhileNotOneN )
608 LEndOfifNotEvenKEndOfwhileNotOneK = SyrStruct_1.Link( OEndOfifNotEvenK , IEndOfwhileNotOneK )
610 # Input Ports of the graph
611 #ISyrComponentaContainer = SyrComponent.GetInPort( 'aContainer' )
612 #ISyrComponentaComponent = SyrComponent.GetInPort( 'aComponent' )
613 #IforNN = forN.GetInPort( 'N' )
614 #IforNK = forN.GetInPort( 'K' )
615 #IforNmin = forN.GetInPort( 'min' )
616 #IforNmax = forN.GetInPort( 'max' )
617 #Iforii = fori.GetInPort( 'i' )
619 # Output Ports of the graph
620 #OEndOfforNN = EndOfforN.GetOutPort( 'N' )
621 #OEndOfforNK = EndOfforN.GetOutPort( 'K' )
622 #OEndOfforNSyrComponent = EndOfforN.GetOutPort( 'SyrComponent' )
623 #OEndOfforNmin = EndOfforN.GetOutPort( 'min' )
624 #OEndOfforNmax = EndOfforN.GetOutPort( 'max' )
625 #OEndOfwhileNotOneSyrComponent = EndOfwhileNotOne.GetOutPort( 'SyrComponent' )
626 #OEndOfwhileNotOneN = EndOfwhileNotOne.GetOutPort( 'N' )
627 #OEndOfforii = EndOffori.GetOutPort( 'i' )
628 #OEndOfwhileEvenSyrComponent = EndOfwhileEven.GetOutPort( 'SyrComponent' )
631 # Graph creation of SyrStruct_1_1
632 def DefSyrStruct_1_1() :
633 SyrStruct_1_1 = Graph( 'SyrStruct_1_1' )
634 SyrStruct_1_1.SetCoupled( 'Macro_SyrStruct_1' )
635 SyrStruct_1_1.SetName( 'SyrStruct_1_1' )
636 SyrStruct_1_1.SetAuthor( 'JR' )
637 SyrStruct_1_1.SetComment( 'Syracuse algorithm' )
638 SyrStruct_1_1.Coords( 0 , 0 )
640 # Creation of Factory Nodes
642 m3 = SyrStruct_1_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_M3' )
645 m3.SetContainer( 'localhost/FactoryServer' )
646 m3.SetComment( 'C_M3 from SyrComponent' )
647 m3.Coords( 672 , 28 )
648 Im3anOddInteger = m3.GetInPort( 'anOddInteger' )
649 Im3Gate = m3.GetInPort( 'Gate' )
650 Om3anInteger = m3.GetOutPort( 'anInteger' )
651 Om3Gate = m3.GetOutPort( 'Gate' )
653 m3incr = SyrStruct_1_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_INCR' )
654 m3incr.SetName( 'm3incr' )
655 m3incr.SetAuthor( '' )
656 m3incr.SetContainer( 'localhost/FactoryServer' )
657 m3incr.SetComment( 'C_INCR from SyrComponent' )
658 m3incr.Coords( 898 , 29 )
659 Im3incraCount = m3incr.GetInPort( 'aCount' )
660 Im3incrGate = m3incr.GetInPort( 'Gate' )
661 Om3incraNewCount = m3incr.GetOutPort( 'aNewCount' )
662 Om3incrGate = m3incr.GetOutPort( 'Gate' )
664 incra = SyrStruct_1_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_INCR' )
665 incra.SetName( 'incra' )
666 incra.SetAuthor( '' )
667 incra.SetContainer( 'localhost/FactoryServer' )
668 incra.SetComment( 'C_INCR from SyrComponent' )
669 incra.Coords( 803 , 195 )
670 IincraaCount = incra.GetInPort( 'aCount' )
671 IincraGate = incra.GetInPort( 'Gate' )
672 OincraaNewCount = incra.GetOutPort( 'aNewCount' )
673 OincraGate = incra.GetOutPort( 'Gate' )
675 div2 = SyrStruct_1_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_DIV2' )
676 div2.SetName( 'div2' )
678 div2.SetContainer( 'localhost/FactoryServer' )
679 div2.SetComment( 'C_DIV2 from SyrComponent' )
680 div2.Coords( 810 , 435 )
681 Idiv2anEvenInteger = div2.GetInPort( 'anEvenInteger' )
682 Idiv2Gate = div2.GetInPort( 'Gate' )
683 Odiv2anInteger = div2.GetOutPort( 'anInteger' )
684 Odiv2Gate = div2.GetOutPort( 'Gate' )
686 incrb = SyrStruct_1_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_INCR' )
687 incrb.SetName( 'incrb' )
688 incrb.SetAuthor( '' )
689 incrb.SetContainer( 'localhost/FactoryServer' )
690 incrb.SetComment( 'C_INCR from SyrComponent' )
691 incrb.Coords( 809 , 574 )
692 IincrbaCount = incrb.GetInPort( 'aCount' )
693 IincrbGate = incrb.GetInPort( 'Gate' )
694 OincrbaNewCount = incrb.GetOutPort( 'aNewCount' )
695 OincrbGate = incrb.GetOutPort( 'Gate' )
697 # Creation of InLine Nodes
699 PySyrComponent.append( 'from LifeCycleCORBA import * ' )
700 PySyrComponent.append( 'def SyrComponent( aContainer , aComponent ) : ' )
701 PySyrComponent.append( ' orb = CORBA.ORB_init([], CORBA.ORB_ID) ' )
702 PySyrComponent.append( ' lcc = LifeCycleCORBA(orb) ' )
703 PySyrComponent.append( ' ComponentRef = lcc.FindOrLoadComponent( aContainer , aComponent ) ' )
704 PySyrComponent.append( ' return ComponentRef ' )
705 SyrComponent = SyrStruct_1_1.INode( 'SyrComponent' , PySyrComponent )
706 SyrComponent.SetName( 'SyrComponent' )
707 SyrComponent.SetAuthor( '' )
708 SyrComponent.SetComment( 'SyrComponent( aContainer , aComponent )' )
709 SyrComponent.Coords( 0 , 0 )
710 ISyrComponentaContainer = SyrComponent.InPort( 'aContainer' , 'string' )
711 ISyrComponentaComponent = SyrComponent.InPort( 'aComponent' , 'string' )
712 ISyrComponentGate = SyrComponent.GetInPort( 'Gate' )
713 OSyrComponentSyrComponentobjref = SyrComponent.OutPort( 'SyrComponentobjref' , 'objref' )
714 OSyrComponentGate = SyrComponent.GetOutPort( 'Gate' )
716 # Creation of Loop Nodes
718 PyforN.append( 'def InitN( NN , K , SyrComponent , min , max ) : ' )
719 PyforN.append( ' N = max ' )
720 PyforN.append( ' if min > 0 : ' )
721 PyforN.append( ' if max >= min : ' )
722 PyforN.append( ' N = min ' )
723 PyforN.append( ' return N,K,SyrComponent,min,max ' )
725 PyMoreforN.append( 'def MoreN( NN , KK , SyrComponent , min , max ) : ' )
726 PyMoreforN.append( ' N = NN ' )
727 PyMoreforN.append( ' OutLoop = 0 ' )
728 PyMoreforN.append( ' if max > NN : ' )
729 PyMoreforN.append( ' OutLoop = 1 ' )
730 PyMoreforN.append( ' return OutLoop,N,0,SyrComponent,min,max ' )
732 PyNextforN.append( 'def NextN( NN , KK , SyrComponent , min , max ) : ' )
733 PyNextforN.append( ' N = NN + 1 ' )
734 PyNextforN.append( ' K = KK ' )
735 PyNextforN.append( ' return N,K,SyrComponent,min,max ' )
736 forN,EndOfforN = SyrStruct_1_1.LNode( 'InitN' , PyforN , 'MoreN' , PyMoreforN , 'NextN' , PyNextforN )
737 EndOfforN.SetName( 'EndOfforN' )
738 EndOfforN.SetAuthor( '' )
739 EndOfforN.SetComment( '' )
740 EndOfforN.Coords( 1535 , 332 )
742 EndOfforN.SetPyFunction( '' , PyEndOfforN )
743 IforNDoLoop = forN.GetInPort( 'DoLoop' )
744 IforNN = forN.InPort( 'N' , 'long' )
745 IforNK = forN.InPort( 'K' , 'long' )
746 IforNSyrComponent = forN.InPort( 'SyrComponent' , 'objref' )
747 IforNmin = forN.InPort( 'min' , 'long' )
748 IforNmax = forN.InPort( 'max' , 'long' )
749 IforNGate = forN.GetInPort( 'Gate' )
750 OforNDoLoop = forN.GetOutPort( 'DoLoop' )
751 OforNN = forN.GetOutPort( 'N' )
752 OforNK = forN.GetOutPort( 'K' )
753 OforNSyrComponent = forN.GetOutPort( 'SyrComponent' )
754 OforNmin = forN.GetOutPort( 'min' )
755 OforNmax = forN.GetOutPort( 'max' )
756 IEndOfforNDoLoop = EndOfforN.GetInPort( 'DoLoop' )
757 IEndOfforNN = EndOfforN.GetInPort( 'N' )
758 IEndOfforNK = EndOfforN.GetInPort( 'K' )
759 IEndOfforNSyrComponent = EndOfforN.GetInPort( 'SyrComponent' )
760 IEndOfforNmin = EndOfforN.GetInPort( 'min' )
761 IEndOfforNmax = EndOfforN.GetInPort( 'max' )
762 IEndOfforNGate = EndOfforN.GetInPort( 'Gate' )
763 OEndOfforNDoLoop = EndOfforN.GetOutPort( 'DoLoop' )
764 OEndOfforNN = EndOfforN.GetOutPort( 'N' )
765 OEndOfforNK = EndOfforN.GetOutPort( 'K' )
766 OEndOfforNSyrComponent = EndOfforN.GetOutPort( 'SyrComponent' )
767 OEndOfforNmin = EndOfforN.GetOutPort( 'min' )
768 OEndOfforNmax = EndOfforN.GetOutPort( 'max' )
769 OEndOfforNGate = EndOfforN.GetOutPort( 'Gate' )
770 forN.SetName( 'forN' )
772 forN.SetComment( 'InitN , MoreN , NextN' )
773 forN.Coords( 20 , 302 )
776 PywhileNotOne.append( 'import threading' )
777 PywhileNotOne.append( 'import SyrComponent_idl' )
778 PywhileNotOne.append( 'def InitNotOne( SyrComponent , N , K ) :' )
779 PywhileNotOne.append( ' return SyrComponent,N,K' )
780 PyMorewhileNotOne = []
781 PyMorewhileNotOne.append( 'import SyrComponent_idl' )
782 PyMorewhileNotOne.append( 'def MoreNotOne( SyrComponent , N , K ) :' )
783 PyMorewhileNotOne.append( ' OutLoop = 1 - SyrComponent.C_ISONE( N )' )
784 PyMorewhileNotOne.append( ' return OutLoop,SyrComponent,N,K ' )
785 PyNextwhileNotOne = []
786 PyNextwhileNotOne.append( 'import SyrComponent_idl' )
787 PyNextwhileNotOne.append( 'def NextNotOne( SyrComponent , N , K ) :' )
788 PyNextwhileNotOne.append( ' return SyrComponent,N,K' )
789 whileNotOne,EndOfwhileNotOne = SyrStruct_1_1.LNode( 'InitNotOne' , PywhileNotOne , 'MoreNotOne' , PyMorewhileNotOne , 'NextNotOne' , PyNextwhileNotOne )
790 EndOfwhileNotOne.SetName( 'EndOfwhileNotOne' )
791 EndOfwhileNotOne.SetAuthor( '' )
792 EndOfwhileNotOne.SetComment( '' )
793 EndOfwhileNotOne.Coords( 1366 , 303 )
794 PyEndOfwhileNotOne = []
795 EndOfwhileNotOne.SetPyFunction( '' , PyEndOfwhileNotOne )
796 IwhileNotOneDoLoop = whileNotOne.GetInPort( 'DoLoop' )
797 IwhileNotOneSyrComponent = whileNotOne.InPort( 'SyrComponent' , 'objref' )
798 IwhileNotOneN = whileNotOne.InPort( 'N' , 'long' )
799 IwhileNotOneK = whileNotOne.InPort( 'K' , 'long' )
800 IwhileNotOneGate = whileNotOne.GetInPort( 'Gate' )
801 OwhileNotOneDoLoop = whileNotOne.GetOutPort( 'DoLoop' )
802 OwhileNotOneSyrComponent = whileNotOne.GetOutPort( 'SyrComponent' )
803 OwhileNotOneN = whileNotOne.GetOutPort( 'N' )
804 OwhileNotOneK = whileNotOne.GetOutPort( 'K' )
805 IEndOfwhileNotOneDoLoop = EndOfwhileNotOne.GetInPort( 'DoLoop' )
806 IEndOfwhileNotOneSyrComponent = EndOfwhileNotOne.GetInPort( 'SyrComponent' )
807 IEndOfwhileNotOneN = EndOfwhileNotOne.GetInPort( 'N' )
808 IEndOfwhileNotOneK = EndOfwhileNotOne.GetInPort( 'K' )
809 IEndOfwhileNotOneGate = EndOfwhileNotOne.GetInPort( 'Gate' )
810 OEndOfwhileNotOneDoLoop = EndOfwhileNotOne.GetOutPort( 'DoLoop' )
811 OEndOfwhileNotOneSyrComponent = EndOfwhileNotOne.GetOutPort( 'SyrComponent' )
812 OEndOfwhileNotOneN = EndOfwhileNotOne.GetOutPort( 'N' )
813 OEndOfwhileNotOneK = EndOfwhileNotOne.GetOutPort( 'K' )
814 OEndOfwhileNotOneGate = EndOfwhileNotOne.GetOutPort( 'Gate' )
815 whileNotOne.SetName( 'whileNotOne' )
816 whileNotOne.SetAuthor( '' )
817 whileNotOne.SetComment( 'InitNotOne , MoreNotOne , NextNotOne' )
818 whileNotOne.Coords( 212 , 274 )
821 Pyfori.append( 'def Initfori( ii , K ) :' )
822 Pyfori.append( ' return 1,0,K' )
824 PyMorefori.append( 'def Morefori( ii , K ) :' )
825 PyMorefori.append( ' OutLoop = 0' )
826 PyMorefori.append( ' if 2 > ii :' )
827 PyMorefori.append( ' OutLoop = 1' )
828 PyMorefori.append( ' return OutLoop,ii,K' )
830 PyNextfori.append( 'def Nextfori( ii , K ) :' )
831 PyNextfori.append( ' ii = ii + 1' )
832 PyNextfori.append( ' return ii,K' )
833 fori,EndOffori = SyrStruct_1_1.LNode( 'Initfori' , Pyfori , 'Morefori' , PyMorefori , 'Nextfori' , PyNextfori )
834 EndOffori.SetName( 'EndOffori' )
835 EndOffori.SetAuthor( '' )
836 EndOffori.SetComment( '' )
837 EndOffori.Coords( 976 , 212 )
839 EndOffori.SetPyFunction( '' , PyEndOffori )
840 IforiDoLoop = fori.GetInPort( 'DoLoop' )
841 Iforii = fori.InPort( 'i' , 'long' )
842 IforiK = fori.InPort( 'K' , 'long' )
843 IforiGate = fori.GetInPort( 'Gate' )
844 OforiDoLoop = fori.GetOutPort( 'DoLoop' )
845 Oforii = fori.GetOutPort( 'i' )
846 OforiK = fori.GetOutPort( 'K' )
847 IEndOfforiDoLoop = EndOffori.GetInPort( 'DoLoop' )
848 IEndOfforii = EndOffori.GetInPort( 'i' )
849 IEndOfforiK = EndOffori.GetInPort( 'K' )
850 IEndOfforiGate = EndOffori.GetInPort( 'Gate' )
851 OEndOfforiDoLoop = EndOffori.GetOutPort( 'DoLoop' )
852 OEndOfforii = EndOffori.GetOutPort( 'i' )
853 OEndOfforiK = EndOffori.GetOutPort( 'K' )
854 OEndOfforiGate = EndOffori.GetOutPort( 'Gate' )
855 fori.SetName( 'fori' )
857 fori.SetComment( 'Initfori, Morefori, Nextfori' )
858 fori.Coords( 635 , 212 )
861 PywhileEven.append( 'import SyrComponent_idl' )
862 PywhileEven.append( 'def InitEven( SyrComponent , N , K ) :' )
863 PywhileEven.append( ' return SyrComponent,N,K' )
865 PyMorewhileEven.append( 'import SyrComponent_idl' )
866 PyMorewhileEven.append( 'def MoreEven( SyrComponent , N , K ) :' )
867 PyMorewhileEven.append( ' OutLoop = SyrComponent.C_ISEVEN( N )' )
868 PyMorewhileEven.append( ' return OutLoop,SyrComponent,N,K ' )
870 PyNextwhileEven.append( 'import SyrComponent_idl' )
871 PyNextwhileEven.append( 'def NextEven( SyrComponent , N , K ) :' )
872 PyNextwhileEven.append( ' return SyrComponent,N,K' )
873 whileEven,EndOfwhileEven = SyrStruct_1_1.LNode( 'InitEven' , PywhileEven , 'MoreEven' , PyMorewhileEven , 'NextEven' , PyNextwhileEven )
874 EndOfwhileEven.SetName( 'EndOfwhileEven' )
875 EndOfwhileEven.SetAuthor( '' )
876 EndOfwhileEven.SetComment( '' )
877 EndOfwhileEven.Coords( 988 , 451 )
878 PyEndOfwhileEven = []
879 EndOfwhileEven.SetPyFunction( '' , PyEndOfwhileEven )
880 IwhileEvenDoLoop = whileEven.GetInPort( 'DoLoop' )
881 IwhileEvenSyrComponent = whileEven.InPort( 'SyrComponent' , 'objref' )
882 IwhileEvenN = whileEven.InPort( 'N' , 'long' )
883 IwhileEvenK = whileEven.InPort( 'K' , 'long' )
884 IwhileEvenGate = whileEven.GetInPort( 'Gate' )
885 OwhileEvenDoLoop = whileEven.GetOutPort( 'DoLoop' )
886 OwhileEvenSyrComponent = whileEven.GetOutPort( 'SyrComponent' )
887 OwhileEvenN = whileEven.GetOutPort( 'N' )
888 OwhileEvenK = whileEven.GetOutPort( 'K' )
889 IEndOfwhileEvenDoLoop = EndOfwhileEven.GetInPort( 'DoLoop' )
890 IEndOfwhileEvenSyrComponent = EndOfwhileEven.GetInPort( 'SyrComponent' )
891 IEndOfwhileEvenN = EndOfwhileEven.GetInPort( 'N' )
892 IEndOfwhileEvenK = EndOfwhileEven.GetInPort( 'K' )
893 IEndOfwhileEvenGate = EndOfwhileEven.GetInPort( 'Gate' )
894 OEndOfwhileEvenDoLoop = EndOfwhileEven.GetOutPort( 'DoLoop' )
895 OEndOfwhileEvenSyrComponent = EndOfwhileEven.GetOutPort( 'SyrComponent' )
896 OEndOfwhileEvenN = EndOfwhileEven.GetOutPort( 'N' )
897 OEndOfwhileEvenK = EndOfwhileEven.GetOutPort( 'K' )
898 OEndOfwhileEvenGate = EndOfwhileEven.GetOutPort( 'Gate' )
899 whileEven.SetName( 'whileEven' )
900 whileEven.SetAuthor( '' )
901 whileEven.SetComment( 'InitEven, MoreEven, NextEven' )
902 whileEven.Coords( 632 , 451 )
904 # Creation of Switch Nodes
906 PyifNotEven.append( 'import SyrComponent_idl' )
907 PyifNotEven.append( 'def ifNotEven( SyrComponent , N , K ) :' )
908 PyifNotEven.append( ' Even = SyrComponent.C_ISEVEN( N )' )
909 PyifNotEven.append( ' Odd = 1 - Even' )
910 PyifNotEven.append( ' return Odd,Even,SyrComponent,N,K' )
911 ifNotEven,EndOfifNotEven = SyrStruct_1_1.SNode( 'ifNotEven' , PyifNotEven )
912 EndOfifNotEven.SetName( 'EndOfifNotEven' )
913 EndOfifNotEven.SetAuthor( '' )
914 EndOfifNotEven.SetComment( '' )
915 EndOfifNotEven.Coords( 1205 , 331 )
916 PyEndOfifNotEven = []
917 EndOfifNotEven.SetPyFunction( '' , PyEndOfifNotEven )
918 IEndOfifNotEvenN = EndOfifNotEven.InPort( 'N' , 'long' )
919 IEndOfifNotEvenK = EndOfifNotEven.InPort( 'K' , 'long' )
920 IEndOfifNotEvenDefault = EndOfifNotEven.GetInPort( 'Default' )
921 OEndOfifNotEvenN = EndOfifNotEven.OutPort( 'N' , 'long' )
922 OEndOfifNotEvenK = EndOfifNotEven.OutPort( 'K' , 'long' )
923 OEndOfifNotEvenGate = EndOfifNotEven.GetOutPort( 'Gate' )
924 ifNotEven.SetName( 'ifNotEven' )
925 ifNotEven.SetAuthor( '' )
926 ifNotEven.SetComment( 'ifNotEven' )
927 ifNotEven.Coords( 418 , 274 )
928 IifNotEvenSyrComponent = ifNotEven.InPort( 'SyrComponent' , 'objref' )
929 IifNotEvenN = ifNotEven.InPort( 'N' , 'long' )
930 IifNotEvenK = ifNotEven.InPort( 'K' , 'long' )
931 IifNotEvenGate = ifNotEven.GetInPort( 'Gate' )
932 OifNotEvenOdd = ifNotEven.OutPort( 'Odd' , 'long' )
933 OifNotEvenEven = ifNotEven.OutPort( 'Even' , 'long' )
934 OifNotEvenSyrComponent = ifNotEven.OutPort( 'SyrComponent' , 'objref' )
935 OifNotEvenN = ifNotEven.OutPort( 'N' , 'long' )
936 OifNotEvenK = ifNotEven.OutPort( 'K' , 'long' )
937 OifNotEvenDefault = ifNotEven.GetOutPort( 'Default' )
940 Lm3anIntegerm3incraCount = SyrStruct_1_1.Link( Om3anInteger , Im3incraCount )
942 Lm3incraNewCountEndOfifNotEvenN = SyrStruct_1_1.Link( Om3incraNewCount , IEndOfifNotEvenN )
943 Lm3incraNewCountEndOfifNotEvenN.AddCoord( 1 , 1190 , 366 )
944 Lm3incraNewCountEndOfifNotEvenN.AddCoord( 2 , 1191 , 109 )
946 LincraaNewCountEndOfforiK = SyrStruct_1_1.Link( OincraaNewCount , IEndOfforiK )
948 Ldiv2anIntegerEndOfwhileEvenN = SyrStruct_1_1.Link( Odiv2anInteger , IEndOfwhileEvenN )
950 LincrbaNewCountEndOfwhileEvenK = SyrStruct_1_1.Link( OincrbaNewCount , IEndOfwhileEvenK )
951 LincrbaNewCountEndOfwhileEvenK.AddCoord( 1 , 988 , 543 )
952 LincrbaNewCountEndOfwhileEvenK.AddCoord( 2 , 988 , 654 )
954 LSyrComponentSyrComponentobjrefforNSyrComponent = SyrStruct_1_1.Link( OSyrComponentSyrComponentobjref , IforNSyrComponent )
955 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 1 , 13 , 394 )
956 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 2 , 12 , 181 )
957 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 3 , 196 , 181 )
958 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 4 , 197 , 81 )
960 LforNNwhileNotOneN = SyrStruct_1_1.Link( OforNN , IwhileNotOneN )
962 LforNNEndOfforNN = SyrStruct_1_1.Link( OforNN , IEndOfforNN )
964 LforNKwhileNotOneK = SyrStruct_1_1.Link( OforNK , IwhileNotOneK )
966 LforNSyrComponentEndOfforNSyrComponent = SyrStruct_1_1.Link( OforNSyrComponent , IEndOfforNSyrComponent )
968 LforNSyrComponentwhileNotOneSyrComponent = SyrStruct_1_1.Link( OforNSyrComponent , IwhileNotOneSyrComponent )
969 LforNSyrComponentwhileNotOneSyrComponent.AddCoord( 1 , 192 , 309 )
970 LforNSyrComponentwhileNotOneSyrComponent.AddCoord( 2 , 191 , 394 )
972 LforNminEndOfforNmin = SyrStruct_1_1.Link( OforNmin , IEndOfforNmin )
974 LforNmaxEndOfforNmax = SyrStruct_1_1.Link( OforNmax , IEndOfforNmax )
976 LwhileNotOneSyrComponentEndOfwhileNotOneSyrComponent = SyrStruct_1_1.Link( OwhileNotOneSyrComponent , IEndOfwhileNotOneSyrComponent )
978 LwhileNotOneSyrComponentifNotEvenSyrComponent = SyrStruct_1_1.Link( OwhileNotOneSyrComponent , IifNotEvenSyrComponent )
980 LwhileNotOneNifNotEvenN = SyrStruct_1_1.Link( OwhileNotOneN , IifNotEvenN )
982 LwhileNotOneKifNotEvenK = SyrStruct_1_1.Link( OwhileNotOneK , IifNotEvenK )
984 LEndOfwhileNotOneKEndOfforNK = SyrStruct_1_1.Link( OEndOfwhileNotOneK , IEndOfforNK )
986 LforiiEndOfforii = SyrStruct_1_1.Link( Oforii , IEndOfforii )
988 LforiKincraaCount = SyrStruct_1_1.Link( OforiK , IincraaCount )
990 LEndOfforiKEndOfifNotEvenK = SyrStruct_1_1.Link( OEndOfforiK , IEndOfifNotEvenK )
991 LEndOfforiKEndOfifNotEvenK.AddCoord( 1 , 1170 , 396 )
992 LEndOfforiKEndOfifNotEvenK.AddCoord( 2 , 1169 , 275 )
994 LwhileEvenSyrComponentEndOfwhileEvenSyrComponent = SyrStruct_1_1.Link( OwhileEvenSyrComponent , IEndOfwhileEvenSyrComponent )
996 LwhileEvenNdiv2anEvenInteger = SyrStruct_1_1.Link( OwhileEvenN , Idiv2anEvenInteger )
998 LwhileEvenKincrbaCount = SyrStruct_1_1.Link( OwhileEvenK , IincrbaCount )
999 LwhileEvenKincrbaCount.AddCoord( 1 , 796 , 655 )
1000 LwhileEvenKincrbaCount.AddCoord( 2 , 795 , 543 )
1002 LEndOfwhileEvenNEndOfifNotEvenN = SyrStruct_1_1.Link( OEndOfwhileEvenN , IEndOfifNotEvenN )
1003 LEndOfwhileEvenNEndOfifNotEvenN.AddCoord( 1 , 1191 , 366 )
1004 LEndOfwhileEvenNEndOfifNotEvenN.AddCoord( 2 , 1191 , 513 )
1006 LEndOfwhileEvenKEndOfifNotEvenK = SyrStruct_1_1.Link( OEndOfwhileEvenK , IEndOfifNotEvenK )
1007 LEndOfwhileEvenKEndOfifNotEvenK.AddCoord( 1 , 1169 , 395 )
1008 LEndOfwhileEvenKEndOfifNotEvenK.AddCoord( 2 , 1170 , 543 )
1010 LifNotEvenOddm3Gate = SyrStruct_1_1.Link( OifNotEvenOdd , Im3Gate )
1011 LifNotEvenOddm3Gate.AddCoord( 1 , 593 , 141 )
1012 LifNotEvenOddm3Gate.AddCoord( 2 , 593 , 307 )
1014 LifNotEvenOddforiGate = SyrStruct_1_1.Link( OifNotEvenOdd , IforiGate )
1016 LifNotEvenEvenwhileEvenGate = SyrStruct_1_1.Link( OifNotEvenEven , IwhileEvenGate )
1017 LifNotEvenEvenwhileEvenGate.AddCoord( 1 , 593 , 576 )
1018 LifNotEvenEvenwhileEvenGate.AddCoord( 2 , 592 , 339 )
1020 LifNotEvenSyrComponentwhileEvenSyrComponent = SyrStruct_1_1.Link( OifNotEvenSyrComponent , IwhileEvenSyrComponent )
1021 LifNotEvenSyrComponentwhileEvenSyrComponent.AddCoord( 1 , 586 , 486 )
1022 LifNotEvenSyrComponentwhileEvenSyrComponent.AddCoord( 2 , 587 , 367 )
1024 LifNotEvenNwhileEvenN = SyrStruct_1_1.Link( OifNotEvenN , IwhileEvenN )
1025 LifNotEvenNwhileEvenN.AddCoord( 1 , 604 , 513 )
1026 LifNotEvenNwhileEvenN.AddCoord( 2 , 603 , 397 )
1028 LifNotEvenNm3anOddInteger = SyrStruct_1_1.Link( OifNotEvenN , Im3anOddInteger )
1029 LifNotEvenNm3anOddInteger.AddCoord( 1 , 604 , 107 )
1030 LifNotEvenNm3anOddInteger.AddCoord( 2 , 604 , 395 )
1032 LifNotEvenKwhileEvenK = SyrStruct_1_1.Link( OifNotEvenK , IwhileEvenK )
1033 LifNotEvenKwhileEvenK.AddCoord( 1 , 621 , 544 )
1034 LifNotEvenKwhileEvenK.AddCoord( 2 , 622 , 426 )
1036 LifNotEvenKforiK = SyrStruct_1_1.Link( OifNotEvenK , IforiK )
1037 LifNotEvenKforiK.AddCoord( 1 , 622 , 275 )
1038 LifNotEvenKforiK.AddCoord( 2 , 622 , 426 )
1040 LifNotEvenDefaultEndOfifNotEvenDefault = SyrStruct_1_1.Link( OifNotEvenDefault , IEndOfifNotEvenDefault )
1041 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 1 , 1204 , 429 )
1042 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 2 , 1203 , 12 )
1043 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 3 , 581 , 13 )
1044 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 4 , 581 , 458 )
1046 LEndOfifNotEvenNEndOfwhileNotOneN = SyrStruct_1_1.Link( OEndOfifNotEvenN , IEndOfwhileNotOneN )
1048 LEndOfifNotEvenKEndOfwhileNotOneK = SyrStruct_1_1.Link( OEndOfifNotEvenK , IEndOfwhileNotOneK )
1050 # Input Ports of the graph
1051 #ISyrComponentaContainer = SyrComponent.GetInPort( 'aContainer' )
1052 #ISyrComponentaComponent = SyrComponent.GetInPort( 'aComponent' )
1053 #IforNN = forN.GetInPort( 'N' )
1054 #IforNK = forN.GetInPort( 'K' )
1055 #IforNmin = forN.GetInPort( 'min' )
1056 #IforNmax = forN.GetInPort( 'max' )
1057 #Iforii = fori.GetInPort( 'i' )
1059 # Output Ports of the graph
1060 #OEndOfforNN = EndOfforN.GetOutPort( 'N' )
1061 #OEndOfforNK = EndOfforN.GetOutPort( 'K' )
1062 #OEndOfforNSyrComponent = EndOfforN.GetOutPort( 'SyrComponent' )
1063 #OEndOfforNmin = EndOfforN.GetOutPort( 'min' )
1064 #OEndOfforNmax = EndOfforN.GetOutPort( 'max' )
1065 #OEndOfwhileNotOneSyrComponent = EndOfwhileNotOne.GetOutPort( 'SyrComponent' )
1066 #OEndOfwhileNotOneN = EndOfwhileNotOne.GetOutPort( 'N' )
1067 #OEndOfforii = EndOffori.GetOutPort( 'i' )
1068 #OEndOfwhileEvenSyrComponent = EndOfwhileEven.GetOutPort( 'SyrComponent' )
1069 return SyrStruct_1_1
1072 GraphMacroNodes = DefGraphMacroNodes()