Salome HOME
Merge from V6_main_20120808 08Aug12
[samples/datafiles.git] / Superv / Python / GraphLoopsCoupled.py
1 #  Copyright (C) 2007-2011  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.
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 # Generated python file of Graph GraphLoopsCoupled_3
23 #
24 from SuperV import *
25
26 # Graph creation of GraphLoopsCoupled_3
27 def DefGraphLoopsCoupled_3() :
28     GraphLoopsCoupled_3 = Graph( 'GraphLoopsCoupled_3' )
29     GraphLoopsCoupled_3.SetName( 'GraphLoopsCoupled_3' )
30     GraphLoopsCoupled_3.SetAuthor( 'JR' )
31     GraphLoopsCoupled_3.SetComment( '' )
32     GraphLoopsCoupled_3.Coords( 0 , 0 )
33     
34     # Creation of Factory Nodes
35     
36     # Creation of InLine Nodes
37     PyAdd = []
38     PyAdd.append( 'def Add(x,y) : ' )
39     PyAdd.append( '     return x+y ' )
40     PyAdd.append( '' )
41     Add = GraphLoopsCoupled_3.INode( 'Add' , PyAdd )
42     Add.SetName( 'Add' )
43     Add.SetAuthor( '' )
44     Add.SetComment( 'Compute Node' )
45     Add.Coords( 245 , 38 )
46     IAddx = Add.InPort( 'x' , 'long' )
47     IAddy = Add.InPort( 'y' , 'long' )
48     IAddGate = Add.GetInPort( 'Gate' )
49     OAddz = Add.OutPort( 'z' , 'long' )
50     OAddGate = Add.GetOutPort( 'Gate' )
51     
52     PyAdd_1 = []
53     PyAdd_1.append( 'def Add(x,y) :  ' )
54     PyAdd_1.append( '   return x+y  ' )
55     PyAdd_1.append( '' )
56     Add_1 = GraphLoopsCoupled_3.INode( 'Add' , PyAdd_1 )
57     Add_1.SetName( 'Add_1' )
58     Add_1.SetAuthor( '' )
59     Add_1.SetComment( 'Compute Node' )
60     Add_1.Coords( 243 , 288 )
61     IAdd_1x = Add_1.InPort( 'x' , 'long' )
62     IAdd_1y = Add_1.InPort( 'y' , 'long' )
63     IAdd_1Gate = Add_1.GetInPort( 'Gate' )
64     OAdd_1z = Add_1.OutPort( 'z' , 'long' )
65     OAdd_1Gate = Add_1.GetOutPort( 'Gate' )
66     
67     PySub = []
68     PySub.append( 'def Sub(x,y) :  ' )
69     PySub.append( '     return x-y  ' )
70     PySub.append( '' )
71     Sub = GraphLoopsCoupled_3.INode( 'Sub' , PySub )
72     Sub.SetName( 'Sub' )
73     Sub.SetAuthor( '' )
74     Sub.SetComment( 'Compute Node' )
75     Sub.Coords( 458 , 18 )
76     ISubx = Sub.InPort( 'x' , 'long' )
77     ISuby = Sub.InPort( 'y' , 'long' )
78     ISubGate = Sub.GetInPort( 'Gate' )
79     OSubz = Sub.OutPort( 'z' , 'long' )
80     OSubGate = Sub.GetOutPort( 'Gate' )
81     
82     PySub_1 = []
83     PySub_1.append( 'def Sub(x,y) :   ' )
84     PySub_1.append( '   return x-y   ' )
85     PySub_1.append( '' )
86     Sub_1 = GraphLoopsCoupled_3.INode( 'Sub' , PySub_1 )
87     Sub_1.SetName( 'Sub_1' )
88     Sub_1.SetAuthor( '' )
89     Sub_1.SetComment( 'Compute Node' )
90     Sub_1.Coords( 461 , 268 )
91     ISub_1x = Sub_1.InPort( 'x' , 'long' )
92     ISub_1y = Sub_1.InPort( 'y' , 'long' )
93     ISub_1Gate = Sub_1.GetInPort( 'Gate' )
94     OSub_1z = Sub_1.OutPort( 'z' , 'long' )
95     OSub_1Gate = Sub_1.GetOutPort( 'Gate' )
96     
97     # Creation of Loop Nodes
98     PyLoop = []
99     PyLoop.append( '  ' )
100     PyMoreLoop = []
101     PyMoreLoop.append( 'def More(Index,Max,z) :    ' )
102     PyMoreLoop.append( '        DoLoop = 0    ' )
103     PyMoreLoop.append( '        if Index < Max :   ' )
104     PyMoreLoop.append( '                DoLoop = 1    ' )
105     PyMoreLoop.append( '        return DoLoop,Index,Max,z ' )
106     PyMoreLoop.append( '  ' )
107     PyNextLoop = []
108     PyNextLoop.append( 'def Next(Index,Max,z) :    ' )
109     PyNextLoop.append( '        Index = Index + 1    ' )
110     PyNextLoop.append( '        return Index,Max,z  ' )
111     PyNextLoop.append( '  ' )
112     Loop,EndLoop = GraphLoopsCoupled_3.LNode( '' , PyLoop , 'More' , PyMoreLoop , 'Next' , PyNextLoop )
113     EndLoop.SetName( 'EndLoop' )
114     EndLoop.SetAuthor( '' )
115     EndLoop.SetComment( 'Compute Node' )
116     EndLoop.Coords( 662 , 38 )
117     PyEndLoop = []
118     EndLoop.SetPyFunction( 'EndLoop' , PyEndLoop )
119     ILoopDoLoop = Loop.GetInPort( 'DoLoop' )
120     ILoopIndex = Loop.InPort( 'Index' , 'long' )
121     ILoopMax = Loop.InPort( 'Max' , 'long' )
122     ILoopz = Loop.InPort( 'z' , 'long' )
123     ILoopGate = Loop.GetInPort( 'Gate' )
124     OLoopDoLoop = Loop.GetOutPort( 'DoLoop' )
125     OLoopIndex = Loop.GetOutPort( 'Index' )
126     OLoopMax = Loop.GetOutPort( 'Max' )
127     OLoopz = Loop.GetOutPort( 'z' )
128     IEndLoopDoLoop = EndLoop.GetInPort( 'DoLoop' )
129     IEndLoopIndex = EndLoop.GetInPort( 'Index' )
130     IEndLoopMax = EndLoop.GetInPort( 'Max' )
131     IEndLoopz = EndLoop.GetInPort( 'z' )
132     IEndLoopGate = EndLoop.GetInPort( 'Gate' )
133     OEndLoopDoLoop = EndLoop.GetOutPort( 'DoLoop' )
134     OEndLoopIndex = EndLoop.GetOutPort( 'Index' )
135     OEndLoopMax = EndLoop.GetOutPort( 'Max' )
136     OEndLoopz = EndLoop.GetOutPort( 'z' )
137     OEndLoopGate = EndLoop.GetOutPort( 'Gate' )
138     Loop.SetName( 'Loop' )
139     Loop.SetAuthor( '' )
140     Loop.SetComment( 'Compute Node' )
141     Loop.Coords( 15 , 58 )
142     
143     PyInit = []
144     PyInit.append( '  ' )
145     PyMoreInit = []
146     PyMoreInit.append( 'def More(Index,Max,z) :      ' )
147     PyMoreInit.append( '        DoLoop = 0      ' )
148     PyMoreInit.append( '        if Index < Max :     ' )
149     PyMoreInit.append( '                DoLoop = 1      ' )
150     PyMoreInit.append( '        return DoLoop,Index,Max,z      ' )
151     PyMoreInit.append( '  ' )
152     PyNextInit = []
153     PyNextInit.append( 'def Next(Index,Max,z) :     ' )
154     PyNextInit.append( '        Index = Index + 1     ' )
155     PyNextInit.append( '        return Index,Max,z     ' )
156     PyNextInit.append( '  ' )
157     Init,EndInit = GraphLoopsCoupled_3.LNode( '' , PyInit , 'More' , PyMoreInit , 'Next' , PyNextInit )
158     EndInit.SetName( 'EndInit' )
159     EndInit.SetAuthor( '' )
160     EndInit.SetComment( 'Compute Node' )
161     EndInit.Coords( 670 , 288 )
162     PyEndInit = []
163     EndInit.SetPyFunction( 'EndInit' , PyEndInit )
164     IInitDoLoop = Init.GetInPort( 'DoLoop' )
165     IInitIndex = Init.InPort( 'Index' , 'long' )
166     IInitMax = Init.InPort( 'Max' , 'long' )
167     IInitz = Init.InPort( 'z' , 'long' )
168     IInitGate = Init.GetInPort( 'Gate' )
169     OInitDoLoop = Init.GetOutPort( 'DoLoop' )
170     OInitIndex = Init.GetOutPort( 'Index' )
171     OInitMax = Init.GetOutPort( 'Max' )
172     OInitz = Init.GetOutPort( 'z' )
173     IEndInitDoLoop = EndInit.GetInPort( 'DoLoop' )
174     IEndInitIndex = EndInit.GetInPort( 'Index' )
175     IEndInitMax = EndInit.GetInPort( 'Max' )
176     IEndInitz = EndInit.GetInPort( 'z' )
177     IEndInitGate = EndInit.GetInPort( 'Gate' )
178     OEndInitDoLoop = EndInit.GetOutPort( 'DoLoop' )
179     OEndInitIndex = EndInit.GetOutPort( 'Index' )
180     OEndInitMax = EndInit.GetOutPort( 'Max' )
181     OEndInitz = EndInit.GetOutPort( 'z' )
182     OEndInitGate = EndInit.GetOutPort( 'Gate' )
183     Init.SetName( 'Init' )
184     Init.SetAuthor( '' )
185     Init.SetComment( 'Compute Node' )
186     Init.Coords( 10 , 308 )
187     
188     # Creation of Links
189     LAddzSuby = GraphLoopsCoupled_3.Link( OAddz , ISuby )
190     
191     LAddzSub_1x = GraphLoopsCoupled_3.Link( OAddz , ISub_1x )
192     
193     LAdd_1zSub_1y = GraphLoopsCoupled_3.Link( OAdd_1z , ISub_1y )
194     
195     LAdd_1zSubx = GraphLoopsCoupled_3.Link( OAdd_1z , ISubx )
196     
197     LSubzEndInitz = GraphLoopsCoupled_3.Link( OSubz , IEndInitz )
198     
199     LSub_1zEndLoopz = GraphLoopsCoupled_3.Link( OSub_1z , IEndLoopz )
200     
201     LLoopIndexEndLoopIndex = GraphLoopsCoupled_3.Link( OLoopIndex , IEndLoopIndex )
202     
203     LLoopMaxEndLoopMax = GraphLoopsCoupled_3.Link( OLoopMax , IEndLoopMax )
204     
205     LLoopMaxAddx = GraphLoopsCoupled_3.Link( OLoopMax , IAddx )
206     
207     LLoopzAddy = GraphLoopsCoupled_3.Link( OLoopz , IAddy )
208     
209     LInitIndexEndInitIndex = GraphLoopsCoupled_3.Link( OInitIndex , IEndInitIndex )
210     
211     LInitMaxEndInitMax = GraphLoopsCoupled_3.Link( OInitMax , IEndInitMax )
212     
213     LInitMaxAdd_1x = GraphLoopsCoupled_3.Link( OInitMax , IAdd_1x )
214     
215     LInitzAdd_1y = GraphLoopsCoupled_3.Link( OInitz , IAdd_1y )
216     
217     # Input datas
218     ILoopIndex.Input( 5 )
219     ILoopMax.Input( 15 )
220     ILoopz.Input( -1 )
221     IInitIndex.Input( 3 )
222     IInitMax.Input( 13 )
223     IInitz.Input( -2 )
224     
225     # Output Ports of the graph
226     #OEndLoopIndex = EndLoop.GetOutPort( 'Index' )
227     #OEndLoopMax = EndLoop.GetOutPort( 'Max' )
228     #OEndLoopz = EndLoop.GetOutPort( 'z' )
229     #OEndInitIndex = EndInit.GetOutPort( 'Index' )
230     #OEndInitMax = EndInit.GetOutPort( 'Max' )
231     #OEndInitz = EndInit.GetOutPort( 'z' )
232     return GraphLoopsCoupled_3
233
234
235 GraphLoopsCoupled_3 = DefGraphLoopsCoupled_3()