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