2 # Generated python file of Graph GraphStreams
6 GraphStreams = StreamGraph( 'GraphStreams' )
7 GraphStreams.SetStreamParams( 1000 , SUPERV.SummaryTrace , 1.5 )
8 GraphStreams.SetName( 'GraphStreams' )
9 GraphStreams.SetAuthor( 'JR' )
10 GraphStreams.SetComment( 'Graph with DataStreamPorts CEA/EDF : Calcium' )
11 GraphStreams.Coords( 0 , 0 )
13 # Creation of Factory Nodes
15 Add = GraphStreams.FNode( 'DataStreamFactory' , 'DataStreamFactory' , 'Add' )
18 Add.SetContainer( 'FactoryServer' )
19 Add.SetComment( 'Add from DataStreamFactory' )
20 Add.Coords( 256 , 156 )
21 IAddx = Add.GetInPort( 'x' )
22 IAddy = Add.GetInPort( 'y' )
23 IAddGate = Add.GetInPort( 'Gate' )
24 OAddz = Add.GetOutPort( 'z' )
25 OAddGate = Add.GetOutPort( 'Gate' )
26 IAddistream = Add.GetInStreamPort( 'istream' )
27 IAddistream.SetParams( SUPERV.SCHENULL , SUPERV.INTERNULL , SUPERV.EXTRANULL )
28 OAddostream = Add.GetOutStreamPort( 'ostream' )
29 OAddostream.SetNumberOfValues( 0 )
30 OAddOStream = Add.GetOutStreamPort( 'OStream' )
31 OAddOStream.SetNumberOfValues( 10 )
33 Sub = GraphStreams.FNode( 'DataStreamFactory' , 'DataStreamFactory' , 'Sub' )
36 Sub.SetContainer( 'FactoryServer' )
37 Sub.SetComment( 'Sub from DataStreamFactory' )
38 Sub.Coords( 519 , 33 )
39 ISubx = Sub.GetInPort( 'x' )
40 ISuby = Sub.GetInPort( 'y' )
41 ISubGate = Sub.GetInPort( 'Gate' )
42 OSubz = Sub.GetOutPort( 'z' )
43 OSubGate = Sub.GetOutPort( 'Gate' )
44 ISubistream = Sub.GetInStreamPort( 'istream' )
45 ISubistream.SetParams( SUPERV.SCHENULL , SUPERV.INTERNULL , SUPERV.EXTRANULL )
46 ISubIstream = Sub.GetInStreamPort( 'Istream' )
47 ISubIstream.SetParams( SUPERV.SCHENULL , SUPERV.INTERNULL , SUPERV.EXTRANULL )
49 Mul = GraphStreams.FNode( 'DataStreamFactory' , 'DataStreamFactory' , 'Mul' )
52 Mul.SetContainer( 'FactoryServer' )
53 Mul.SetComment( 'Mul from DataStreamFactory' )
54 Mul.Coords( 723 , 127 )
55 IMulx = Mul.GetInPort( 'x' )
56 IMuly = Mul.GetInPort( 'y' )
57 IMulGate = Mul.GetInPort( 'Gate' )
58 OMulz = Mul.GetOutPort( 'z' )
59 OMulGate = Mul.GetOutPort( 'Gate' )
61 Div = GraphStreams.FNode( 'DataStreamFactory' , 'DataStreamFactory' , 'Div' )
64 Div.SetContainer( 'FactoryServer' )
65 Div.SetComment( 'Div from DataStreamFactory' )
66 Div.Coords( 936 , 34 )
67 IDivx = Div.GetInPort( 'x' )
68 IDivy = Div.GetInPort( 'y' )
69 IDivGate = Div.GetInPort( 'Gate' )
70 ODivz = Div.GetOutPort( 'z' )
71 ODivGate = Div.GetOutPort( 'Gate' )
72 ODivostream = Div.GetOutStreamPort( 'ostream' )
73 ODivostream.SetNumberOfValues( 0 )
75 Add_1 = GraphStreams.FNode( 'DataStreamFactory' , 'DataStreamFactory' , 'Add' )
76 Add_1.SetName( 'Add_1' )
78 Add_1.SetContainer( 'localhost/FactoryServer' )
79 Add_1.SetComment( 'Add from DataStreamFactory' )
80 Add_1.Coords( 252 , 499 )
81 IAdd_1x = Add_1.GetInPort( 'x' )
82 IAdd_1y = Add_1.GetInPort( 'y' )
83 IAdd_1Gate = Add_1.GetInPort( 'Gate' )
84 OAdd_1z = Add_1.GetOutPort( 'z' )
85 OAdd_1Gate = Add_1.GetOutPort( 'Gate' )
86 IAdd_1istream = Add_1.GetInStreamPort( 'istream' )
87 IAdd_1istream.SetParams( SUPERV.SCHENULL , SUPERV.INTERNULL , SUPERV.EXTRANULL )
88 OAdd_1ostream = Add_1.GetOutStreamPort( 'ostream' )
89 OAdd_1ostream.SetNumberOfValues( 0 )
90 OAdd_1OStream = Add_1.GetOutStreamPort( 'OStream' )
91 OAdd_1OStream.SetNumberOfValues( 0 )
93 Sub_1 = GraphStreams.FNode( 'DataStreamFactory' , 'DataStreamFactory' , 'Sub' )
94 Sub_1.SetName( 'Sub_1' )
96 Sub_1.SetContainer( 'localhost/FactoryServer' )
97 Sub_1.SetComment( 'Sub from DataStreamFactory' )
98 Sub_1.Coords( 518 , 369 )
99 ISub_1x = Sub_1.GetInPort( 'x' )
100 ISub_1y = Sub_1.GetInPort( 'y' )
101 ISub_1Gate = Sub_1.GetInPort( 'Gate' )
102 OSub_1z = Sub_1.GetOutPort( 'z' )
103 OSub_1Gate = Sub_1.GetOutPort( 'Gate' )
104 ISub_1istream = Sub_1.GetInStreamPort( 'istream' )
105 ISub_1istream.SetParams( SUPERV.SCHENULL , SUPERV.INTERNULL , SUPERV.EXTRANULL )
106 ISub_1Istream = Sub_1.GetInStreamPort( 'Istream' )
107 ISub_1Istream.SetParams( SUPERV.SCHENULL , SUPERV.INTERNULL , SUPERV.EXTRANULL )
109 Mul_1 = GraphStreams.FNode( 'DataStreamFactory' , 'DataStreamFactory' , 'Mul' )
110 Mul_1.SetName( 'Mul_1' )
111 Mul_1.SetAuthor( '' )
112 Mul_1.SetContainer( 'localhost/FactoryServer' )
113 Mul_1.SetComment( 'Mul from DataStreamFactory' )
114 Mul_1.Coords( 730 , 471 )
115 IMul_1x = Mul_1.GetInPort( 'x' )
116 IMul_1y = Mul_1.GetInPort( 'y' )
117 IMul_1Gate = Mul_1.GetInPort( 'Gate' )
118 OMul_1z = Mul_1.GetOutPort( 'z' )
119 OMul_1Gate = Mul_1.GetOutPort( 'Gate' )
121 Div_1 = GraphStreams.FNode( 'DataStreamFactory' , 'DataStreamFactory' , 'Div' )
122 Div_1.SetName( 'Div_1' )
123 Div_1.SetAuthor( '' )
124 Div_1.SetContainer( 'localhost/FactoryServer' )
125 Div_1.SetComment( 'Div from DataStreamFactory' )
126 Div_1.Coords( 931 , 369 )
127 IDiv_1x = Div_1.GetInPort( 'x' )
128 IDiv_1y = Div_1.GetInPort( 'y' )
129 IDiv_1Gate = Div_1.GetInPort( 'Gate' )
130 ODiv_1z = Div_1.GetOutPort( 'z' )
131 ODiv_1Gate = Div_1.GetOutPort( 'Gate' )
132 ODiv_1ostream = Div_1.GetOutStreamPort( 'ostream' )
133 ODiv_1ostream.SetNumberOfValues( 0 )
135 # Creation of Loop Nodes
137 PyLoop.append( 'import time ' )
138 PyLoop.append( 'def Init(Index,Min,Max,Incr,Z_Div,Z_Div_1,y_Add,x_Sub) : ' )
139 PyLoop.append( ' if Min <= Max : ' )
140 PyLoop.append( ' Index = Min ' )
141 PyLoop.append( ' else : ' )
142 PyLoop.append( ' Index = Max ' )
143 PyLoop.append( ' time.sleep( 1 ) ' )
144 PyLoop.append( ' return Index,Min,Max,Incr,Z_Div,Z_Div_1,y_Add,x_Sub ' )
146 PyMoreLoop.append( 'import time ' )
147 PyMoreLoop.append( 'def More(Index,Min,Max,Incr,Z_Div,Z_Div_1,y_Add,x_Sub) : ' )
148 PyMoreLoop.append( ' if Index < Max : ' )
149 PyMoreLoop.append( ' DoLoop = 1 ' )
150 PyMoreLoop.append( ' else : ' )
151 PyMoreLoop.append( ' DoLoop = 0 ' )
152 PyMoreLoop.append( ' time.sleep( 1 ) ' )
153 PyMoreLoop.append( ' return DoLoop,Index,Min,Max,Incr,Z_Div,Z_Div_1,y_Add,x_Sub ' )
155 PyNextLoop.append( 'import time ' )
156 PyNextLoop.append( 'def Next(Index,Min,Max,Incr,Z_Div,Z_Div_1,y_Add,x_Sub) : ' )
157 PyNextLoop.append( ' Index = Index + Incr ' )
158 PyNextLoop.append( ' time.sleep( 1 ) ' )
159 PyNextLoop.append( ' return Index,Min,Max,Incr,Z_Div,Z_Div_1,y_Add,x_Sub ' )
160 Loop,EndLoop = GraphStreams.LNode( 'Init' , PyLoop , 'More' , PyMoreLoop , 'Next' , PyNextLoop )
161 EndLoop.SetName( 'EndLoop' )
162 EndLoop.SetAuthor( '' )
163 EndLoop.SetComment( '' )
164 EndLoop.Coords( 1157 , 388 )
166 EndLoop.SetPyFunction( 'EndInit' , PyEndLoop )
167 ILoopInitLoop = Loop.GetInPort( 'InitLoop' )
168 ILoopIndex = Loop.InPort( 'Index' , 'long' )
169 ILoopMin = Loop.InPort( 'Min' , 'long' )
170 ILoopMax = Loop.InPort( 'Max' , 'long' )
171 ILoopIncr = Loop.InPort( 'Incr' , 'long' )
172 ILoopz_Div = Loop.InPort( 'z_Div' , 'double' )
173 ILoopz_Div_1 = Loop.InPort( 'z_Div_1' , 'double' )
174 ILoopy_Add = Loop.InPort( 'y_Add' , 'double' )
175 ILoopx_Sub = Loop.InPort( 'x_Sub' , 'double' )
176 ILoopGate = Loop.GetInPort( 'Gate' )
177 OLoopDoLoop = Loop.GetOutPort( 'DoLoop' )
178 OLoopIndex = Loop.GetOutPort( 'Index' )
179 OLoopMin = Loop.GetOutPort( 'Min' )
180 OLoopMax = Loop.GetOutPort( 'Max' )
181 OLoopIncr = Loop.GetOutPort( 'Incr' )
182 OLoopz_Div = Loop.GetOutPort( 'z_Div' )
183 OLoopz_Div_1 = Loop.GetOutPort( 'z_Div_1' )
184 OLoopy_Add = Loop.GetOutPort( 'y_Add' )
185 OLoopx_Sub = Loop.GetOutPort( 'x_Sub' )
186 IEndLoopDoLoop = EndLoop.GetInPort( 'DoLoop' )
187 IEndLoopIndex = EndLoop.GetInPort( 'Index' )
188 IEndLoopMin = EndLoop.GetInPort( 'Min' )
189 IEndLoopMax = EndLoop.GetInPort( 'Max' )
190 IEndLoopIncr = EndLoop.GetInPort( 'Incr' )
191 IEndLoopz_Div = EndLoop.GetInPort( 'z_Div' )
192 IEndLoopz_Div_1 = EndLoop.GetInPort( 'z_Div_1' )
193 IEndLoopy_Add = EndLoop.GetInPort( 'y_Add' )
194 IEndLoopx_Sub = EndLoop.GetInPort( 'x_Sub' )
195 IEndLoopGate = EndLoop.GetInPort( 'Gate' )
196 OEndLoopDoLoop = EndLoop.GetOutPort( 'DoLoop' )
197 OEndLoopIndex = EndLoop.GetOutPort( 'Index' )
198 OEndLoopMin = EndLoop.GetOutPort( 'Min' )
199 OEndLoopMax = EndLoop.GetOutPort( 'Max' )
200 OEndLoopIncr = EndLoop.GetOutPort( 'Incr' )
201 OEndLoopz_Div = EndLoop.GetOutPort( 'z_Div' )
202 OEndLoopz_Div_1 = EndLoop.GetOutPort( 'z_Div_1' )
203 OEndLoopy_Add = EndLoop.GetOutPort( 'y_Add' )
204 OEndLoopx_Sub = EndLoop.GetOutPort( 'x_Sub' )
205 Loop.SetName( 'Loop' )
207 Loop.SetComment( '' )
208 Loop.Coords( 5 , 399 )
211 LAddzSuby = GraphStreams.Link( OAddz , ISuby )
212 LAddzSuby.AddCoord( 1 , 448 , 143 )
213 LAddzSuby.AddCoord( 2 , 449 , 237 )
215 LAddzMuly = GraphStreams.Link( OAddz , IMuly )
217 LAddostreamSubistream = GraphStreams.StreamLink( OAddostream , ISubistream )
218 LAddostreamSubistream.AddCoord( 1 , 474 , 172 )
219 LAddostreamSubistream.AddCoord( 2 , 474 , 294 )
221 LAddOStreamSubIstream = GraphStreams.StreamLink( OAddOStream , ISubIstream )
222 LAddOStreamSubIstream.AddCoord( 1 , 499 , 201 )
223 LAddOStreamSubIstream.AddCoord( 2 , 500 , 322 )
225 LSubzMulx = GraphStreams.Link( OSubz , IMulx )
226 LSubzMulx.AddCoord( 1 , 706 , 207 )
227 LSubzMulx.AddCoord( 2 , 706 , 114 )
229 LSubzDivx = GraphStreams.Link( OSubz , IDivx )
231 LMulzDivy = GraphStreams.Link( OMulz , IDivy )
232 LMulzDivy.AddCoord( 1 , 912 , 143 )
233 LMulzDivy.AddCoord( 2 , 911 , 208 )
235 LDivzEndLoopz_Div = GraphStreams.Link( ODivz , IEndLoopz_Div )
236 LDivzEndLoopz_Div.AddCoord( 1 , 1147 , 537 )
237 LDivzEndLoopz_Div.AddCoord( 2 , 1148 , 113 )
239 LDivostreamAdd_1istream = GraphStreams.StreamLink( ODivostream , IAdd_1istream )
240 LDivostreamAdd_1istream.AddCoord( 1 , 232 , 638 )
241 LDivostreamAdd_1istream.AddCoord( 2 , 232 , 763 )
242 LDivostreamAdd_1istream.AddCoord( 3 , 1126 , 763 )
243 LDivostreamAdd_1istream.AddCoord( 4 , 1125 , 144 )
245 LAdd_1zSub_1y = GraphStreams.Link( OAdd_1z , ISub_1y )
246 LAdd_1zSub_1y.AddCoord( 1 , 445 , 478 )
247 LAdd_1zSub_1y.AddCoord( 2 , 445 , 582 )
249 LAdd_1zMul_1y = GraphStreams.Link( OAdd_1z , IMul_1y )
251 LAdd_1ostreamSub_1istream = GraphStreams.StreamLink( OAdd_1ostream , ISub_1istream )
252 LAdd_1ostreamSub_1istream.AddCoord( 1 , 473 , 508 )
253 LAdd_1ostreamSub_1istream.AddCoord( 2 , 474 , 638 )
255 LAdd_1OStreamSub_1Istream = GraphStreams.StreamLink( OAdd_1OStream , ISub_1Istream )
256 LAdd_1OStreamSub_1Istream.AddCoord( 1 , 498 , 535 )
257 LAdd_1OStreamSub_1Istream.AddCoord( 2 , 498 , 667 )
259 LSub_1zMul_1x = GraphStreams.Link( OSub_1z , IMul_1x )
260 LSub_1zMul_1x.AddCoord( 1 , 708 , 552 )
261 LSub_1zMul_1x.AddCoord( 2 , 707 , 450 )
263 LSub_1zDiv_1x = GraphStreams.Link( OSub_1z , IDiv_1x )
265 LMul_1zDiv_1y = GraphStreams.Link( OMul_1z , IDiv_1y )
266 LMul_1zDiv_1y.AddCoord( 1 , 913 , 479 )
267 LMul_1zDiv_1y.AddCoord( 2 , 913 , 551 )
269 LDiv_1zEndLoopz_Div_1 = GraphStreams.Link( ODiv_1z , IEndLoopz_Div_1 )
270 LDiv_1zEndLoopz_Div_1.AddCoord( 1 , 1138 , 567 )
271 LDiv_1zEndLoopz_Div_1.AddCoord( 2 , 1138 , 449 )
273 LDiv_1ostreamAddistream = GraphStreams.StreamLink( ODiv_1ostream , IAddistream )
274 LDiv_1ostreamAddistream.AddCoord( 1 , 230 , 293 )
275 LDiv_1ostreamAddistream.AddCoord( 2 , 229 , 426 )
276 LDiv_1ostreamAddistream.AddCoord( 3 , 475 , 425 )
277 LDiv_1ostreamAddistream.AddCoord( 4 , 475 , 352 )
278 LDiv_1ostreamAddistream.AddCoord( 5 , 1110 , 352 )
279 LDiv_1ostreamAddistream.AddCoord( 6 , 1111 , 477 )
281 LLoopIndexEndLoopIndex = GraphStreams.Link( OLoopIndex , IEndLoopIndex )
283 LLoopIndexAddx = GraphStreams.Link( OLoopIndex , IAddx )
284 LLoopIndexAddx.AddCoord( 1 , 201 , 236 )
285 LLoopIndexAddx.AddCoord( 2 , 202 , 433 )
287 LLoopIndexAdd_1x = GraphStreams.Link( OLoopIndex , IAdd_1x )
288 LLoopIndexAdd_1x.AddCoord( 1 , 199 , 578 )
289 LLoopIndexAdd_1x.AddCoord( 2 , 200 , 435 )
291 LLoopMinEndLoopMin = GraphStreams.Link( OLoopMin , IEndLoopMin )
293 LLoopMaxEndLoopMax = GraphStreams.Link( OLoopMax , IEndLoopMax )
295 LLoopIncrEndLoopIncr = GraphStreams.Link( OLoopIncr , IEndLoopIncr )
297 LLoopy_AddEndLoopy_Add = GraphStreams.Link( OLoopy_Add , IEndLoopy_Add )
299 LLoopy_AddAddy = GraphStreams.Link( OLoopy_Add , IAddy )
300 LLoopy_AddAddy.AddCoord( 1 , 183 , 266 )
301 LLoopy_AddAddy.AddCoord( 2 , 183 , 608 )
303 LLoopy_AddAdd_1y = GraphStreams.Link( OLoopy_Add , IAdd_1y )
305 LLoopx_SubEndLoopx_Sub = GraphStreams.Link( OLoopx_Sub , IEndLoopx_Sub )
307 LLoopx_SubSubx = GraphStreams.Link( OLoopx_Sub , ISubx )
308 LLoopx_SubSubx.AddCoord( 1 , 167 , 113 )
309 LLoopx_SubSubx.AddCoord( 2 , 165 , 636 )
311 LLoopx_SubSub_1x = GraphStreams.Link( OLoopx_Sub , ISub_1x )
312 LLoopx_SubSub_1x.AddCoord( 1 , 167 , 450 )
313 LLoopx_SubSub_1x.AddCoord( 2 , 165 , 637 )
316 ILoopIndex.Input( 0 )
320 ILoopz_Div.Input( 0 )
321 ILoopz_Div_1.Input( 0 )
322 ILoopy_Add.Input( 4.5 )
323 ILoopx_Sub.Input( 1.5 )
325 # Output Ports of the graph
326 #OLoopz_Div = Loop.GetOutPort( 'z_Div' )
327 #OLoopz_Div_1 = Loop.GetOutPort( 'z_Div_1' )
328 #OEndLoopIndex = EndLoop.GetOutPort( 'Index' )
329 #OEndLoopMin = EndLoop.GetOutPort( 'Min' )
330 #OEndLoopMax = EndLoop.GetOutPort( 'Max' )
331 #OEndLoopIncr = EndLoop.GetOutPort( 'Incr' )
332 #OEndLoopz_Div = EndLoop.GetOutPort( 'z_Div' )
333 #OEndLoopz_Div_1 = EndLoop.GetOutPort( 'z_Div_1' )
334 #OEndLoopy_Add = EndLoop.GetOutPort( 'y_Add' )
335 #OEndLoopx_Sub = EndLoop.GetOutPort( 'x_Sub' )
340 GraphStreams.PrintPorts()
342 subgraphs = GraphStreams.SubGraphsNumber()
344 while i <= subgraphs :
345 nodes = GraphStreams.SubGraphsNodes( i )
347 while j < len(nodes) :
348 print 'SubGraph',i,nodes[j].Name()
353 substreamgraphs = GraphStreams.SubStreamGraphsNumber()
355 while i <= substreamgraphs :
356 nodes = GraphStreams.SubStreamGraphsNodes( i )
358 while j < len(nodes) :
359 print 'SubStreamGraph',i,nodes[j].Name()
364 GraphStreams.Export('/tmp/GraphStreams.xml')
366 GraphStreams = StreamGraph( '/tmp/GraphStreams.xml' )
369 GraphStreams.PrintPorts()
372 GraphStreams.IsExecutable()
374 subgraphs = GraphStreams.SubGraphsNumber()
376 while i <= subgraphs :
377 nodes = GraphStreams.SubGraphsNodes( i )
379 while j < len(nodes) :
380 print 'SubGraph',i,nodes[j].Name()
385 substreamgraphs = GraphStreams.SubStreamGraphsNumber()
387 while i <= substreamgraphs :
388 nodes = GraphStreams.SubStreamGraphsNodes( i )
390 while j < len(nodes) :
391 print 'SubStreamGraph',i,nodes[j].Name()