Salome HOME
Copyrights update 2015.
[samples/datafiles.git] / Superv / Python / GraphGOTOAborted.py
1 # Copyright (C) 2007-2015  CEA/DEN, EDF R&D, OPEN CASCADE
2 #
3 # Copyright (C) 2003-2007  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
5 #
6 # This library is free software; you can redistribute it and/or
7 # modify it under the terms of the GNU Lesser General Public
8 # License as published by the Free Software Foundation; either
9 # version 2.1 of the License, or (at your option) any later version.
10 #
11 # This library is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
14 # Lesser General Public License for more details.
15 #
16 # You should have received a copy of the GNU Lesser General Public
17 # License along with this library; if not, write to the Free Software
18 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
19 #
20 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
21 #
22
23 # Generated python file of Graph GraphGOTOAborted
24 #
25 from SuperV import *
26
27 # Graph creation of GraphGOTOAborted
28 def DefGraphGOTOAborted() :
29     GraphGOTOAborted = Graph( 'GraphGOTOAborted' )
30     GraphGOTOAborted.SetName( 'GraphGOTOAborted' )
31     GraphGOTOAborted.SetAuthor( 'JR' )
32     GraphGOTOAborted.SetComment( 'Syracuse algorithm' )
33     GraphGOTOAborted.Coords( 0 , 0 )
34     
35     # Creation of Factory Nodes
36     
37     test_ISEVEN = GraphGOTOAborted.FNode( 'SyrComponent' , 'SyrComponent' , 'C_ISEVEN' )
38     test_ISEVEN.SetName( 'test_ISEVEN' )
39     test_ISEVEN.SetAuthor( '' )
40     test_ISEVEN.SetContainer( 'localhost/FactoryServer' )
41     test_ISEVEN.SetComment( 'C_ISEVEN from SyrComponent' )
42     test_ISEVEN.Coords( 195 , 417 )
43     Itest_ISEVENanInteger = test_ISEVEN.GetInPort( 'anInteger' )
44     Itest_ISEVENGate = test_ISEVEN.GetInPort( 'Gate' )
45     Otest_ISEVENBoolEven = test_ISEVEN.GetOutPort( 'BoolEven' )
46     Otest_ISEVENGate = test_ISEVEN.GetOutPort( 'Gate' )
47     
48     test_ISONE = GraphGOTOAborted.FNode( 'SyrComponent' , 'SyrComponent' , 'C_ISONE' )
49     test_ISONE.SetName( 'test_ISONE' )
50     test_ISONE.SetAuthor( '' )
51     test_ISONE.SetContainer( 'localhost/FactoryServer' )
52     test_ISONE.SetComment( 'C_ISONE from SyrComponent' )
53     test_ISONE.Coords( 201 , 145 )
54     Itest_ISONEanInteger = test_ISONE.GetInPort( 'anInteger' )
55     Itest_ISONEGate = test_ISONE.GetInPort( 'Gate' )
56     Otest_ISONEBoolOne = test_ISONE.GetOutPort( 'BoolOne' )
57     Otest_ISONEGate = test_ISONE.GetOutPort( 'Gate' )
58     
59     m3p1 = GraphGOTOAborted.FNode( 'SyrComponent' , 'SyrComponent' , 'C_M3P1' )
60     m3p1.SetName( 'm3p1' )
61     m3p1.SetAuthor( '' )
62     m3p1.SetContainer( 'localhost/FactoryServer' )
63     m3p1.SetComment( 'C_M3P1 from SyrComponent' )
64     m3p1.Coords( 861 , 46 )
65     Im3p1anOddInteger = m3p1.GetInPort( 'anOddInteger' )
66     Im3p1Gate = m3p1.GetInPort( 'Gate' )
67     Om3p1anEvenInteger = m3p1.GetOutPort( 'anEvenInteger' )
68     Om3p1Gate = m3p1.GetOutPort( 'Gate' )
69     
70     div2 = GraphGOTOAborted.FNode( 'SyrComponent' , 'SyrComponent' , 'C_DIV2' )
71     div2.SetName( 'div2' )
72     div2.SetAuthor( '' )
73     div2.SetContainer( 'localhost/FactoryServer' )
74     div2.SetComment( 'C_DIV2 from SyrComponent' )
75     div2.Coords( 858 , 466 )
76     Idiv2anEvenInteger = div2.GetInPort( 'anEvenInteger' )
77     Idiv2Gate = div2.GetInPort( 'Gate' )
78     Odiv2anInteger = div2.GetOutPort( 'anInteger' )
79     Odiv2Gate = div2.GetOutPort( 'Gate' )
80     
81     incr = GraphGOTOAborted.FNode( 'SyrComponent' , 'SyrComponent' , 'C_INCR' )
82     incr.SetName( 'incr' )
83     incr.SetAuthor( '' )
84     incr.SetContainer( 'localhost/FactoryServer' )
85     incr.SetComment( 'C_INCR from SyrComponent' )
86     incr.Coords( 865 , 169 )
87     IincraCount = incr.GetInPort( 'aCount' )
88     IincrGate = incr.GetInPort( 'Gate' )
89     OincraNewCount = incr.GetOutPort( 'aNewCount' )
90     OincrGate = incr.GetOutPort( 'Gate' )
91     
92     # Creation of InLine Nodes
93     Pylabel_begin = []
94     Pylabel_begin.append( 'def label_begin( NB , KB ):' )
95     Pylabel_begin.append( '    print "label_begin",NB,KB' )
96     Pylabel_begin.append( '    return NB,KB' )
97     label_begin = GraphGOTOAborted.INode( 'label_begin' , Pylabel_begin )
98     label_begin.SetName( 'label_begin' )
99     label_begin.SetAuthor( '' )
100     label_begin.SetComment( 'Python function' )
101     label_begin.Coords( 9 , 250 )
102     Ilabel_beginNB = label_begin.InPort( 'NB' , 'long' )
103     Ilabel_beginKB = label_begin.InPort( 'KB' , 'long' )
104     Ilabel_beginGate = label_begin.GetInPort( 'Gate' )
105     Olabel_beginNT = label_begin.OutPort( 'NT' , 'long' )
106     Olabel_beginKT = label_begin.OutPort( 'KT' , 'long' )
107     Olabel_beginGate = label_begin.GetOutPort( 'Gate' )
108     
109     Pylabel_test = []
110     Pylabel_test.append( 'def label_test( ValEven , ValOne , NB , KB ):' )
111     Pylabel_test.append( '    print "label_begin",ValEven,ValOne,NB,KB' )
112     Pylabel_test.append( '    return ValEven,ValOne,NB,KB' )
113     label_test = GraphGOTOAborted.INode( 'label_test' , Pylabel_test )
114     label_test.SetName( 'label_test' )
115     label_test.SetAuthor( '' )
116     label_test.SetComment( 'Python function' )
117     label_test.Coords( 396 , 193 )
118     Ilabel_testValEven = label_test.InPort( 'ValEven' , 'long' )
119     Ilabel_testValOne = label_test.InPort( 'ValOne' , 'long' )
120     Ilabel_testNT = label_test.InPort( 'NT' , 'long' )
121     Ilabel_testKT = label_test.InPort( 'KT' , 'long' )
122     Ilabel_testGate = label_test.GetInPort( 'Gate' )
123     Olabel_testValEven = label_test.OutPort( 'ValEven' , 'long' )
124     Olabel_testValOne = label_test.OutPort( 'ValOne' , 'long' )
125     Olabel_testNT = label_test.OutPort( 'NT' , 'long' )
126     Olabel_testKT = label_test.OutPort( 'KT' , 'long' )
127     Olabel_testGate = label_test.GetOutPort( 'Gate' )
128     
129     # Creation of Switch Nodes
130     Pytest = []
131     Pytest.append( 'def Switch_OneEven( ValOne , ValEven , NT , KT ) :' )
132     Pytest.append( '    Finished = ValOne' )
133     Pytest.append( '    if Finished == 0 :' )
134     Pytest.append( '        Incr = 1' )
135     Pytest.append( '        Even = ValEven' )
136     Pytest.append( '        if Even == 0 :' )
137     Pytest.append( '            Odd = 1' )
138     Pytest.append( '        else :' )
139     Pytest.append( '            Odd = 0' )
140     Pytest.append( '    else :' )
141     Pytest.append( '        Incr = 0' )
142     Pytest.append( '        Even = 0' )
143     Pytest.append( '        Odd = 0' )
144     Pytest.append( '    Even = ValEven' )
145     Pytest.append( '    return Finished,Incr,Even,Odd,NT,KT' )
146     test,EndSwitch_OneEven = GraphGOTOAborted.SNode( 'Switch_OneEven' , Pytest )
147     EndSwitch_OneEven.SetName( 'EndSwitch_OneEven' )
148     EndSwitch_OneEven.SetAuthor( '' )
149     EndSwitch_OneEven.SetComment( 'Compute Node' )
150     EndSwitch_OneEven.Coords( 1256 , 305 )
151     PyEndSwitch_OneEven = []
152     PyEndSwitch_OneEven.append( 'def EndSwitch_OneEven( Finished , K ):' )
153     PyEndSwitch_OneEven.append( '    print "label_begin",Finished,K' )
154     PyEndSwitch_OneEven.append( '    return Finished,K' )
155     EndSwitch_OneEven.SetPyFunction( 'EndSwitch_OneEven' , PyEndSwitch_OneEven )
156     IEndSwitch_OneEvenFinished = EndSwitch_OneEven.InPort( 'Finished' , 'long' )
157     IEndSwitch_OneEvenK = EndSwitch_OneEven.InPort( 'K' , 'long' )
158     IEndSwitch_OneEvenDefault = EndSwitch_OneEven.GetInPort( 'Default' )
159     OEndSwitch_OneEvenFinished = EndSwitch_OneEven.OutPort( 'Finished' , 'long' )
160     OEndSwitch_OneEvenK = EndSwitch_OneEven.OutPort( 'K' , 'long' )
161     OEndSwitch_OneEvenGate = EndSwitch_OneEven.GetOutPort( 'Gate' )
162     test.SetName( 'test' )
163     test.SetAuthor( '' )
164     test.SetComment( 'Compute Node' )
165     test.Coords( 595 , 239 )
166     ItestValOne = test.InPort( 'ValOne' , 'long' )
167     ItestValEven = test.InPort( 'ValEven' , 'long' )
168     ItestNT = test.InPort( 'NT' , 'long' )
169     ItestKT = test.InPort( 'KT' , 'long' )
170     ItestGate = test.GetInPort( 'Gate' )
171     OtestFinished = test.OutPort( 'Finished' , 'long' )
172     OtestIncr = test.OutPort( 'Incr' , 'long' )
173     OtestEven = test.OutPort( 'Even' , 'long' )
174     OtestOdd = test.OutPort( 'Odd' , 'long' )
175     OtestN = test.OutPort( 'N' , 'long' )
176     OtestK = test.OutPort( 'K' , 'long' )
177     OtestDefault = test.GetOutPort( 'Default' )
178     
179     # Creation of GOTO Nodes
180     Pycontrol_m3p1 = []
181     Pycontrol_m3p1.append( 'def control_m3p1( N , K ):' )
182     Pycontrol_m3p1.append( '    return 0,1,N,K' )
183     control_m3p1 = GraphGOTOAborted.GNode( 'control_m3p1' , Pycontrol_m3p1 , 'label_test' )
184     control_m3p1.SetName( 'control_m3p1' )
185     control_m3p1.SetAuthor( '' )
186     control_m3p1.SetComment( 'Compute Node' )
187     control_m3p1.Coords( 1073 , 87 )
188     Icontrol_m3p1N = control_m3p1.InPort( 'N' , 'long' )
189     Icontrol_m3p1K = control_m3p1.InPort( 'K' , 'long' )
190     Icontrol_m3p1Gate = control_m3p1.GetInPort( 'Gate' )
191     Ocontrol_m3p1ValOne = control_m3p1.OutPort( 'ValOne' , 'long' )
192     Ocontrol_m3p1ValEven = control_m3p1.OutPort( 'ValEven' , 'long' )
193     Ocontrol_m3p1NT = control_m3p1.OutPort( 'NT' , 'long' )
194     Ocontrol_m3p1KT = control_m3p1.OutPort( 'KT' , 'long' )
195     Ocontrol_m3p1Gate = control_m3p1.GetOutPort( 'Gate' )
196     
197     Pycontrol_div2 = []
198     Pycontrol_div2.append( 'def control_div2( N , NB ) :' )
199     Pycontrol_div2.append( '    return N,NB' )
200     control_div2 = GraphGOTOAborted.GNode( 'control_div2' , Pycontrol_div2 , 'label_begin' )
201     control_div2.SetName( 'control_div2' )
202     control_div2.SetAuthor( '' )
203     control_div2.SetComment( 'Compute Node' )
204     control_div2.Coords( 1128 , 453 )
205     Icontrol_div2N = control_div2.InPort( 'N' , 'long' )
206     Icontrol_div2K = control_div2.InPort( 'K' , 'long' )
207     Icontrol_div2Gate = control_div2.GetInPort( 'Gate' )
208     Ocontrol_div2NB = control_div2.OutPort( 'NB' , 'long' )
209     Ocontrol_div2KB = control_div2.OutPort( 'KB' , 'long' )
210     Ocontrol_div2Gate = control_div2.GetOutPort( 'Gate' )
211     
212     # Creation of Links
213     Ltest_ISEVENBoolEvenlabel_testValEven = GraphGOTOAborted.Link( Otest_ISEVENBoolEven , Ilabel_testValEven )
214     Ltest_ISEVENBoolEvenlabel_testValEven.AddCoord( 1 , 369 , 273 )
215     Ltest_ISEVENBoolEvenlabel_testValEven.AddCoord( 2 , 370 , 498 )
216     
217     Ltest_ISONEBoolOnelabel_testValOne = GraphGOTOAborted.Link( Otest_ISONEBoolOne , Ilabel_testValOne )
218     Ltest_ISONEBoolOnelabel_testValOne.AddCoord( 1 , 384 , 281 )
219     Ltest_ISONEBoolOnelabel_testValOne.AddCoord( 2 , 384 , 225 )
220     
221     Lm3p1anEvenIntegercontrol_m3p1N = GraphGOTOAborted.Link( Om3p1anEvenInteger , Icontrol_m3p1N )
222     
223     Ldiv2anIntegercontrol_div2N = GraphGOTOAborted.Link( Odiv2anInteger , Icontrol_div2N )
224     
225     LincraNewCountcontrol_m3p1K = GraphGOTOAborted.Link( OincraNewCount , Icontrol_m3p1K )
226     LincraNewCountcontrol_m3p1K.AddCoord( 1 , 1048 , 139 )
227     LincraNewCountcontrol_m3p1K.AddCoord( 2 , 1048 , 241 )
228     
229     LincraNewCountcontrol_div2K = GraphGOTOAborted.Link( OincraNewCount , Icontrol_div2K )
230     LincraNewCountcontrol_div2K.AddCoord( 1 , 1052 , 504 )
231     LincraNewCountcontrol_div2K.AddCoord( 2 , 1049 , 239 )
232     
233     Llabel_beginNTlabel_testNT = GraphGOTOAborted.Link( Olabel_beginNT , Ilabel_testNT )
234     
235     Llabel_beginNTtest_ISONEanInteger = GraphGOTOAborted.Link( Olabel_beginNT , Itest_ISONEanInteger )
236     Llabel_beginNTtest_ISONEanInteger.AddCoord( 1 , 192 , 226 )
237     Llabel_beginNTtest_ISONEanInteger.AddCoord( 2 , 191 , 331 )
238     
239     Llabel_beginNTtest_ISEVENanInteger = GraphGOTOAborted.Link( Olabel_beginNT , Itest_ISEVENanInteger )
240     Llabel_beginNTtest_ISEVENanInteger.AddCoord( 1 , 191 , 494 )
241     Llabel_beginNTtest_ISEVENanInteger.AddCoord( 2 , 192 , 331 )
242     
243     Llabel_beginKTlabel_testKT = GraphGOTOAborted.Link( Olabel_beginKT , Ilabel_testKT )
244     
245     Llabel_testValEventestValEven = GraphGOTOAborted.Link( Olabel_testValEven , ItestValEven )
246     
247     Llabel_testValOnetestValOne = GraphGOTOAborted.Link( Olabel_testValOne , ItestValOne )
248     
249     Llabel_testNTtestNT = GraphGOTOAborted.Link( Olabel_testNT , ItestNT )
250     
251     Llabel_testKTtestKT = GraphGOTOAborted.Link( Olabel_testKT , ItestKT )
252     
253     LtestFinishedEndSwitch_OneEvenFinished = GraphGOTOAborted.Link( OtestFinished , IEndSwitch_OneEvenFinished )
254     
255     LtestIncrincrGate = GraphGOTOAborted.Link( OtestIncr , IincrGate )
256     
257     LtestEvendiv2Gate = GraphGOTOAborted.Link( OtestEven , Idiv2Gate )
258     LtestEvendiv2Gate.AddCoord( 1 , 793 , 561 )
259     LtestEvendiv2Gate.AddCoord( 2 , 794 , 310 )
260     
261     LtestOddm3p1Gate = GraphGOTOAborted.Link( OtestOdd , Im3p1Gate )
262     LtestOddm3p1Gate.AddCoord( 1 , 778 , 138 )
263     LtestOddm3p1Gate.AddCoord( 2 , 780 , 328 )
264     
265     LtestNm3p1anOddInteger = GraphGOTOAborted.Link( OtestN , Im3p1anOddInteger )
266     LtestNm3p1anOddInteger.AddCoord( 1 , 808 , 113 )
267     LtestNm3p1anOddInteger.AddCoord( 2 , 807 , 352 )
268     
269     LtestNdiv2anEvenInteger = GraphGOTOAborted.Link( OtestN , Idiv2anEvenInteger )
270     LtestNdiv2anEvenInteger.AddCoord( 1 , 806 , 537 )
271     LtestNdiv2anEvenInteger.AddCoord( 2 , 807 , 351 )
272     
273     LtestKEndSwitch_OneEvenK = GraphGOTOAborted.Link( OtestK , IEndSwitch_OneEvenK )
274     
275     LtestKincraCount = GraphGOTOAborted.Link( OtestK , IincraCount )
276     LtestKincraCount.AddCoord( 1 , 773 , 236 )
277     LtestKincraCount.AddCoord( 2 , 773 , 370 )
278     
279     LtestDefaultEndSwitch_OneEvenDefault = GraphGOTOAborted.Link( OtestDefault , IEndSwitch_OneEvenDefault )
280     LtestDefaultEndSwitch_OneEvenDefault.AddCoord( 1 , 840 , 381 )
281     LtestDefaultEndSwitch_OneEvenDefault.AddCoord( 2 , 839 , 394 )
282     
283     Lcontrol_m3p1Gatelabel_testGate = GraphGOTOAborted.Link( Ocontrol_m3p1Gate , Ilabel_testGate )
284     Lcontrol_m3p1Gatelabel_testGate.AddCoord( 1 , 388 , 388 )
285     Lcontrol_m3p1Gatelabel_testGate.AddCoord( 2 , 389 , 597 )
286     Lcontrol_m3p1Gatelabel_testGate.AddCoord( 3 , 1441 , 604 )
287     Lcontrol_m3p1Gatelabel_testGate.AddCoord( 4 , 1441 , 199 )
288     
289     Lcontrol_div2Gatelabel_beginGate = GraphGOTOAborted.Link( Ocontrol_div2Gate , Ilabel_beginGate )
290     Lcontrol_div2Gatelabel_beginGate.AddCoord( 1 , 4 , 388 )
291     Lcontrol_div2Gatelabel_beginGate.AddCoord( 2 , 3 , 587 )
292     Lcontrol_div2Gatelabel_beginGate.AddCoord( 3 , 1307 , 586 )
293     Lcontrol_div2Gatelabel_beginGate.AddCoord( 4 , 1307 , 528 )
294     
295     # Input datas
296     Ilabel_beginNB.Input( 7 )
297     Ilabel_beginKB.Input( 0 )
298     
299     # Output Ports of the graph
300     #OEndSwitch_OneEvenFinished = EndSwitch_OneEven.GetOutPort( 'Finished' )
301     #OEndSwitch_OneEvenK = EndSwitch_OneEven.GetOutPort( 'K' )
302     return GraphGOTOAborted
303
304
305 GraphGOTOAborted = DefGraphGOTOAborted()
306
307 GraphGOTOAborted.Run()
308 GraphGOTOAborted.DoneW()
309 GraphGOTOAborted.State()
310 GraphGOTOAborted.PrintPorts()