1 # Copyright (C) 2007-2015 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, or (at your option) any later version.
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
23 # Generated python file of Graph GraphMacroNodes
27 # Graph creation of GraphMacroNodes
28 def DefGraphMacroNodes() :
29 GraphMacroNodes = Graph( 'GraphMacroNodes' )
30 GraphMacroNodes.SetName( 'GraphMacroNodes' )
31 GraphMacroNodes.SetAuthor( '' )
32 GraphMacroNodes.SetComment( '' )
33 GraphMacroNodes.Coords( 0 , 0 )
35 # Creation of Factory Nodes
37 Add = GraphMacroNodes.FNode( 'AddComponent' , 'AddComponent' , 'Add' )
40 Add.SetContainer( 'FactoryServer' )
41 Add.SetComment( 'Add from AddComponent' )
43 IAddx = Add.GetInPort( 'x' )
44 IAddy = Add.GetInPort( 'y' )
45 IAddGate = Add.GetInPort( 'Gate' )
46 OAddFuncValue = Add.GetOutPort( 'FuncValue' )
47 OAddz = Add.GetOutPort( 'z' )
48 OAddGate = Add.GetOutPort( 'Gate' )
50 Sub = GraphMacroNodes.FNode( 'SubComponent' , 'SubComponent' , 'Sub' )
53 Sub.SetContainer( 'FactoryServer' )
54 Sub.SetComment( 'Sub from SubComponent' )
55 Sub.Coords( 227 , 99 )
56 ISubx = Sub.GetInPort( 'x' )
57 ISuby = Sub.GetInPort( 'y' )
58 ISubGate = Sub.GetInPort( 'Gate' )
59 OSubz = Sub.GetOutPort( 'z' )
60 OSubGate = Sub.GetOutPort( 'Gate' )
62 Mul = GraphMacroNodes.FNode( 'MulComponent' , 'MulComponent' , 'Mul' )
65 Mul.SetContainer( 'FactoryServer' )
66 Mul.SetComment( 'Mul from MulComponent' )
67 Mul.Coords( 443 , 278 )
68 IMulx = Mul.GetInPort( 'x' )
69 IMuly = Mul.GetInPort( 'y' )
70 IMulGate = Mul.GetInPort( 'Gate' )
71 OMulz = Mul.GetOutPort( 'z' )
72 OMulGate = Mul.GetOutPort( 'Gate' )
74 Div = GraphMacroNodes.FNode( 'DivComponent' , 'DivComponent' , 'Div' )
77 Div.SetContainer( 'FactoryServer' )
78 Div.SetComment( 'Div from DivComponent' )
79 Div.Coords( 634 , 97 )
80 IDivx = Div.GetInPort( 'x' )
81 IDivy = Div.GetInPort( 'y' )
82 IDivGate = Div.GetInPort( 'Gate' )
83 ODivz = Div.GetOutPort( 'z' )
84 ODivGate = Div.GetOutPort( 'Gate' )
86 # Creation of Macro Nodes
87 SyrStruct_1 = DefSyrStruct_1()
88 Macro_SyrStruct = GraphMacroNodes.GraphMNode( SyrStruct_1 )
89 Macro_SyrStruct.SetCoupled( 'SyrStruct_1' )
90 Macro_SyrStruct.SetName( 'Macro_SyrStruct' )
91 Macro_SyrStruct.SetAuthor( '' )
92 Macro_SyrStruct.SetComment( 'Macro Node' )
93 Macro_SyrStruct.Coords( 13 , 6 )
94 IMacro_SyrStructSyrComponent__aContainer = Macro_SyrStruct.GetInPort( 'SyrComponent__aContainer' )
95 IMacro_SyrStructSyrComponent__aComponent = Macro_SyrStruct.GetInPort( 'SyrComponent__aComponent' )
96 IMacro_SyrStructforN__N = Macro_SyrStruct.GetInPort( 'forN__N' )
97 IMacro_SyrStructforN__K = Macro_SyrStruct.GetInPort( 'forN__K' )
98 IMacro_SyrStructforN__min = Macro_SyrStruct.GetInPort( 'forN__min' )
99 IMacro_SyrStructforN__max = Macro_SyrStruct.GetInPort( 'forN__max' )
100 IMacro_SyrStructfori__i = Macro_SyrStruct.GetInPort( 'fori__i' )
101 IMacro_SyrStructGate = Macro_SyrStruct.GetInPort( 'Gate' )
102 OMacro_SyrStructEndOfforN__N = Macro_SyrStruct.GetOutPort( 'EndOfforN__N' )
103 OMacro_SyrStructEndOfforN__K = Macro_SyrStruct.GetOutPort( 'EndOfforN__K' )
104 OMacro_SyrStructEndOfforN__SyrComponent = Macro_SyrStruct.GetOutPort( 'EndOfforN__SyrComponent' )
105 OMacro_SyrStructEndOfforN__min = Macro_SyrStruct.GetOutPort( 'EndOfforN__min' )
106 OMacro_SyrStructEndOfforN__max = Macro_SyrStruct.GetOutPort( 'EndOfforN__max' )
107 OMacro_SyrStructEndOfwhileNotOne__SyrComponent = Macro_SyrStruct.GetOutPort( 'EndOfwhileNotOne__SyrComponent' )
108 OMacro_SyrStructEndOfwhileNotOne__N = Macro_SyrStruct.GetOutPort( 'EndOfwhileNotOne__N' )
109 OMacro_SyrStructEndOffori__i = Macro_SyrStruct.GetOutPort( 'EndOffori__i' )
110 OMacro_SyrStructEndOfwhileEven__SyrComponent = Macro_SyrStruct.GetOutPort( 'EndOfwhileEven__SyrComponent' )
111 OMacro_SyrStructGate = Macro_SyrStruct.GetOutPort( 'Gate' )
113 SyrStruct_1_1 = DefSyrStruct_1_1()
114 Macro_SyrStruct_1 = GraphMacroNodes.GraphMNode( SyrStruct_1_1 )
115 Macro_SyrStruct_1.SetCoupled( 'SyrStruct_1_1' )
116 Macro_SyrStruct_1.SetName( 'Macro_SyrStruct_1' )
117 Macro_SyrStruct_1.SetAuthor( '' )
118 Macro_SyrStruct_1.SetComment( 'Macro Node' )
119 Macro_SyrStruct_1.Coords( 8 , 441 )
120 IMacro_SyrStruct_1SyrComponent__aContainer = Macro_SyrStruct_1.GetInPort( 'SyrComponent__aContainer' )
121 IMacro_SyrStruct_1SyrComponent__aComponent = Macro_SyrStruct_1.GetInPort( 'SyrComponent__aComponent' )
122 IMacro_SyrStruct_1forN__N = Macro_SyrStruct_1.GetInPort( 'forN__N' )
123 IMacro_SyrStruct_1forN__K = Macro_SyrStruct_1.GetInPort( 'forN__K' )
124 IMacro_SyrStruct_1forN__min = Macro_SyrStruct_1.GetInPort( 'forN__min' )
125 IMacro_SyrStruct_1forN__max = Macro_SyrStruct_1.GetInPort( 'forN__max' )
126 IMacro_SyrStruct_1fori__i = Macro_SyrStruct_1.GetInPort( 'fori__i' )
127 IMacro_SyrStruct_1Gate = Macro_SyrStruct_1.GetInPort( 'Gate' )
128 OMacro_SyrStruct_1EndOfforN__N = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__N' )
129 OMacro_SyrStruct_1EndOfforN__K = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__K' )
130 OMacro_SyrStruct_1EndOfforN__SyrComponent = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__SyrComponent' )
131 OMacro_SyrStruct_1EndOfforN__min = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__min' )
132 OMacro_SyrStruct_1EndOfforN__max = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__max' )
133 OMacro_SyrStruct_1EndOfwhileNotOne__SyrComponent = Macro_SyrStruct_1.GetOutPort( 'EndOfwhileNotOne__SyrComponent' )
134 OMacro_SyrStruct_1EndOfwhileNotOne__N = Macro_SyrStruct_1.GetOutPort( 'EndOfwhileNotOne__N' )
135 OMacro_SyrStruct_1EndOffori__i = Macro_SyrStruct_1.GetOutPort( 'EndOffori__i' )
136 OMacro_SyrStruct_1EndOfwhileEven__SyrComponent = Macro_SyrStruct_1.GetOutPort( 'EndOfwhileEven__SyrComponent' )
137 OMacro_SyrStruct_1Gate = Macro_SyrStruct_1.GetOutPort( 'Gate' )
140 LAddzSuby = GraphMacroNodes.Link( OAddz , ISuby )
142 LAddzMuly = GraphMacroNodes.Link( OAddz , IMuly )
144 LSubzMulx = GraphMacroNodes.Link( OSubz , IMulx )
146 LSubzDivx = GraphMacroNodes.Link( OSubz , IDivx )
148 LMulzDivy = GraphMacroNodes.Link( OMulz , IDivy )
154 IMacro_SyrStructSyrComponent__aContainer.Input( 'FactoryServer' )
155 IMacro_SyrStructSyrComponent__aComponent.Input( 'SyrComponent' )
156 IMacro_SyrStructforN__N.Input( 0 )
157 IMacro_SyrStructforN__K.Input( 0 )
158 IMacro_SyrStructforN__min.Input( 5 )
159 IMacro_SyrStructforN__max.Input( 9 )
160 IMacro_SyrStructfori__i.Input( 0 )
161 IMacro_SyrStruct_1SyrComponent__aContainer.Input( 'FactoryServer' )
162 IMacro_SyrStruct_1SyrComponent__aComponent.Input( 'SyrComponent' )
163 IMacro_SyrStruct_1forN__N.Input( 0 )
164 IMacro_SyrStruct_1forN__K.Input( 0 )
165 IMacro_SyrStruct_1forN__min.Input( 5 )
166 IMacro_SyrStruct_1forN__max.Input( 9 )
167 IMacro_SyrStruct_1fori__i.Input( 0 )
169 # Output Ports of the graph
170 #OAddFuncValue = Add.GetOutPort( 'FuncValue' )
171 #ODivz = Div.GetOutPort( 'z' )
172 #OMacro_SyrStructEndOfforN__N = Macro_SyrStruct.GetOutPort( 'EndOfforN__N' )
173 #OMacro_SyrStructEndOfforN__K = Macro_SyrStruct.GetOutPort( 'EndOfforN__K' )
174 #OMacro_SyrStructEndOfforN__SyrComponent = Macro_SyrStruct.GetOutPort( 'EndOfforN__SyrComponent' )
175 #OMacro_SyrStructEndOfforN__min = Macro_SyrStruct.GetOutPort( 'EndOfforN__min' )
176 #OMacro_SyrStructEndOfforN__max = Macro_SyrStruct.GetOutPort( 'EndOfforN__max' )
177 #OMacro_SyrStructEndOfwhileNotOne__SyrComponent = Macro_SyrStruct.GetOutPort( 'EndOfwhileNotOne__SyrComponent' )
178 #OMacro_SyrStructEndOfwhileNotOne__N = Macro_SyrStruct.GetOutPort( 'EndOfwhileNotOne__N' )
179 #OMacro_SyrStructEndOffori__i = Macro_SyrStruct.GetOutPort( 'EndOffori__i' )
180 #OMacro_SyrStructEndOfwhileEven__SyrComponent = Macro_SyrStruct.GetOutPort( 'EndOfwhileEven__SyrComponent' )
181 #OMacro_SyrStruct_1EndOfforN__N = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__N' )
182 #OMacro_SyrStruct_1EndOfforN__K = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__K' )
183 #OMacro_SyrStruct_1EndOfforN__SyrComponent = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__SyrComponent' )
184 #OMacro_SyrStruct_1EndOfforN__min = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__min' )
185 #OMacro_SyrStruct_1EndOfforN__max = Macro_SyrStruct_1.GetOutPort( 'EndOfforN__max' )
186 #OMacro_SyrStruct_1EndOfwhileNotOne__SyrComponent = Macro_SyrStruct_1.GetOutPort( 'EndOfwhileNotOne__SyrComponent' )
187 #OMacro_SyrStruct_1EndOfwhileNotOne__N = Macro_SyrStruct_1.GetOutPort( 'EndOfwhileNotOne__N' )
188 #OMacro_SyrStruct_1EndOffori__i = Macro_SyrStruct_1.GetOutPort( 'EndOffori__i' )
189 #OMacro_SyrStruct_1EndOfwhileEven__SyrComponent = Macro_SyrStruct_1.GetOutPort( 'EndOfwhileEven__SyrComponent' )
190 return GraphMacroNodes
192 # Graph creation of SyrStruct_1
193 def DefSyrStruct_1() :
194 SyrStruct_1 = Graph( 'SyrStruct_1' )
195 SyrStruct_1.SetCoupled( 'Macro_SyrStruct' )
196 SyrStruct_1.SetName( 'SyrStruct_1' )
197 SyrStruct_1.SetAuthor( 'JR' )
198 SyrStruct_1.SetComment( 'Syracuse algorithm' )
199 SyrStruct_1.Coords( 0 , 0 )
201 # Creation of Factory Nodes
203 m3 = SyrStruct_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_M3' )
206 m3.SetContainer( 'localhost/FactoryServer' )
207 m3.SetComment( 'C_M3 from SyrComponent' )
208 m3.Coords( 672 , 28 )
209 Im3anOddInteger = m3.GetInPort( 'anOddInteger' )
210 Im3Gate = m3.GetInPort( 'Gate' )
211 Om3anInteger = m3.GetOutPort( 'anInteger' )
212 Om3Gate = m3.GetOutPort( 'Gate' )
214 m3incr = SyrStruct_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_INCR' )
215 m3incr.SetName( 'm3incr' )
216 m3incr.SetAuthor( '' )
217 m3incr.SetContainer( 'localhost/FactoryServer' )
218 m3incr.SetComment( 'C_INCR from SyrComponent' )
219 m3incr.Coords( 898 , 29 )
220 Im3incraCount = m3incr.GetInPort( 'aCount' )
221 Im3incrGate = m3incr.GetInPort( 'Gate' )
222 Om3incraNewCount = m3incr.GetOutPort( 'aNewCount' )
223 Om3incrGate = m3incr.GetOutPort( 'Gate' )
225 incra = SyrStruct_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_INCR' )
226 incra.SetName( 'incra' )
227 incra.SetAuthor( '' )
228 incra.SetContainer( 'localhost/FactoryServer' )
229 incra.SetComment( 'C_INCR from SyrComponent' )
230 incra.Coords( 803 , 195 )
231 IincraaCount = incra.GetInPort( 'aCount' )
232 IincraGate = incra.GetInPort( 'Gate' )
233 OincraaNewCount = incra.GetOutPort( 'aNewCount' )
234 OincraGate = incra.GetOutPort( 'Gate' )
236 div2 = SyrStruct_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_DIV2' )
237 div2.SetName( 'div2' )
239 div2.SetContainer( 'localhost/FactoryServer' )
240 div2.SetComment( 'C_DIV2 from SyrComponent' )
241 div2.Coords( 810 , 435 )
242 Idiv2anEvenInteger = div2.GetInPort( 'anEvenInteger' )
243 Idiv2Gate = div2.GetInPort( 'Gate' )
244 Odiv2anInteger = div2.GetOutPort( 'anInteger' )
245 Odiv2Gate = div2.GetOutPort( 'Gate' )
247 incrb = SyrStruct_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_INCR' )
248 incrb.SetName( 'incrb' )
249 incrb.SetAuthor( '' )
250 incrb.SetContainer( 'localhost/FactoryServer' )
251 incrb.SetComment( 'C_INCR from SyrComponent' )
252 incrb.Coords( 809 , 574 )
253 IincrbaCount = incrb.GetInPort( 'aCount' )
254 IincrbGate = incrb.GetInPort( 'Gate' )
255 OincrbaNewCount = incrb.GetOutPort( 'aNewCount' )
256 OincrbGate = incrb.GetOutPort( 'Gate' )
258 # Creation of InLine Nodes
260 PySyrComponent.append( 'from LifeCycleCORBA import * ' )
261 PySyrComponent.append( 'def SyrComponent( aContainer , aComponent ) : ' )
262 PySyrComponent.append( ' orb = CORBA.ORB_init([], CORBA.ORB_ID) ' )
263 PySyrComponent.append( ' lcc = LifeCycleCORBA(orb) ' )
264 PySyrComponent.append( ' ComponentRef = lcc.FindOrLoadComponent( aContainer , aComponent ) ' )
265 PySyrComponent.append( ' return ComponentRef ' )
266 SyrComponent = SyrStruct_1.INode( 'SyrComponent' , PySyrComponent )
267 SyrComponent.SetName( 'SyrComponent' )
268 SyrComponent.SetAuthor( '' )
269 SyrComponent.SetComment( 'SyrComponent( aContainer , aComponent )' )
270 SyrComponent.Coords( 0 , 0 )
271 ISyrComponentaContainer = SyrComponent.InPort( 'aContainer' , 'string' )
272 ISyrComponentaComponent = SyrComponent.InPort( 'aComponent' , 'string' )
273 ISyrComponentGate = SyrComponent.GetInPort( 'Gate' )
274 OSyrComponentSyrComponentobjref = SyrComponent.OutPort( 'SyrComponentobjref' , 'objref' )
275 OSyrComponentGate = SyrComponent.GetOutPort( 'Gate' )
277 # Creation of Loop Nodes
279 PyforN.append( 'def InitN( NN , K , SyrComponent , min , max ) : ' )
280 PyforN.append( ' N = max ' )
281 PyforN.append( ' if min > 0 : ' )
282 PyforN.append( ' if max >= min : ' )
283 PyforN.append( ' N = min ' )
284 PyforN.append( ' return N,K,SyrComponent,min,max ' )
286 PyMoreforN.append( 'def MoreN( NN , KK , SyrComponent , min , max ) : ' )
287 PyMoreforN.append( ' N = NN ' )
288 PyMoreforN.append( ' OutLoop = 0 ' )
289 PyMoreforN.append( ' if max > NN : ' )
290 PyMoreforN.append( ' OutLoop = 1 ' )
291 PyMoreforN.append( ' return OutLoop,N,0,SyrComponent,min,max ' )
293 PyNextforN.append( 'def NextN( NN , KK , SyrComponent , min , max ) : ' )
294 PyNextforN.append( ' N = NN + 1 ' )
295 PyNextforN.append( ' K = KK ' )
296 PyNextforN.append( ' return N,K,SyrComponent,min,max ' )
297 forN,EndOfforN = SyrStruct_1.LNode( 'InitN' , PyforN , 'MoreN' , PyMoreforN , 'NextN' , PyNextforN )
298 EndOfforN.SetName( 'EndOfforN' )
299 EndOfforN.SetAuthor( '' )
300 EndOfforN.SetComment( '' )
301 EndOfforN.Coords( 1535 , 332 )
303 EndOfforN.SetPyFunction( '' , PyEndOfforN )
304 IforNDoLoop = forN.GetInPort( 'DoLoop' )
305 IforNN = forN.InPort( 'N' , 'long' )
306 IforNK = forN.InPort( 'K' , 'long' )
307 IforNSyrComponent = forN.InPort( 'SyrComponent' , 'objref' )
308 IforNmin = forN.InPort( 'min' , 'long' )
309 IforNmax = forN.InPort( 'max' , 'long' )
310 IforNGate = forN.GetInPort( 'Gate' )
311 OforNDoLoop = forN.GetOutPort( 'DoLoop' )
312 OforNN = forN.GetOutPort( 'N' )
313 OforNK = forN.GetOutPort( 'K' )
314 OforNSyrComponent = forN.GetOutPort( 'SyrComponent' )
315 OforNmin = forN.GetOutPort( 'min' )
316 OforNmax = forN.GetOutPort( 'max' )
317 IEndOfforNDoLoop = EndOfforN.GetInPort( 'DoLoop' )
318 IEndOfforNN = EndOfforN.GetInPort( 'N' )
319 IEndOfforNK = EndOfforN.GetInPort( 'K' )
320 IEndOfforNSyrComponent = EndOfforN.GetInPort( 'SyrComponent' )
321 IEndOfforNmin = EndOfforN.GetInPort( 'min' )
322 IEndOfforNmax = EndOfforN.GetInPort( 'max' )
323 IEndOfforNGate = EndOfforN.GetInPort( 'Gate' )
324 OEndOfforNDoLoop = EndOfforN.GetOutPort( 'DoLoop' )
325 OEndOfforNN = EndOfforN.GetOutPort( 'N' )
326 OEndOfforNK = EndOfforN.GetOutPort( 'K' )
327 OEndOfforNSyrComponent = EndOfforN.GetOutPort( 'SyrComponent' )
328 OEndOfforNmin = EndOfforN.GetOutPort( 'min' )
329 OEndOfforNmax = EndOfforN.GetOutPort( 'max' )
330 OEndOfforNGate = EndOfforN.GetOutPort( 'Gate' )
331 forN.SetName( 'forN' )
333 forN.SetComment( 'InitN , MoreN , NextN' )
334 forN.Coords( 20 , 302 )
337 PywhileNotOne.append( 'import threading' )
338 PywhileNotOne.append( 'import SyrComponent_idl' )
339 PywhileNotOne.append( 'def InitNotOne( SyrComponent , N , K ) :' )
340 PywhileNotOne.append( ' return SyrComponent,N,K' )
341 PyMorewhileNotOne = []
342 PyMorewhileNotOne.append( 'import SyrComponent_idl' )
343 PyMorewhileNotOne.append( 'def MoreNotOne( SyrComponent , N , K ) :' )
344 PyMorewhileNotOne.append( ' OutLoop = 1 - SyrComponent.C_ISONE( N )' )
345 PyMorewhileNotOne.append( ' return OutLoop,SyrComponent,N,K ' )
346 PyNextwhileNotOne = []
347 PyNextwhileNotOne.append( 'import SyrComponent_idl' )
348 PyNextwhileNotOne.append( 'def NextNotOne( SyrComponent , N , K ) :' )
349 PyNextwhileNotOne.append( ' return SyrComponent,N,K' )
350 whileNotOne,EndOfwhileNotOne = SyrStruct_1.LNode( 'InitNotOne' , PywhileNotOne , 'MoreNotOne' , PyMorewhileNotOne , 'NextNotOne' , PyNextwhileNotOne )
351 EndOfwhileNotOne.SetName( 'EndOfwhileNotOne' )
352 EndOfwhileNotOne.SetAuthor( '' )
353 EndOfwhileNotOne.SetComment( '' )
354 EndOfwhileNotOne.Coords( 1366 , 303 )
355 PyEndOfwhileNotOne = []
356 EndOfwhileNotOne.SetPyFunction( '' , PyEndOfwhileNotOne )
357 IwhileNotOneDoLoop = whileNotOne.GetInPort( 'DoLoop' )
358 IwhileNotOneSyrComponent = whileNotOne.InPort( 'SyrComponent' , 'objref' )
359 IwhileNotOneN = whileNotOne.InPort( 'N' , 'long' )
360 IwhileNotOneK = whileNotOne.InPort( 'K' , 'long' )
361 IwhileNotOneGate = whileNotOne.GetInPort( 'Gate' )
362 OwhileNotOneDoLoop = whileNotOne.GetOutPort( 'DoLoop' )
363 OwhileNotOneSyrComponent = whileNotOne.GetOutPort( 'SyrComponent' )
364 OwhileNotOneN = whileNotOne.GetOutPort( 'N' )
365 OwhileNotOneK = whileNotOne.GetOutPort( 'K' )
366 IEndOfwhileNotOneDoLoop = EndOfwhileNotOne.GetInPort( 'DoLoop' )
367 IEndOfwhileNotOneSyrComponent = EndOfwhileNotOne.GetInPort( 'SyrComponent' )
368 IEndOfwhileNotOneN = EndOfwhileNotOne.GetInPort( 'N' )
369 IEndOfwhileNotOneK = EndOfwhileNotOne.GetInPort( 'K' )
370 IEndOfwhileNotOneGate = EndOfwhileNotOne.GetInPort( 'Gate' )
371 OEndOfwhileNotOneDoLoop = EndOfwhileNotOne.GetOutPort( 'DoLoop' )
372 OEndOfwhileNotOneSyrComponent = EndOfwhileNotOne.GetOutPort( 'SyrComponent' )
373 OEndOfwhileNotOneN = EndOfwhileNotOne.GetOutPort( 'N' )
374 OEndOfwhileNotOneK = EndOfwhileNotOne.GetOutPort( 'K' )
375 OEndOfwhileNotOneGate = EndOfwhileNotOne.GetOutPort( 'Gate' )
376 whileNotOne.SetName( 'whileNotOne' )
377 whileNotOne.SetAuthor( '' )
378 whileNotOne.SetComment( 'InitNotOne , MoreNotOne , NextNotOne' )
379 whileNotOne.Coords( 212 , 274 )
382 Pyfori.append( 'def Initfori( ii , K ) :' )
383 Pyfori.append( ' return 1,0,K' )
385 PyMorefori.append( 'def Morefori( ii , K ) :' )
386 PyMorefori.append( ' OutLoop = 0' )
387 PyMorefori.append( ' if 2 > ii :' )
388 PyMorefori.append( ' OutLoop = 1' )
389 PyMorefori.append( ' return OutLoop,ii,K' )
391 PyNextfori.append( 'def Nextfori( ii , K ) :' )
392 PyNextfori.append( ' ii = ii + 1' )
393 PyNextfori.append( ' return ii,K' )
394 fori,EndOffori = SyrStruct_1.LNode( 'Initfori' , Pyfori , 'Morefori' , PyMorefori , 'Nextfori' , PyNextfori )
395 EndOffori.SetName( 'EndOffori' )
396 EndOffori.SetAuthor( '' )
397 EndOffori.SetComment( '' )
398 EndOffori.Coords( 976 , 212 )
400 EndOffori.SetPyFunction( '' , PyEndOffori )
401 IforiDoLoop = fori.GetInPort( 'DoLoop' )
402 Iforii = fori.InPort( 'i' , 'long' )
403 IforiK = fori.InPort( 'K' , 'long' )
404 IforiGate = fori.GetInPort( 'Gate' )
405 OforiDoLoop = fori.GetOutPort( 'DoLoop' )
406 Oforii = fori.GetOutPort( 'i' )
407 OforiK = fori.GetOutPort( 'K' )
408 IEndOfforiDoLoop = EndOffori.GetInPort( 'DoLoop' )
409 IEndOfforii = EndOffori.GetInPort( 'i' )
410 IEndOfforiK = EndOffori.GetInPort( 'K' )
411 IEndOfforiGate = EndOffori.GetInPort( 'Gate' )
412 OEndOfforiDoLoop = EndOffori.GetOutPort( 'DoLoop' )
413 OEndOfforii = EndOffori.GetOutPort( 'i' )
414 OEndOfforiK = EndOffori.GetOutPort( 'K' )
415 OEndOfforiGate = EndOffori.GetOutPort( 'Gate' )
416 fori.SetName( 'fori' )
418 fori.SetComment( 'Initfori, Morefori, Nextfori' )
419 fori.Coords( 635 , 212 )
422 PywhileEven.append( 'import SyrComponent_idl' )
423 PywhileEven.append( 'def InitEven( SyrComponent , N , K ) :' )
424 PywhileEven.append( ' return SyrComponent,N,K' )
426 PyMorewhileEven.append( 'import SyrComponent_idl' )
427 PyMorewhileEven.append( 'def MoreEven( SyrComponent , N , K ) :' )
428 PyMorewhileEven.append( ' OutLoop = SyrComponent.C_ISEVEN( N )' )
429 PyMorewhileEven.append( ' return OutLoop,SyrComponent,N,K ' )
431 PyNextwhileEven.append( 'import SyrComponent_idl' )
432 PyNextwhileEven.append( 'def NextEven( SyrComponent , N , K ) :' )
433 PyNextwhileEven.append( ' return SyrComponent,N,K' )
434 whileEven,EndOfwhileEven = SyrStruct_1.LNode( 'InitEven' , PywhileEven , 'MoreEven' , PyMorewhileEven , 'NextEven' , PyNextwhileEven )
435 EndOfwhileEven.SetName( 'EndOfwhileEven' )
436 EndOfwhileEven.SetAuthor( '' )
437 EndOfwhileEven.SetComment( '' )
438 EndOfwhileEven.Coords( 988 , 451 )
439 PyEndOfwhileEven = []
440 EndOfwhileEven.SetPyFunction( '' , PyEndOfwhileEven )
441 IwhileEvenDoLoop = whileEven.GetInPort( 'DoLoop' )
442 IwhileEvenSyrComponent = whileEven.InPort( 'SyrComponent' , 'objref' )
443 IwhileEvenN = whileEven.InPort( 'N' , 'long' )
444 IwhileEvenK = whileEven.InPort( 'K' , 'long' )
445 IwhileEvenGate = whileEven.GetInPort( 'Gate' )
446 OwhileEvenDoLoop = whileEven.GetOutPort( 'DoLoop' )
447 OwhileEvenSyrComponent = whileEven.GetOutPort( 'SyrComponent' )
448 OwhileEvenN = whileEven.GetOutPort( 'N' )
449 OwhileEvenK = whileEven.GetOutPort( 'K' )
450 IEndOfwhileEvenDoLoop = EndOfwhileEven.GetInPort( 'DoLoop' )
451 IEndOfwhileEvenSyrComponent = EndOfwhileEven.GetInPort( 'SyrComponent' )
452 IEndOfwhileEvenN = EndOfwhileEven.GetInPort( 'N' )
453 IEndOfwhileEvenK = EndOfwhileEven.GetInPort( 'K' )
454 IEndOfwhileEvenGate = EndOfwhileEven.GetInPort( 'Gate' )
455 OEndOfwhileEvenDoLoop = EndOfwhileEven.GetOutPort( 'DoLoop' )
456 OEndOfwhileEvenSyrComponent = EndOfwhileEven.GetOutPort( 'SyrComponent' )
457 OEndOfwhileEvenN = EndOfwhileEven.GetOutPort( 'N' )
458 OEndOfwhileEvenK = EndOfwhileEven.GetOutPort( 'K' )
459 OEndOfwhileEvenGate = EndOfwhileEven.GetOutPort( 'Gate' )
460 whileEven.SetName( 'whileEven' )
461 whileEven.SetAuthor( '' )
462 whileEven.SetComment( 'InitEven, MoreEven, NextEven' )
463 whileEven.Coords( 632 , 451 )
465 # Creation of Switch Nodes
467 PyifNotEven.append( 'import SyrComponent_idl' )
468 PyifNotEven.append( 'def ifNotEven( SyrComponent , N , K ) :' )
469 PyifNotEven.append( ' Even = SyrComponent.C_ISEVEN( N )' )
470 PyifNotEven.append( ' Odd = 1 - Even' )
471 PyifNotEven.append( ' return Odd,Even,SyrComponent,N,K' )
472 ifNotEven,EndOfifNotEven = SyrStruct_1.SNode( 'ifNotEven' , PyifNotEven )
473 EndOfifNotEven.SetName( 'EndOfifNotEven' )
474 EndOfifNotEven.SetAuthor( '' )
475 EndOfifNotEven.SetComment( '' )
476 EndOfifNotEven.Coords( 1205 , 331 )
477 PyEndOfifNotEven = []
478 EndOfifNotEven.SetPyFunction( '' , PyEndOfifNotEven )
479 IEndOfifNotEvenN = EndOfifNotEven.InPort( 'N' , 'long' )
480 IEndOfifNotEvenK = EndOfifNotEven.InPort( 'K' , 'long' )
481 IEndOfifNotEvenDefault = EndOfifNotEven.GetInPort( 'Default' )
482 OEndOfifNotEvenN = EndOfifNotEven.OutPort( 'N' , 'long' )
483 OEndOfifNotEvenK = EndOfifNotEven.OutPort( 'K' , 'long' )
484 OEndOfifNotEvenGate = EndOfifNotEven.GetOutPort( 'Gate' )
485 ifNotEven.SetName( 'ifNotEven' )
486 ifNotEven.SetAuthor( '' )
487 ifNotEven.SetComment( 'ifNotEven' )
488 ifNotEven.Coords( 418 , 274 )
489 IifNotEvenSyrComponent = ifNotEven.InPort( 'SyrComponent' , 'objref' )
490 IifNotEvenN = ifNotEven.InPort( 'N' , 'long' )
491 IifNotEvenK = ifNotEven.InPort( 'K' , 'long' )
492 IifNotEvenGate = ifNotEven.GetInPort( 'Gate' )
493 OifNotEvenOdd = ifNotEven.OutPort( 'Odd' , 'long' )
494 OifNotEvenEven = ifNotEven.OutPort( 'Even' , 'long' )
495 OifNotEvenSyrComponent = ifNotEven.OutPort( 'SyrComponent' , 'objref' )
496 OifNotEvenN = ifNotEven.OutPort( 'N' , 'long' )
497 OifNotEvenK = ifNotEven.OutPort( 'K' , 'long' )
498 OifNotEvenDefault = ifNotEven.GetOutPort( 'Default' )
501 Lm3anIntegerm3incraCount = SyrStruct_1.Link( Om3anInteger , Im3incraCount )
503 Lm3incraNewCountEndOfifNotEvenN = SyrStruct_1.Link( Om3incraNewCount , IEndOfifNotEvenN )
504 Lm3incraNewCountEndOfifNotEvenN.AddCoord( 1 , 1190 , 366 )
505 Lm3incraNewCountEndOfifNotEvenN.AddCoord( 2 , 1191 , 109 )
507 LincraaNewCountEndOfforiK = SyrStruct_1.Link( OincraaNewCount , IEndOfforiK )
509 Ldiv2anIntegerEndOfwhileEvenN = SyrStruct_1.Link( Odiv2anInteger , IEndOfwhileEvenN )
511 LincrbaNewCountEndOfwhileEvenK = SyrStruct_1.Link( OincrbaNewCount , IEndOfwhileEvenK )
512 LincrbaNewCountEndOfwhileEvenK.AddCoord( 1 , 988 , 543 )
513 LincrbaNewCountEndOfwhileEvenK.AddCoord( 2 , 988 , 654 )
515 LSyrComponentSyrComponentobjrefforNSyrComponent = SyrStruct_1.Link( OSyrComponentSyrComponentobjref , IforNSyrComponent )
516 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 1 , 13 , 394 )
517 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 2 , 12 , 181 )
518 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 3 , 196 , 181 )
519 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 4 , 197 , 81 )
521 LforNNwhileNotOneN = SyrStruct_1.Link( OforNN , IwhileNotOneN )
523 LforNNEndOfforNN = SyrStruct_1.Link( OforNN , IEndOfforNN )
525 LforNKwhileNotOneK = SyrStruct_1.Link( OforNK , IwhileNotOneK )
527 LforNSyrComponentEndOfforNSyrComponent = SyrStruct_1.Link( OforNSyrComponent , IEndOfforNSyrComponent )
529 LforNSyrComponentwhileNotOneSyrComponent = SyrStruct_1.Link( OforNSyrComponent , IwhileNotOneSyrComponent )
530 LforNSyrComponentwhileNotOneSyrComponent.AddCoord( 1 , 192 , 309 )
531 LforNSyrComponentwhileNotOneSyrComponent.AddCoord( 2 , 191 , 394 )
533 LforNminEndOfforNmin = SyrStruct_1.Link( OforNmin , IEndOfforNmin )
535 LforNmaxEndOfforNmax = SyrStruct_1.Link( OforNmax , IEndOfforNmax )
537 LwhileNotOneSyrComponentEndOfwhileNotOneSyrComponent = SyrStruct_1.Link( OwhileNotOneSyrComponent , IEndOfwhileNotOneSyrComponent )
539 LwhileNotOneSyrComponentifNotEvenSyrComponent = SyrStruct_1.Link( OwhileNotOneSyrComponent , IifNotEvenSyrComponent )
541 LwhileNotOneNifNotEvenN = SyrStruct_1.Link( OwhileNotOneN , IifNotEvenN )
543 LwhileNotOneKifNotEvenK = SyrStruct_1.Link( OwhileNotOneK , IifNotEvenK )
545 LEndOfwhileNotOneKEndOfforNK = SyrStruct_1.Link( OEndOfwhileNotOneK , IEndOfforNK )
547 LforiiEndOfforii = SyrStruct_1.Link( Oforii , IEndOfforii )
549 LforiKincraaCount = SyrStruct_1.Link( OforiK , IincraaCount )
551 LEndOfforiKEndOfifNotEvenK = SyrStruct_1.Link( OEndOfforiK , IEndOfifNotEvenK )
552 LEndOfforiKEndOfifNotEvenK.AddCoord( 1 , 1170 , 396 )
553 LEndOfforiKEndOfifNotEvenK.AddCoord( 2 , 1169 , 275 )
555 LwhileEvenSyrComponentEndOfwhileEvenSyrComponent = SyrStruct_1.Link( OwhileEvenSyrComponent , IEndOfwhileEvenSyrComponent )
557 LwhileEvenNdiv2anEvenInteger = SyrStruct_1.Link( OwhileEvenN , Idiv2anEvenInteger )
559 LwhileEvenKincrbaCount = SyrStruct_1.Link( OwhileEvenK , IincrbaCount )
560 LwhileEvenKincrbaCount.AddCoord( 1 , 796 , 655 )
561 LwhileEvenKincrbaCount.AddCoord( 2 , 795 , 543 )
563 LEndOfwhileEvenNEndOfifNotEvenN = SyrStruct_1.Link( OEndOfwhileEvenN , IEndOfifNotEvenN )
564 LEndOfwhileEvenNEndOfifNotEvenN.AddCoord( 1 , 1191 , 366 )
565 LEndOfwhileEvenNEndOfifNotEvenN.AddCoord( 2 , 1191 , 513 )
567 LEndOfwhileEvenKEndOfifNotEvenK = SyrStruct_1.Link( OEndOfwhileEvenK , IEndOfifNotEvenK )
568 LEndOfwhileEvenKEndOfifNotEvenK.AddCoord( 1 , 1169 , 395 )
569 LEndOfwhileEvenKEndOfifNotEvenK.AddCoord( 2 , 1170 , 543 )
571 LifNotEvenOddm3Gate = SyrStruct_1.Link( OifNotEvenOdd , Im3Gate )
572 LifNotEvenOddm3Gate.AddCoord( 1 , 593 , 141 )
573 LifNotEvenOddm3Gate.AddCoord( 2 , 593 , 307 )
575 LifNotEvenOddforiGate = SyrStruct_1.Link( OifNotEvenOdd , IforiGate )
577 LifNotEvenEvenwhileEvenGate = SyrStruct_1.Link( OifNotEvenEven , IwhileEvenGate )
578 LifNotEvenEvenwhileEvenGate.AddCoord( 1 , 593 , 576 )
579 LifNotEvenEvenwhileEvenGate.AddCoord( 2 , 592 , 339 )
581 LifNotEvenSyrComponentwhileEvenSyrComponent = SyrStruct_1.Link( OifNotEvenSyrComponent , IwhileEvenSyrComponent )
582 LifNotEvenSyrComponentwhileEvenSyrComponent.AddCoord( 1 , 586 , 486 )
583 LifNotEvenSyrComponentwhileEvenSyrComponent.AddCoord( 2 , 587 , 367 )
585 LifNotEvenNwhileEvenN = SyrStruct_1.Link( OifNotEvenN , IwhileEvenN )
586 LifNotEvenNwhileEvenN.AddCoord( 1 , 604 , 513 )
587 LifNotEvenNwhileEvenN.AddCoord( 2 , 603 , 397 )
589 LifNotEvenNm3anOddInteger = SyrStruct_1.Link( OifNotEvenN , Im3anOddInteger )
590 LifNotEvenNm3anOddInteger.AddCoord( 1 , 604 , 107 )
591 LifNotEvenNm3anOddInteger.AddCoord( 2 , 604 , 395 )
593 LifNotEvenKwhileEvenK = SyrStruct_1.Link( OifNotEvenK , IwhileEvenK )
594 LifNotEvenKwhileEvenK.AddCoord( 1 , 621 , 544 )
595 LifNotEvenKwhileEvenK.AddCoord( 2 , 622 , 426 )
597 LifNotEvenKforiK = SyrStruct_1.Link( OifNotEvenK , IforiK )
598 LifNotEvenKforiK.AddCoord( 1 , 622 , 275 )
599 LifNotEvenKforiK.AddCoord( 2 , 622 , 426 )
601 LifNotEvenDefaultEndOfifNotEvenDefault = SyrStruct_1.Link( OifNotEvenDefault , IEndOfifNotEvenDefault )
602 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 1 , 1204 , 429 )
603 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 2 , 1203 , 12 )
604 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 3 , 581 , 13 )
605 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 4 , 581 , 458 )
607 LEndOfifNotEvenNEndOfwhileNotOneN = SyrStruct_1.Link( OEndOfifNotEvenN , IEndOfwhileNotOneN )
609 LEndOfifNotEvenKEndOfwhileNotOneK = SyrStruct_1.Link( OEndOfifNotEvenK , IEndOfwhileNotOneK )
611 # Input Ports of the graph
612 #ISyrComponentaContainer = SyrComponent.GetInPort( 'aContainer' )
613 #ISyrComponentaComponent = SyrComponent.GetInPort( 'aComponent' )
614 #IforNN = forN.GetInPort( 'N' )
615 #IforNK = forN.GetInPort( 'K' )
616 #IforNmin = forN.GetInPort( 'min' )
617 #IforNmax = forN.GetInPort( 'max' )
618 #Iforii = fori.GetInPort( 'i' )
620 # Output Ports of the graph
621 #OEndOfforNN = EndOfforN.GetOutPort( 'N' )
622 #OEndOfforNK = EndOfforN.GetOutPort( 'K' )
623 #OEndOfforNSyrComponent = EndOfforN.GetOutPort( 'SyrComponent' )
624 #OEndOfforNmin = EndOfforN.GetOutPort( 'min' )
625 #OEndOfforNmax = EndOfforN.GetOutPort( 'max' )
626 #OEndOfwhileNotOneSyrComponent = EndOfwhileNotOne.GetOutPort( 'SyrComponent' )
627 #OEndOfwhileNotOneN = EndOfwhileNotOne.GetOutPort( 'N' )
628 #OEndOfforii = EndOffori.GetOutPort( 'i' )
629 #OEndOfwhileEvenSyrComponent = EndOfwhileEven.GetOutPort( 'SyrComponent' )
632 # Graph creation of SyrStruct_1_1
633 def DefSyrStruct_1_1() :
634 SyrStruct_1_1 = Graph( 'SyrStruct_1_1' )
635 SyrStruct_1_1.SetCoupled( 'Macro_SyrStruct_1' )
636 SyrStruct_1_1.SetName( 'SyrStruct_1_1' )
637 SyrStruct_1_1.SetAuthor( 'JR' )
638 SyrStruct_1_1.SetComment( 'Syracuse algorithm' )
639 SyrStruct_1_1.Coords( 0 , 0 )
641 # Creation of Factory Nodes
643 m3 = SyrStruct_1_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_M3' )
646 m3.SetContainer( 'localhost/FactoryServer' )
647 m3.SetComment( 'C_M3 from SyrComponent' )
648 m3.Coords( 672 , 28 )
649 Im3anOddInteger = m3.GetInPort( 'anOddInteger' )
650 Im3Gate = m3.GetInPort( 'Gate' )
651 Om3anInteger = m3.GetOutPort( 'anInteger' )
652 Om3Gate = m3.GetOutPort( 'Gate' )
654 m3incr = SyrStruct_1_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_INCR' )
655 m3incr.SetName( 'm3incr' )
656 m3incr.SetAuthor( '' )
657 m3incr.SetContainer( 'localhost/FactoryServer' )
658 m3incr.SetComment( 'C_INCR from SyrComponent' )
659 m3incr.Coords( 898 , 29 )
660 Im3incraCount = m3incr.GetInPort( 'aCount' )
661 Im3incrGate = m3incr.GetInPort( 'Gate' )
662 Om3incraNewCount = m3incr.GetOutPort( 'aNewCount' )
663 Om3incrGate = m3incr.GetOutPort( 'Gate' )
665 incra = SyrStruct_1_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_INCR' )
666 incra.SetName( 'incra' )
667 incra.SetAuthor( '' )
668 incra.SetContainer( 'localhost/FactoryServer' )
669 incra.SetComment( 'C_INCR from SyrComponent' )
670 incra.Coords( 803 , 195 )
671 IincraaCount = incra.GetInPort( 'aCount' )
672 IincraGate = incra.GetInPort( 'Gate' )
673 OincraaNewCount = incra.GetOutPort( 'aNewCount' )
674 OincraGate = incra.GetOutPort( 'Gate' )
676 div2 = SyrStruct_1_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_DIV2' )
677 div2.SetName( 'div2' )
679 div2.SetContainer( 'localhost/FactoryServer' )
680 div2.SetComment( 'C_DIV2 from SyrComponent' )
681 div2.Coords( 810 , 435 )
682 Idiv2anEvenInteger = div2.GetInPort( 'anEvenInteger' )
683 Idiv2Gate = div2.GetInPort( 'Gate' )
684 Odiv2anInteger = div2.GetOutPort( 'anInteger' )
685 Odiv2Gate = div2.GetOutPort( 'Gate' )
687 incrb = SyrStruct_1_1.FNode( 'SyrComponent' , 'SyrComponent' , 'C_INCR' )
688 incrb.SetName( 'incrb' )
689 incrb.SetAuthor( '' )
690 incrb.SetContainer( 'localhost/FactoryServer' )
691 incrb.SetComment( 'C_INCR from SyrComponent' )
692 incrb.Coords( 809 , 574 )
693 IincrbaCount = incrb.GetInPort( 'aCount' )
694 IincrbGate = incrb.GetInPort( 'Gate' )
695 OincrbaNewCount = incrb.GetOutPort( 'aNewCount' )
696 OincrbGate = incrb.GetOutPort( 'Gate' )
698 # Creation of InLine Nodes
700 PySyrComponent.append( 'from LifeCycleCORBA import * ' )
701 PySyrComponent.append( 'def SyrComponent( aContainer , aComponent ) : ' )
702 PySyrComponent.append( ' orb = CORBA.ORB_init([], CORBA.ORB_ID) ' )
703 PySyrComponent.append( ' lcc = LifeCycleCORBA(orb) ' )
704 PySyrComponent.append( ' ComponentRef = lcc.FindOrLoadComponent( aContainer , aComponent ) ' )
705 PySyrComponent.append( ' return ComponentRef ' )
706 SyrComponent = SyrStruct_1_1.INode( 'SyrComponent' , PySyrComponent )
707 SyrComponent.SetName( 'SyrComponent' )
708 SyrComponent.SetAuthor( '' )
709 SyrComponent.SetComment( 'SyrComponent( aContainer , aComponent )' )
710 SyrComponent.Coords( 0 , 0 )
711 ISyrComponentaContainer = SyrComponent.InPort( 'aContainer' , 'string' )
712 ISyrComponentaComponent = SyrComponent.InPort( 'aComponent' , 'string' )
713 ISyrComponentGate = SyrComponent.GetInPort( 'Gate' )
714 OSyrComponentSyrComponentobjref = SyrComponent.OutPort( 'SyrComponentobjref' , 'objref' )
715 OSyrComponentGate = SyrComponent.GetOutPort( 'Gate' )
717 # Creation of Loop Nodes
719 PyforN.append( 'def InitN( NN , K , SyrComponent , min , max ) : ' )
720 PyforN.append( ' N = max ' )
721 PyforN.append( ' if min > 0 : ' )
722 PyforN.append( ' if max >= min : ' )
723 PyforN.append( ' N = min ' )
724 PyforN.append( ' return N,K,SyrComponent,min,max ' )
726 PyMoreforN.append( 'def MoreN( NN , KK , SyrComponent , min , max ) : ' )
727 PyMoreforN.append( ' N = NN ' )
728 PyMoreforN.append( ' OutLoop = 0 ' )
729 PyMoreforN.append( ' if max > NN : ' )
730 PyMoreforN.append( ' OutLoop = 1 ' )
731 PyMoreforN.append( ' return OutLoop,N,0,SyrComponent,min,max ' )
733 PyNextforN.append( 'def NextN( NN , KK , SyrComponent , min , max ) : ' )
734 PyNextforN.append( ' N = NN + 1 ' )
735 PyNextforN.append( ' K = KK ' )
736 PyNextforN.append( ' return N,K,SyrComponent,min,max ' )
737 forN,EndOfforN = SyrStruct_1_1.LNode( 'InitN' , PyforN , 'MoreN' , PyMoreforN , 'NextN' , PyNextforN )
738 EndOfforN.SetName( 'EndOfforN' )
739 EndOfforN.SetAuthor( '' )
740 EndOfforN.SetComment( '' )
741 EndOfforN.Coords( 1535 , 332 )
743 EndOfforN.SetPyFunction( '' , PyEndOfforN )
744 IforNDoLoop = forN.GetInPort( 'DoLoop' )
745 IforNN = forN.InPort( 'N' , 'long' )
746 IforNK = forN.InPort( 'K' , 'long' )
747 IforNSyrComponent = forN.InPort( 'SyrComponent' , 'objref' )
748 IforNmin = forN.InPort( 'min' , 'long' )
749 IforNmax = forN.InPort( 'max' , 'long' )
750 IforNGate = forN.GetInPort( 'Gate' )
751 OforNDoLoop = forN.GetOutPort( 'DoLoop' )
752 OforNN = forN.GetOutPort( 'N' )
753 OforNK = forN.GetOutPort( 'K' )
754 OforNSyrComponent = forN.GetOutPort( 'SyrComponent' )
755 OforNmin = forN.GetOutPort( 'min' )
756 OforNmax = forN.GetOutPort( 'max' )
757 IEndOfforNDoLoop = EndOfforN.GetInPort( 'DoLoop' )
758 IEndOfforNN = EndOfforN.GetInPort( 'N' )
759 IEndOfforNK = EndOfforN.GetInPort( 'K' )
760 IEndOfforNSyrComponent = EndOfforN.GetInPort( 'SyrComponent' )
761 IEndOfforNmin = EndOfforN.GetInPort( 'min' )
762 IEndOfforNmax = EndOfforN.GetInPort( 'max' )
763 IEndOfforNGate = EndOfforN.GetInPort( 'Gate' )
764 OEndOfforNDoLoop = EndOfforN.GetOutPort( 'DoLoop' )
765 OEndOfforNN = EndOfforN.GetOutPort( 'N' )
766 OEndOfforNK = EndOfforN.GetOutPort( 'K' )
767 OEndOfforNSyrComponent = EndOfforN.GetOutPort( 'SyrComponent' )
768 OEndOfforNmin = EndOfforN.GetOutPort( 'min' )
769 OEndOfforNmax = EndOfforN.GetOutPort( 'max' )
770 OEndOfforNGate = EndOfforN.GetOutPort( 'Gate' )
771 forN.SetName( 'forN' )
773 forN.SetComment( 'InitN , MoreN , NextN' )
774 forN.Coords( 20 , 302 )
777 PywhileNotOne.append( 'import threading' )
778 PywhileNotOne.append( 'import SyrComponent_idl' )
779 PywhileNotOne.append( 'def InitNotOne( SyrComponent , N , K ) :' )
780 PywhileNotOne.append( ' return SyrComponent,N,K' )
781 PyMorewhileNotOne = []
782 PyMorewhileNotOne.append( 'import SyrComponent_idl' )
783 PyMorewhileNotOne.append( 'def MoreNotOne( SyrComponent , N , K ) :' )
784 PyMorewhileNotOne.append( ' OutLoop = 1 - SyrComponent.C_ISONE( N )' )
785 PyMorewhileNotOne.append( ' return OutLoop,SyrComponent,N,K ' )
786 PyNextwhileNotOne = []
787 PyNextwhileNotOne.append( 'import SyrComponent_idl' )
788 PyNextwhileNotOne.append( 'def NextNotOne( SyrComponent , N , K ) :' )
789 PyNextwhileNotOne.append( ' return SyrComponent,N,K' )
790 whileNotOne,EndOfwhileNotOne = SyrStruct_1_1.LNode( 'InitNotOne' , PywhileNotOne , 'MoreNotOne' , PyMorewhileNotOne , 'NextNotOne' , PyNextwhileNotOne )
791 EndOfwhileNotOne.SetName( 'EndOfwhileNotOne' )
792 EndOfwhileNotOne.SetAuthor( '' )
793 EndOfwhileNotOne.SetComment( '' )
794 EndOfwhileNotOne.Coords( 1366 , 303 )
795 PyEndOfwhileNotOne = []
796 EndOfwhileNotOne.SetPyFunction( '' , PyEndOfwhileNotOne )
797 IwhileNotOneDoLoop = whileNotOne.GetInPort( 'DoLoop' )
798 IwhileNotOneSyrComponent = whileNotOne.InPort( 'SyrComponent' , 'objref' )
799 IwhileNotOneN = whileNotOne.InPort( 'N' , 'long' )
800 IwhileNotOneK = whileNotOne.InPort( 'K' , 'long' )
801 IwhileNotOneGate = whileNotOne.GetInPort( 'Gate' )
802 OwhileNotOneDoLoop = whileNotOne.GetOutPort( 'DoLoop' )
803 OwhileNotOneSyrComponent = whileNotOne.GetOutPort( 'SyrComponent' )
804 OwhileNotOneN = whileNotOne.GetOutPort( 'N' )
805 OwhileNotOneK = whileNotOne.GetOutPort( 'K' )
806 IEndOfwhileNotOneDoLoop = EndOfwhileNotOne.GetInPort( 'DoLoop' )
807 IEndOfwhileNotOneSyrComponent = EndOfwhileNotOne.GetInPort( 'SyrComponent' )
808 IEndOfwhileNotOneN = EndOfwhileNotOne.GetInPort( 'N' )
809 IEndOfwhileNotOneK = EndOfwhileNotOne.GetInPort( 'K' )
810 IEndOfwhileNotOneGate = EndOfwhileNotOne.GetInPort( 'Gate' )
811 OEndOfwhileNotOneDoLoop = EndOfwhileNotOne.GetOutPort( 'DoLoop' )
812 OEndOfwhileNotOneSyrComponent = EndOfwhileNotOne.GetOutPort( 'SyrComponent' )
813 OEndOfwhileNotOneN = EndOfwhileNotOne.GetOutPort( 'N' )
814 OEndOfwhileNotOneK = EndOfwhileNotOne.GetOutPort( 'K' )
815 OEndOfwhileNotOneGate = EndOfwhileNotOne.GetOutPort( 'Gate' )
816 whileNotOne.SetName( 'whileNotOne' )
817 whileNotOne.SetAuthor( '' )
818 whileNotOne.SetComment( 'InitNotOne , MoreNotOne , NextNotOne' )
819 whileNotOne.Coords( 212 , 274 )
822 Pyfori.append( 'def Initfori( ii , K ) :' )
823 Pyfori.append( ' return 1,0,K' )
825 PyMorefori.append( 'def Morefori( ii , K ) :' )
826 PyMorefori.append( ' OutLoop = 0' )
827 PyMorefori.append( ' if 2 > ii :' )
828 PyMorefori.append( ' OutLoop = 1' )
829 PyMorefori.append( ' return OutLoop,ii,K' )
831 PyNextfori.append( 'def Nextfori( ii , K ) :' )
832 PyNextfori.append( ' ii = ii + 1' )
833 PyNextfori.append( ' return ii,K' )
834 fori,EndOffori = SyrStruct_1_1.LNode( 'Initfori' , Pyfori , 'Morefori' , PyMorefori , 'Nextfori' , PyNextfori )
835 EndOffori.SetName( 'EndOffori' )
836 EndOffori.SetAuthor( '' )
837 EndOffori.SetComment( '' )
838 EndOffori.Coords( 976 , 212 )
840 EndOffori.SetPyFunction( '' , PyEndOffori )
841 IforiDoLoop = fori.GetInPort( 'DoLoop' )
842 Iforii = fori.InPort( 'i' , 'long' )
843 IforiK = fori.InPort( 'K' , 'long' )
844 IforiGate = fori.GetInPort( 'Gate' )
845 OforiDoLoop = fori.GetOutPort( 'DoLoop' )
846 Oforii = fori.GetOutPort( 'i' )
847 OforiK = fori.GetOutPort( 'K' )
848 IEndOfforiDoLoop = EndOffori.GetInPort( 'DoLoop' )
849 IEndOfforii = EndOffori.GetInPort( 'i' )
850 IEndOfforiK = EndOffori.GetInPort( 'K' )
851 IEndOfforiGate = EndOffori.GetInPort( 'Gate' )
852 OEndOfforiDoLoop = EndOffori.GetOutPort( 'DoLoop' )
853 OEndOfforii = EndOffori.GetOutPort( 'i' )
854 OEndOfforiK = EndOffori.GetOutPort( 'K' )
855 OEndOfforiGate = EndOffori.GetOutPort( 'Gate' )
856 fori.SetName( 'fori' )
858 fori.SetComment( 'Initfori, Morefori, Nextfori' )
859 fori.Coords( 635 , 212 )
862 PywhileEven.append( 'import SyrComponent_idl' )
863 PywhileEven.append( 'def InitEven( SyrComponent , N , K ) :' )
864 PywhileEven.append( ' return SyrComponent,N,K' )
866 PyMorewhileEven.append( 'import SyrComponent_idl' )
867 PyMorewhileEven.append( 'def MoreEven( SyrComponent , N , K ) :' )
868 PyMorewhileEven.append( ' OutLoop = SyrComponent.C_ISEVEN( N )' )
869 PyMorewhileEven.append( ' return OutLoop,SyrComponent,N,K ' )
871 PyNextwhileEven.append( 'import SyrComponent_idl' )
872 PyNextwhileEven.append( 'def NextEven( SyrComponent , N , K ) :' )
873 PyNextwhileEven.append( ' return SyrComponent,N,K' )
874 whileEven,EndOfwhileEven = SyrStruct_1_1.LNode( 'InitEven' , PywhileEven , 'MoreEven' , PyMorewhileEven , 'NextEven' , PyNextwhileEven )
875 EndOfwhileEven.SetName( 'EndOfwhileEven' )
876 EndOfwhileEven.SetAuthor( '' )
877 EndOfwhileEven.SetComment( '' )
878 EndOfwhileEven.Coords( 988 , 451 )
879 PyEndOfwhileEven = []
880 EndOfwhileEven.SetPyFunction( '' , PyEndOfwhileEven )
881 IwhileEvenDoLoop = whileEven.GetInPort( 'DoLoop' )
882 IwhileEvenSyrComponent = whileEven.InPort( 'SyrComponent' , 'objref' )
883 IwhileEvenN = whileEven.InPort( 'N' , 'long' )
884 IwhileEvenK = whileEven.InPort( 'K' , 'long' )
885 IwhileEvenGate = whileEven.GetInPort( 'Gate' )
886 OwhileEvenDoLoop = whileEven.GetOutPort( 'DoLoop' )
887 OwhileEvenSyrComponent = whileEven.GetOutPort( 'SyrComponent' )
888 OwhileEvenN = whileEven.GetOutPort( 'N' )
889 OwhileEvenK = whileEven.GetOutPort( 'K' )
890 IEndOfwhileEvenDoLoop = EndOfwhileEven.GetInPort( 'DoLoop' )
891 IEndOfwhileEvenSyrComponent = EndOfwhileEven.GetInPort( 'SyrComponent' )
892 IEndOfwhileEvenN = EndOfwhileEven.GetInPort( 'N' )
893 IEndOfwhileEvenK = EndOfwhileEven.GetInPort( 'K' )
894 IEndOfwhileEvenGate = EndOfwhileEven.GetInPort( 'Gate' )
895 OEndOfwhileEvenDoLoop = EndOfwhileEven.GetOutPort( 'DoLoop' )
896 OEndOfwhileEvenSyrComponent = EndOfwhileEven.GetOutPort( 'SyrComponent' )
897 OEndOfwhileEvenN = EndOfwhileEven.GetOutPort( 'N' )
898 OEndOfwhileEvenK = EndOfwhileEven.GetOutPort( 'K' )
899 OEndOfwhileEvenGate = EndOfwhileEven.GetOutPort( 'Gate' )
900 whileEven.SetName( 'whileEven' )
901 whileEven.SetAuthor( '' )
902 whileEven.SetComment( 'InitEven, MoreEven, NextEven' )
903 whileEven.Coords( 632 , 451 )
905 # Creation of Switch Nodes
907 PyifNotEven.append( 'import SyrComponent_idl' )
908 PyifNotEven.append( 'def ifNotEven( SyrComponent , N , K ) :' )
909 PyifNotEven.append( ' Even = SyrComponent.C_ISEVEN( N )' )
910 PyifNotEven.append( ' Odd = 1 - Even' )
911 PyifNotEven.append( ' return Odd,Even,SyrComponent,N,K' )
912 ifNotEven,EndOfifNotEven = SyrStruct_1_1.SNode( 'ifNotEven' , PyifNotEven )
913 EndOfifNotEven.SetName( 'EndOfifNotEven' )
914 EndOfifNotEven.SetAuthor( '' )
915 EndOfifNotEven.SetComment( '' )
916 EndOfifNotEven.Coords( 1205 , 331 )
917 PyEndOfifNotEven = []
918 EndOfifNotEven.SetPyFunction( '' , PyEndOfifNotEven )
919 IEndOfifNotEvenN = EndOfifNotEven.InPort( 'N' , 'long' )
920 IEndOfifNotEvenK = EndOfifNotEven.InPort( 'K' , 'long' )
921 IEndOfifNotEvenDefault = EndOfifNotEven.GetInPort( 'Default' )
922 OEndOfifNotEvenN = EndOfifNotEven.OutPort( 'N' , 'long' )
923 OEndOfifNotEvenK = EndOfifNotEven.OutPort( 'K' , 'long' )
924 OEndOfifNotEvenGate = EndOfifNotEven.GetOutPort( 'Gate' )
925 ifNotEven.SetName( 'ifNotEven' )
926 ifNotEven.SetAuthor( '' )
927 ifNotEven.SetComment( 'ifNotEven' )
928 ifNotEven.Coords( 418 , 274 )
929 IifNotEvenSyrComponent = ifNotEven.InPort( 'SyrComponent' , 'objref' )
930 IifNotEvenN = ifNotEven.InPort( 'N' , 'long' )
931 IifNotEvenK = ifNotEven.InPort( 'K' , 'long' )
932 IifNotEvenGate = ifNotEven.GetInPort( 'Gate' )
933 OifNotEvenOdd = ifNotEven.OutPort( 'Odd' , 'long' )
934 OifNotEvenEven = ifNotEven.OutPort( 'Even' , 'long' )
935 OifNotEvenSyrComponent = ifNotEven.OutPort( 'SyrComponent' , 'objref' )
936 OifNotEvenN = ifNotEven.OutPort( 'N' , 'long' )
937 OifNotEvenK = ifNotEven.OutPort( 'K' , 'long' )
938 OifNotEvenDefault = ifNotEven.GetOutPort( 'Default' )
941 Lm3anIntegerm3incraCount = SyrStruct_1_1.Link( Om3anInteger , Im3incraCount )
943 Lm3incraNewCountEndOfifNotEvenN = SyrStruct_1_1.Link( Om3incraNewCount , IEndOfifNotEvenN )
944 Lm3incraNewCountEndOfifNotEvenN.AddCoord( 1 , 1190 , 366 )
945 Lm3incraNewCountEndOfifNotEvenN.AddCoord( 2 , 1191 , 109 )
947 LincraaNewCountEndOfforiK = SyrStruct_1_1.Link( OincraaNewCount , IEndOfforiK )
949 Ldiv2anIntegerEndOfwhileEvenN = SyrStruct_1_1.Link( Odiv2anInteger , IEndOfwhileEvenN )
951 LincrbaNewCountEndOfwhileEvenK = SyrStruct_1_1.Link( OincrbaNewCount , IEndOfwhileEvenK )
952 LincrbaNewCountEndOfwhileEvenK.AddCoord( 1 , 988 , 543 )
953 LincrbaNewCountEndOfwhileEvenK.AddCoord( 2 , 988 , 654 )
955 LSyrComponentSyrComponentobjrefforNSyrComponent = SyrStruct_1_1.Link( OSyrComponentSyrComponentobjref , IforNSyrComponent )
956 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 1 , 13 , 394 )
957 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 2 , 12 , 181 )
958 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 3 , 196 , 181 )
959 LSyrComponentSyrComponentobjrefforNSyrComponent.AddCoord( 4 , 197 , 81 )
961 LforNNwhileNotOneN = SyrStruct_1_1.Link( OforNN , IwhileNotOneN )
963 LforNNEndOfforNN = SyrStruct_1_1.Link( OforNN , IEndOfforNN )
965 LforNKwhileNotOneK = SyrStruct_1_1.Link( OforNK , IwhileNotOneK )
967 LforNSyrComponentEndOfforNSyrComponent = SyrStruct_1_1.Link( OforNSyrComponent , IEndOfforNSyrComponent )
969 LforNSyrComponentwhileNotOneSyrComponent = SyrStruct_1_1.Link( OforNSyrComponent , IwhileNotOneSyrComponent )
970 LforNSyrComponentwhileNotOneSyrComponent.AddCoord( 1 , 192 , 309 )
971 LforNSyrComponentwhileNotOneSyrComponent.AddCoord( 2 , 191 , 394 )
973 LforNminEndOfforNmin = SyrStruct_1_1.Link( OforNmin , IEndOfforNmin )
975 LforNmaxEndOfforNmax = SyrStruct_1_1.Link( OforNmax , IEndOfforNmax )
977 LwhileNotOneSyrComponentEndOfwhileNotOneSyrComponent = SyrStruct_1_1.Link( OwhileNotOneSyrComponent , IEndOfwhileNotOneSyrComponent )
979 LwhileNotOneSyrComponentifNotEvenSyrComponent = SyrStruct_1_1.Link( OwhileNotOneSyrComponent , IifNotEvenSyrComponent )
981 LwhileNotOneNifNotEvenN = SyrStruct_1_1.Link( OwhileNotOneN , IifNotEvenN )
983 LwhileNotOneKifNotEvenK = SyrStruct_1_1.Link( OwhileNotOneK , IifNotEvenK )
985 LEndOfwhileNotOneKEndOfforNK = SyrStruct_1_1.Link( OEndOfwhileNotOneK , IEndOfforNK )
987 LforiiEndOfforii = SyrStruct_1_1.Link( Oforii , IEndOfforii )
989 LforiKincraaCount = SyrStruct_1_1.Link( OforiK , IincraaCount )
991 LEndOfforiKEndOfifNotEvenK = SyrStruct_1_1.Link( OEndOfforiK , IEndOfifNotEvenK )
992 LEndOfforiKEndOfifNotEvenK.AddCoord( 1 , 1170 , 396 )
993 LEndOfforiKEndOfifNotEvenK.AddCoord( 2 , 1169 , 275 )
995 LwhileEvenSyrComponentEndOfwhileEvenSyrComponent = SyrStruct_1_1.Link( OwhileEvenSyrComponent , IEndOfwhileEvenSyrComponent )
997 LwhileEvenNdiv2anEvenInteger = SyrStruct_1_1.Link( OwhileEvenN , Idiv2anEvenInteger )
999 LwhileEvenKincrbaCount = SyrStruct_1_1.Link( OwhileEvenK , IincrbaCount )
1000 LwhileEvenKincrbaCount.AddCoord( 1 , 796 , 655 )
1001 LwhileEvenKincrbaCount.AddCoord( 2 , 795 , 543 )
1003 LEndOfwhileEvenNEndOfifNotEvenN = SyrStruct_1_1.Link( OEndOfwhileEvenN , IEndOfifNotEvenN )
1004 LEndOfwhileEvenNEndOfifNotEvenN.AddCoord( 1 , 1191 , 366 )
1005 LEndOfwhileEvenNEndOfifNotEvenN.AddCoord( 2 , 1191 , 513 )
1007 LEndOfwhileEvenKEndOfifNotEvenK = SyrStruct_1_1.Link( OEndOfwhileEvenK , IEndOfifNotEvenK )
1008 LEndOfwhileEvenKEndOfifNotEvenK.AddCoord( 1 , 1169 , 395 )
1009 LEndOfwhileEvenKEndOfifNotEvenK.AddCoord( 2 , 1170 , 543 )
1011 LifNotEvenOddm3Gate = SyrStruct_1_1.Link( OifNotEvenOdd , Im3Gate )
1012 LifNotEvenOddm3Gate.AddCoord( 1 , 593 , 141 )
1013 LifNotEvenOddm3Gate.AddCoord( 2 , 593 , 307 )
1015 LifNotEvenOddforiGate = SyrStruct_1_1.Link( OifNotEvenOdd , IforiGate )
1017 LifNotEvenEvenwhileEvenGate = SyrStruct_1_1.Link( OifNotEvenEven , IwhileEvenGate )
1018 LifNotEvenEvenwhileEvenGate.AddCoord( 1 , 593 , 576 )
1019 LifNotEvenEvenwhileEvenGate.AddCoord( 2 , 592 , 339 )
1021 LifNotEvenSyrComponentwhileEvenSyrComponent = SyrStruct_1_1.Link( OifNotEvenSyrComponent , IwhileEvenSyrComponent )
1022 LifNotEvenSyrComponentwhileEvenSyrComponent.AddCoord( 1 , 586 , 486 )
1023 LifNotEvenSyrComponentwhileEvenSyrComponent.AddCoord( 2 , 587 , 367 )
1025 LifNotEvenNwhileEvenN = SyrStruct_1_1.Link( OifNotEvenN , IwhileEvenN )
1026 LifNotEvenNwhileEvenN.AddCoord( 1 , 604 , 513 )
1027 LifNotEvenNwhileEvenN.AddCoord( 2 , 603 , 397 )
1029 LifNotEvenNm3anOddInteger = SyrStruct_1_1.Link( OifNotEvenN , Im3anOddInteger )
1030 LifNotEvenNm3anOddInteger.AddCoord( 1 , 604 , 107 )
1031 LifNotEvenNm3anOddInteger.AddCoord( 2 , 604 , 395 )
1033 LifNotEvenKwhileEvenK = SyrStruct_1_1.Link( OifNotEvenK , IwhileEvenK )
1034 LifNotEvenKwhileEvenK.AddCoord( 1 , 621 , 544 )
1035 LifNotEvenKwhileEvenK.AddCoord( 2 , 622 , 426 )
1037 LifNotEvenKforiK = SyrStruct_1_1.Link( OifNotEvenK , IforiK )
1038 LifNotEvenKforiK.AddCoord( 1 , 622 , 275 )
1039 LifNotEvenKforiK.AddCoord( 2 , 622 , 426 )
1041 LifNotEvenDefaultEndOfifNotEvenDefault = SyrStruct_1_1.Link( OifNotEvenDefault , IEndOfifNotEvenDefault )
1042 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 1 , 1204 , 429 )
1043 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 2 , 1203 , 12 )
1044 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 3 , 581 , 13 )
1045 LifNotEvenDefaultEndOfifNotEvenDefault.AddCoord( 4 , 581 , 458 )
1047 LEndOfifNotEvenNEndOfwhileNotOneN = SyrStruct_1_1.Link( OEndOfifNotEvenN , IEndOfwhileNotOneN )
1049 LEndOfifNotEvenKEndOfwhileNotOneK = SyrStruct_1_1.Link( OEndOfifNotEvenK , IEndOfwhileNotOneK )
1051 # Input Ports of the graph
1052 #ISyrComponentaContainer = SyrComponent.GetInPort( 'aContainer' )
1053 #ISyrComponentaComponent = SyrComponent.GetInPort( 'aComponent' )
1054 #IforNN = forN.GetInPort( 'N' )
1055 #IforNK = forN.GetInPort( 'K' )
1056 #IforNmin = forN.GetInPort( 'min' )
1057 #IforNmax = forN.GetInPort( 'max' )
1058 #Iforii = fori.GetInPort( 'i' )
1060 # Output Ports of the graph
1061 #OEndOfforNN = EndOfforN.GetOutPort( 'N' )
1062 #OEndOfforNK = EndOfforN.GetOutPort( 'K' )
1063 #OEndOfforNSyrComponent = EndOfforN.GetOutPort( 'SyrComponent' )
1064 #OEndOfforNmin = EndOfforN.GetOutPort( 'min' )
1065 #OEndOfforNmax = EndOfforN.GetOutPort( 'max' )
1066 #OEndOfwhileNotOneSyrComponent = EndOfwhileNotOne.GetOutPort( 'SyrComponent' )
1067 #OEndOfwhileNotOneN = EndOfwhileNotOne.GetOutPort( 'N' )
1068 #OEndOfforii = EndOffori.GetOutPort( 'i' )
1069 #OEndOfwhileEvenSyrComponent = EndOfwhileEven.GetOutPort( 'SyrComponent' )
1070 return SyrStruct_1_1
1073 GraphMacroNodes = DefGraphMacroNodes()