Salome HOME
Fix for bug IPAL9207 : 3.0.0 (/dn06/../current1506): executable "GraphLoop1.xml"...
authormkr <mkr@opencascade.com>
Thu, 23 Jun 2005 07:12:28 +0000 (07:12 +0000)
committermkr <mkr@opencascade.com>
Thu, 23 Jun 2005 07:12:28 +0000 (07:12 +0000)
examples/GraphLoop1.py [new file with mode: 0644]
examples/GraphLoop1.xml [new file with mode: 0644]

diff --git a/examples/GraphLoop1.py b/examples/GraphLoop1.py
new file mode 100644 (file)
index 0000000..91b1d72
--- /dev/null
@@ -0,0 +1,122 @@
+
+# Generated python file of Graph GraphLoop_2
+
+from SuperV import *
+
+# Graph creation of GraphLoop_2
+def DefGraphLoop_2() :
+    GraphLoop_2 = Graph( 'GraphLoop_2' )
+    GraphLoop_2.SetName( 'GraphLoop_2' )
+    GraphLoop_2.SetAuthor( '' )
+    GraphLoop_2.SetComment( '' )
+    GraphLoop_2.Coords( 0 , 0 )
+    
+    # Creation of Factory Nodes
+    
+    # Creation of InLine Nodes
+    PyNodeIndex = []
+    NodeIndex = GraphLoop_2.INode( '' , PyNodeIndex )
+    NodeIndex.SetName( 'NodeIndex' )
+    NodeIndex.SetAuthor( '' )
+    NodeIndex.SetComment( 'Compute Node' )
+    NodeIndex.Coords( 281 , 215 )
+    INodeIndexIndex = NodeIndex.InPort( 'Index' , 'long' )
+    INodeIndexGate = NodeIndex.GetInPort( 'Gate' )
+    ONodeIndexIndex = NodeIndex.OutPort( 'Index' , 'long' )
+    ONodeIndexGate = NodeIndex.GetOutPort( 'Gate' )
+    
+    PyNodeIncr = []
+    NodeIncr = GraphLoop_2.INode( '' , PyNodeIncr )
+    NodeIncr.SetName( 'NodeIncr' )
+    NodeIncr.SetAuthor( '' )
+    NodeIncr.SetComment( 'Compute Node' )
+    NodeIncr.Coords( 278 , 372 )
+    INodeIncrIncr = NodeIncr.InPort( 'Incr' , 'long' )
+    INodeIncrGate = NodeIncr.GetInPort( 'Gate' )
+    ONodeIncrIncr = NodeIncr.OutPort( 'Incr' , 'long' )
+    ONodeIncrGate = NodeIncr.GetOutPort( 'Gate' )
+    
+    # Creation of Loop Nodes
+    PyInit = []
+    PyInit.append( 'def Init(Index,Min,Max,Incr) :   ' )
+    PyInit.append( '    if Min <= Max :   ' )
+    PyInit.append( '        Index = Min   ' )
+    PyInit.append( '    else :   ' )
+    PyInit.append( '        Index = Max   ' )
+    PyInit.append( '    return Index,Min,Max,Incr   ' )
+    PyMoreInit = []
+    PyMoreInit.append( 'import time ' )
+    PyMoreInit.append( 'def More(Index,Min,Max,Incr) :   ' )
+    PyMoreInit.append( '    time.sleep(2) ' )
+    PyMoreInit.append( '    if Index < Max :   ' )
+    PyMoreInit.append( '        DoLoop = 1   ' )
+    PyMoreInit.append( '    else :   ' )
+    PyMoreInit.append( '        DoLoop = 0   ' )
+    PyMoreInit.append( '    return DoLoop,Index,Min,Max,Incr   ' )
+    PyNextInit = []
+    PyNextInit.append( 'def Next(Index,Min,Max,Incr) :   ' )
+    PyNextInit.append( '    Index = Index + Incr   ' )
+    PyNextInit.append( '    return Index,Min,Max,Incr  ' )
+    Init,EndInit = GraphLoop_2.LNode( 'Init' , PyInit , 'More' , PyMoreInit , 'Next' , PyNextInit )
+    EndInit.SetName( 'EndInit' )
+    EndInit.SetAuthor( '' )
+    EndInit.SetComment( 'Compute Node' )
+    EndInit.Coords( 555 , 255 )
+    PyEndInit = []
+    EndInit.SetPyFunction( '' , PyEndInit )
+    IInitDoLoop = Init.GetInPort( 'DoLoop' )
+    IInitIndex = Init.InPort( 'Index' , 'long' )
+    IInitMin = Init.InPort( 'Min' , 'long' )
+    IInitMax = Init.InPort( 'Max' , 'long' )
+    IInitIncr = Init.InPort( 'Incr' , 'long' )
+    IInitGate = Init.GetInPort( 'Gate' )
+    OInitDoLoop = Init.GetOutPort( 'DoLoop' )
+    OInitIndex = Init.GetOutPort( 'Index' )
+    OInitMin = Init.GetOutPort( 'Min' )
+    OInitMax = Init.GetOutPort( 'Max' )
+    OInitIncr = Init.GetOutPort( 'Incr' )
+    IEndInitDoLoop = EndInit.GetInPort( 'DoLoop' )
+    IEndInitIndex = EndInit.GetInPort( 'Index' )
+    IEndInitMin = EndInit.GetInPort( 'Min' )
+    IEndInitMax = EndInit.GetInPort( 'Max' )
+    IEndInitIncr = EndInit.GetInPort( 'Incr' )
+    IEndInitGate = EndInit.GetInPort( 'Gate' )
+    OEndInitDoLoop = EndInit.GetOutPort( 'DoLoop' )
+    OEndInitIndex = EndInit.GetOutPort( 'Index' )
+    OEndInitMin = EndInit.GetOutPort( 'Min' )
+    OEndInitMax = EndInit.GetOutPort( 'Max' )
+    OEndInitIncr = EndInit.GetOutPort( 'Incr' )
+    OEndInitGate = EndInit.GetOutPort( 'Gate' )
+    Init.SetName( 'Init' )
+    Init.SetAuthor( '' )
+    Init.SetComment( 'Compute Node' )
+    Init.Coords( 17 , 257 )
+    
+    # Creation of Links
+    LInitIndexNodeIndexIndex = GraphLoop_2.Link( OInitIndex , INodeIndexIndex )
+    
+    LInitMinEndInitMin = GraphLoop_2.Link( OInitMin , IEndInitMin )
+    
+    LInitMaxEndInitMax = GraphLoop_2.Link( OInitMax , IEndInitMax )
+    
+    LInitIncrNodeIncrIncr = GraphLoop_2.Link( OInitIncr , INodeIncrIncr )
+    
+    LNodeIndexIndexEndInitIndex = GraphLoop_2.Link( ONodeIndexIndex , IEndInitIndex )
+    
+    LNodeIncrIncrEndInitIncr = GraphLoop_2.Link( ONodeIncrIncr , IEndInitIncr )
+    
+    # Input datas
+    IInitIndex.Input( 0 )
+    IInitMin.Input( 5 )
+    IInitMax.Input( 10 )
+    IInitIncr.Input( 1 )
+    
+    # Output Ports of the graph
+    #OEndInitIndex = EndInit.GetOutPort( 'Index' )
+    #OEndInitMin = EndInit.GetOutPort( 'Min' )
+    #OEndInitMax = EndInit.GetOutPort( 'Max' )
+    #OEndInitIncr = EndInit.GetOutPort( 'Incr' )
+    return GraphLoop_2
+
+
+GraphLoop_2 = DefGraphLoop_2()
diff --git a/examples/GraphLoop1.xml b/examples/GraphLoop1.xml
new file mode 100644 (file)
index 0000000..19a8a72
--- /dev/null
@@ -0,0 +1,307 @@
+<!DOCTYPE SuperGraph>
+<supergraph>
+<dataflow>
+<info-list>
+<node>
+<component-name>?</component-name>
+    <interface-name>?</interface-name>
+    <node-name>GraphLoop_2</node-name>
+    <kind>1</kind>
+    <coupled-node>?</coupled-node>
+    <service>
+<service-name>GraphLoop_2</service-name>
+     <inParameter-list>
+<inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Init__Index</inParameter-name>      </inParameter>
+      <inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Init__Min</inParameter-name>      </inParameter>
+      <inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Init__Max</inParameter-name>      </inParameter>
+      <inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Init__Incr</inParameter-name>      </inParameter>     </inParameter-list>
+     <outParameter-list>
+<outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>EndInit__Index</outParameter-name>      </outParameter>
+      <outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>EndInit__Min</outParameter-name>      </outParameter>
+      <outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>EndInit__Max</outParameter-name>      </outParameter>
+      <outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>EndInit__Incr</outParameter-name>      </outParameter>     </outParameter-list>    </service>
+    <DataStream-list/>
+    <PyFunction-list/>
+    <creation-date>24/3/2003 - 14:44:35</creation-date>
+    <lastmodification-date>26/5/2005 - 10:10:48</lastmodification-date>
+    <editor-release>1.04</editor-release>
+    <author>?</author>
+    <container>?</container>
+    <comment>?</comment>
+    <x-position>0</x-position>
+    <y-position>0</y-position>   </node>  </info-list>
+  <node-list>
+<node>
+<component-name>?</component-name>
+    <interface-name>?</interface-name>
+    <node-name>Init</node-name>
+    <kind>4</kind>
+    <coupled-node>EndInit</coupled-node>
+    <service>
+<service-name>Init</service-name>
+     <inParameter-list>
+<inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Index</inParameter-name>      </inParameter>
+      <inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Min</inParameter-name>      </inParameter>
+      <inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Max</inParameter-name>      </inParameter>
+      <inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Incr</inParameter-name>      </inParameter>     </inParameter-list>
+     <outParameter-list>
+<outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>Index</outParameter-name>      </outParameter>
+      <outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>Min</outParameter-name>      </outParameter>
+      <outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>Max</outParameter-name>      </outParameter>
+      <outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>Incr</outParameter-name>      </outParameter>     </outParameter-list>    </service>
+    <DataStream-list/>
+    <PyFunction-list>
+<PyFunction>
+<FuncName>Init</FuncName>
+      <PyFunc><![CDATA[def Init(Index,Min,Max,Incr) :   ]]></PyFunc>
+      <PyFunc><![CDATA[    if Min <= Max :   ]]></PyFunc>
+      <PyFunc><![CDATA[        Index = Min   ]]></PyFunc>
+      <PyFunc><![CDATA[    else :   ]]></PyFunc>
+      <PyFunc><![CDATA[        Index = Max   ]]></PyFunc>
+      <PyFunc><![CDATA[    return Index,Min,Max,Incr   ]]></PyFunc>     </PyFunction>
+     <PyFunction>
+<FuncName>More</FuncName>
+      <PyFunc><![CDATA[import time ]]></PyFunc>
+      <PyFunc><![CDATA[def More(Index,Min,Max,Incr) :   ]]></PyFunc>
+      <PyFunc><![CDATA[    time.sleep(2) ]]></PyFunc>
+      <PyFunc><![CDATA[    if Index < Max :   ]]></PyFunc>
+      <PyFunc><![CDATA[        DoLoop = 1   ]]></PyFunc>
+      <PyFunc><![CDATA[    else :   ]]></PyFunc>
+      <PyFunc><![CDATA[        DoLoop = 0   ]]></PyFunc>
+      <PyFunc><![CDATA[    return DoLoop,Index,Min,Max,Incr   ]]></PyFunc>     </PyFunction>
+     <PyFunction>
+<FuncName>Next</FuncName>
+      <PyFunc><![CDATA[def Next(Index,Min,Max,Incr) :   ]]></PyFunc>
+      <PyFunc><![CDATA[    Index = Index + Incr   ]]></PyFunc>
+      <PyFunc><![CDATA[    return Index,Min,Max,Incr  ]]></PyFunc>     </PyFunction>    </PyFunction-list>
+    <creation-date>26/5/2005 - 10:10:48</creation-date>
+    <lastmodification-date>26/5/2005 - 10:10:48</lastmodification-date>
+    <editor-release>1.04</editor-release>
+    <author>?</author>
+    <container>?</container>
+    <comment>Compute Node</comment>
+    <x-position>17</x-position>
+    <y-position>257</y-position>   </node>
+   <node>
+<component-name>?</component-name>
+    <interface-name>?</interface-name>
+    <node-name>EndInit</node-name>
+    <kind>5</kind>
+    <coupled-node>Init</coupled-node>
+    <service>
+<service-name>EndInit</service-name>
+     <inParameter-list>
+<inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Index</inParameter-name>      </inParameter>
+      <inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Min</inParameter-name>      </inParameter>
+      <inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Max</inParameter-name>      </inParameter>
+      <inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Incr</inParameter-name>      </inParameter>     </inParameter-list>
+     <outParameter-list>
+<outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>Index</outParameter-name>      </outParameter>
+      <outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>Min</outParameter-name>      </outParameter>
+      <outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>Max</outParameter-name>      </outParameter>
+      <outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>Incr</outParameter-name>      </outParameter>     </outParameter-list>    </service>
+    <DataStream-list/>
+    <PyFunction-list>
+<PyFunction>
+<FuncName>?</FuncName>
+      <PyFunc><![CDATA[?]]></PyFunc>     </PyFunction>    </PyFunction-list>
+    <creation-date>26/5/2005 - 10:10:48</creation-date>
+    <lastmodification-date>26/5/2005 - 10:10:48</lastmodification-date>
+    <editor-release>1.04</editor-release>
+    <author>?</author>
+    <container>?</container>
+    <comment>Compute Node</comment>
+    <x-position>555</x-position>
+    <y-position>255</y-position>   </node>
+   <node>
+<component-name>?</component-name>
+    <interface-name>?</interface-name>
+    <node-name>NodeIndex</node-name>
+    <kind>3</kind>
+    <coupled-node>?</coupled-node>
+    <service>
+<service-name>NodeIndex</service-name>
+     <inParameter-list>
+<inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Index</inParameter-name>      </inParameter>     </inParameter-list>
+     <outParameter-list>
+<outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>Index</outParameter-name>      </outParameter>     </outParameter-list>    </service>
+    <DataStream-list/>
+    <PyFunction-list>
+<PyFunction>
+<FuncName>?</FuncName>
+      <PyFunc><![CDATA[?]]></PyFunc>     </PyFunction>    </PyFunction-list>
+    <creation-date>26/5/2005 - 10:10:48</creation-date>
+    <lastmodification-date>26/5/2005 - 10:10:48</lastmodification-date>
+    <editor-release>2.0</editor-release>
+    <author>?</author>
+    <container>?</container>
+    <comment>Compute Node</comment>
+    <x-position>281</x-position>
+    <y-position>215</y-position>   </node>
+   <node>
+<component-name>?</component-name>
+    <interface-name>?</interface-name>
+    <node-name>NodeIncr</node-name>
+    <kind>3</kind>
+    <coupled-node>?</coupled-node>
+    <service>
+<service-name>NodeIncr</service-name>
+     <inParameter-list>
+<inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>Incr</inParameter-name>      </inParameter>     </inParameter-list>
+     <outParameter-list>
+<outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>Incr</outParameter-name>      </outParameter>     </outParameter-list>    </service>
+    <DataStream-list/>
+    <PyFunction-list>
+<PyFunction>
+<FuncName>?</FuncName>
+      <PyFunc><![CDATA[?]]></PyFunc>     </PyFunction>    </PyFunction-list>
+    <creation-date>26/5/2005 - 10:10:48</creation-date>
+    <lastmodification-date>26/5/2005 - 10:10:48</lastmodification-date>
+    <editor-release>2.0</editor-release>
+    <author>?</author>
+    <container>?</container>
+    <comment>Compute Node</comment>
+    <x-position>278</x-position>
+    <y-position>372</y-position>   </node>  </node-list>
+  <link-list>
+<link>
+<fromnode-name>Init</fromnode-name>
+    <fromserviceparameter-name>DoLoop</fromserviceparameter-name>
+    <tonode-name>EndInit</tonode-name>
+    <toserviceparameter-name>DoLoop</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>Init</fromnode-name>
+    <fromserviceparameter-name>Index</fromserviceparameter-name>
+    <tonode-name>NodeIndex</tonode-name>
+    <toserviceparameter-name>Index</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>Init</fromnode-name>
+    <fromserviceparameter-name>Min</fromserviceparameter-name>
+    <tonode-name>EndInit</tonode-name>
+    <toserviceparameter-name>Min</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>Init</fromnode-name>
+    <fromserviceparameter-name>Max</fromserviceparameter-name>
+    <tonode-name>EndInit</tonode-name>
+    <toserviceparameter-name>Max</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>Init</fromnode-name>
+    <fromserviceparameter-name>Incr</fromserviceparameter-name>
+    <tonode-name>NodeIncr</tonode-name>
+    <toserviceparameter-name>Incr</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>EndInit</fromnode-name>
+    <fromserviceparameter-name>DoLoop</fromserviceparameter-name>
+    <tonode-name>Init</tonode-name>
+    <toserviceparameter-name>DoLoop</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>NodeIndex</fromnode-name>
+    <fromserviceparameter-name>Index</fromserviceparameter-name>
+    <tonode-name>EndInit</tonode-name>
+    <toserviceparameter-name>Index</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>NodeIncr</fromnode-name>
+    <fromserviceparameter-name>Incr</fromserviceparameter-name>
+    <tonode-name>EndInit</tonode-name>
+    <toserviceparameter-name>Incr</toserviceparameter-name>
+    <coord-list/>   </link>  </link-list>
+  <data-list>
+<data>
+<fromnode-name>GraphLoop_2</fromnode-name>
+    <fromserviceparameter-name>Init__Index</fromserviceparameter-name>
+    <tonode-name>Init</tonode-name>
+    <toserviceparameter-name>Index</toserviceparameter-name>
+    <data-value>
+<value-type>3</value-type>
+     <value>0</value>    </data-value>
+    <coord-list/>   </data>
+   <data>
+<fromnode-name>GraphLoop_2</fromnode-name>
+    <fromserviceparameter-name>Init__Min</fromserviceparameter-name>
+    <tonode-name>Init</tonode-name>
+    <toserviceparameter-name>Min</toserviceparameter-name>
+    <data-value>
+<value-type>3</value-type>
+     <value>5</value>    </data-value>
+    <coord-list/>   </data>
+   <data>
+<fromnode-name>GraphLoop_2</fromnode-name>
+    <fromserviceparameter-name>Init__Max</fromserviceparameter-name>
+    <tonode-name>Init</tonode-name>
+    <toserviceparameter-name>Max</toserviceparameter-name>
+    <data-value>
+<value-type>3</value-type>
+     <value>10</value>    </data-value>
+    <coord-list/>   </data>
+   <data>
+<fromnode-name>GraphLoop_2</fromnode-name>
+    <fromserviceparameter-name>Init__Incr</fromserviceparameter-name>
+    <tonode-name>Init</tonode-name>
+    <toserviceparameter-name>Incr</toserviceparameter-name>
+    <data-value>
+<value-type>3</value-type>
+     <value>1</value>    </data-value>
+    <coord-list/>   </data>  </data-list> </dataflow></supergraph>