Salome HOME
Fix for improvement IPAL9815 : Remove "Add Port" functionality as duplicate of "Edit...
[modules/superv.git] / examples / GraphLoopDoWhile.py
1
2 # Generated python file of Graph GraphLoopDoWhile
3
4 from SuperV import *
5
6 # Graph creation of GraphLoopDoWhile
7 def DefGraphLoopDoWhile() :
8     GraphLoopDoWhile = Graph( 'GraphLoopDoWhile' )
9     GraphLoopDoWhile.SetName( 'GraphLoopDoWhile' )
10     GraphLoopDoWhile.SetAuthor( 'JR' )
11     GraphLoopDoWhile.SetComment( '' )
12     GraphLoopDoWhile.Coords( 0 , 0 )
13     
14     # Creation of Factory Nodes
15     
16     # Creation of Loop Nodes
17     PyLoop = []
18     PyMoreLoop = []
19     PyMoreLoop.append( '' )
20     PyNextLoop = []
21     PyNextLoop.append( 'def LoopWhileNext(Index,Max) :   ' )
22     PyNextLoop.append( '        Index = Index + 1   ' )
23     PyNextLoop.append( '        return Index,Max   ' )
24     PyNextLoop.append( '' )
25     Loop,EndLoop = GraphLoopDoWhile.LNode( '' , PyLoop , '' , PyMoreLoop , 'LoopWhileNext' , PyNextLoop )
26     EndLoop.SetName( 'EndLoop' )
27     EndLoop.SetAuthor( '' )
28     EndLoop.SetComment( 'Compute Node' )
29     EndLoop.Coords( 414 , 232 )
30     PyEndLoop = []
31     PyEndLoop.append( 'import time    ' )
32     PyEndLoop.append( 'def DoWhile(DoLoop,Index,Max) :   ' )
33     PyEndLoop.append( ' print 'DoWhile',DoLoop,Index,Max ' )
34     PyEndLoop.append( ' time.sleep(2)     ' )
35     PyEndLoop.append( ' if Index == Max :     ' )
36     PyEndLoop.append( '         DoLoop = 0     ' )
37     PyEndLoop.append( ' else :     ' )
38     PyEndLoop.append( '         DoLoop = 1     ' )
39     PyEndLoop.append( ' print 'DoWhile',DoLoop,Index,Max ' )
40     PyEndLoop.append( ' return DoLoop,Index,Max     ' )
41     EndLoop.SetPyFunction( 'DoWhile' , PyEndLoop )
42     ILoopDoLoop = Loop.GetInPort( 'DoLoop' )
43     ILoopIndex = Loop.InPort( 'Index' , 'long' )
44     ILoopMax = Loop.InPort( 'Max' , 'long' )
45     ILoopGate = Loop.GetInPort( 'Gate' )
46     OLoopDoLoop = Loop.GetOutPort( 'DoLoop' )
47     OLoopIndex = Loop.GetOutPort( 'Index' )
48     OLoopMax = Loop.GetOutPort( 'Max' )
49     IEndLoopDoLoop = EndLoop.GetInPort( 'DoLoop' )
50     IEndLoopIndex = EndLoop.GetInPort( 'Index' )
51     IEndLoopMax = EndLoop.GetInPort( 'Max' )
52     IEndLoopGate = EndLoop.GetInPort( 'Gate' )
53     OEndLoopDoLoop = EndLoop.GetOutPort( 'DoLoop' )
54     OEndLoopIndex = EndLoop.GetOutPort( 'Index' )
55     OEndLoopMax = EndLoop.GetOutPort( 'Max' )
56     Loop.SetName( 'Loop' )
57     Loop.SetAuthor( '' )
58     Loop.SetComment( 'Compute Node' )
59     Loop.Coords( 105 , 226 )
60     
61     # Creation of Links
62     LLoopIndexEndLoopIndex = GraphLoopDoWhile.Link( OLoopIndex , IEndLoopIndex )
63     
64     LLoopMaxEndLoopMax = GraphLoopDoWhile.Link( OLoopMax , IEndLoopMax )
65     
66     # Input datas
67     ILoopIndex.Input( 5 )
68     ILoopMax.Input( 10 )
69     
70     # Output Ports of the graph
71     #OEndLoopIndex = EndLoop.GetOutPort( 'Index' )
72     #OEndLoopMax = EndLoop.GetOutPort( 'Max' )
73     return GraphLoopDoWhile
74
75
76 GraphLoopDoWhile = DefGraphLoopDoWhile()