]> SALOME platform Git repositories - modules/superv.git/commitdiff
Salome HOME
More than one branch of a switch is activated, the SwitchNode is aborted
authorrahuel <rahuel@opencascade.com>
Wed, 12 Jan 2005 13:35:31 +0000 (13:35 +0000)
committerrahuel <rahuel@opencascade.com>
Wed, 12 Jan 2005 13:35:31 +0000 (13:35 +0000)
examples/GraphSwitchErrExec.py [new file with mode: 0644]
examples/GraphSwitchErrExec.xml [new file with mode: 0644]

diff --git a/examples/GraphSwitchErrExec.py b/examples/GraphSwitchErrExec.py
new file mode 100644 (file)
index 0000000..4706bb0
--- /dev/null
@@ -0,0 +1,164 @@
+
+# Generated python file of Graph GraphSwitch_1
+
+from SuperV import *
+
+# Graph creation of GraphSwitch_1
+def DefGraphSwitch_1() :
+    GraphSwitch_1 = Graph( 'GraphSwitch_1' )
+    GraphSwitch_1.SetName( 'GraphSwitch_1' )
+    GraphSwitch_1.SetAuthor( '' )
+    GraphSwitch_1.SetComment( '' )
+    GraphSwitch_1.Coords( 0 , 0 )
+    
+    # Creation of Factory Nodes
+    
+    # Creation of InLine Nodes
+    PyIsOdd = []
+    PyIsOdd.append( 'from time import *   ' )
+    PyIsOdd.append( 'def IsOdd(a) :       ' )
+    PyIsOdd.append( '    print a,"IsOdd (GraphSwitch)"      ' )
+    PyIsOdd.append( '    sleep( 1 )   ' )
+    PyIsOdd.append( '    return a     ' )
+    IsOdd = GraphSwitch_1.INode( 'IsOdd' , PyIsOdd )
+    IsOdd.SetName( 'IsOdd' )
+    IsOdd.SetAuthor( '' )
+    IsOdd.SetComment( 'Python function' )
+    IsOdd.Coords( 388 , 50 )
+    IIsOdda = IsOdd.InPort( 'a' , 'long' )
+    IIsOddGate = IsOdd.GetInPort( 'Gate' )
+    OIsOdda = IsOdd.OutPort( 'a' , 'long' )
+    OIsOddGate = IsOdd.GetOutPort( 'Gate' )
+    
+    PyIsEven = []
+    PyIsEven.append( 'from time import *    ' )
+    PyIsEven.append( 'def IsEven(a) :        ' )
+    PyIsEven.append( '    print a,"IsEven (GraphSwitch)"       ' )
+    PyIsEven.append( '    sleep( 1 )    ' )
+    PyIsEven.append( '    return a      ' )
+    IsEven = GraphSwitch_1.INode( 'IsEven' , PyIsEven )
+    IsEven.SetName( 'IsEven' )
+    IsEven.SetAuthor( '' )
+    IsEven.SetComment( 'Compute Node' )
+    IsEven.Coords( 397 , 279 )
+    IIsEvena = IsEven.InPort( 'a' , 'long' )
+    IIsEvenGate = IsEven.GetInPort( 'Gate' )
+    OIsEvena = IsEven.OutPort( 'a' , 'long' )
+    OIsEvenGate = IsEven.GetOutPort( 'Gate' )
+    
+    # Creation of Loop Nodes
+    PyInitLoopSwitch = []
+    PyInitLoopSwitch.append( 'def InitLoop(Index,Min,Max) :       ' )
+    PyInitLoopSwitch.append( ' Index = Max ' )
+    PyInitLoopSwitch.append( ' return Index,Min,Max      ' )
+    PyMoreInitLoopSwitch = []
+    PyMoreInitLoopSwitch.append( 'def MoreLoop(Index,Min,Max) :      ' )
+    PyMoreInitLoopSwitch.append( '     if Index >= Min :    ' )
+    PyMoreInitLoopSwitch.append( '             DoLoop = 1      ' )
+    PyMoreInitLoopSwitch.append( '     else :      ' )
+    PyMoreInitLoopSwitch.append( '             DoLoop = 0      ' )
+    PyMoreInitLoopSwitch.append( '     return DoLoop,Index,Min,Max      ' )
+    PyNextInitLoopSwitch = []
+    PyNextInitLoopSwitch.append( 'def NextLoop(Index,Min,Max) :      ' )
+    PyNextInitLoopSwitch.append( '     Index = Index - 1      ' )
+    PyNextInitLoopSwitch.append( '     return Index,Min,Max      ' )
+    InitLoopSwitch,EndOfInitLoopSwitch = GraphSwitch_1.LNode( 'InitLoop' , PyInitLoopSwitch , 'MoreLoop' , PyMoreInitLoopSwitch , 'NextLoop' , PyNextInitLoopSwitch )
+    EndOfInitLoopSwitch.SetName( 'EndOfInitLoopSwitch' )
+    EndOfInitLoopSwitch.SetAuthor( '' )
+    EndOfInitLoopSwitch.SetComment( 'Compute Node' )
+    EndOfInitLoopSwitch.Coords( 766 , 127 )
+    PyEndOfInitLoopSwitch = []
+    EndOfInitLoopSwitch.SetPyFunction( '' , PyEndOfInitLoopSwitch )
+    IInitLoopSwitchDoLoop = InitLoopSwitch.GetInPort( 'DoLoop' )
+    IInitLoopSwitchIndex = InitLoopSwitch.InPort( 'Index' , 'long' )
+    IInitLoopSwitchMin = InitLoopSwitch.InPort( 'Min' , 'long' )
+    IInitLoopSwitchMax = InitLoopSwitch.InPort( 'Max' , 'long' )
+    IInitLoopSwitchGate = InitLoopSwitch.GetInPort( 'Gate' )
+    OInitLoopSwitchDoLoop = InitLoopSwitch.GetOutPort( 'DoLoop' )
+    OInitLoopSwitchIndex = InitLoopSwitch.GetOutPort( 'Index' )
+    OInitLoopSwitchMin = InitLoopSwitch.GetOutPort( 'Min' )
+    OInitLoopSwitchMax = InitLoopSwitch.GetOutPort( 'Max' )
+    IEndOfInitLoopSwitchDoLoop = EndOfInitLoopSwitch.GetInPort( 'DoLoop' )
+    IEndOfInitLoopSwitchIndex = EndOfInitLoopSwitch.GetInPort( 'Index' )
+    IEndOfInitLoopSwitchMin = EndOfInitLoopSwitch.GetInPort( 'Min' )
+    IEndOfInitLoopSwitchMax = EndOfInitLoopSwitch.GetInPort( 'Max' )
+    IEndOfInitLoopSwitchGate = EndOfInitLoopSwitch.GetInPort( 'Gate' )
+    OEndOfInitLoopSwitchDoLoop = EndOfInitLoopSwitch.GetOutPort( 'DoLoop' )
+    OEndOfInitLoopSwitchIndex = EndOfInitLoopSwitch.GetOutPort( 'Index' )
+    OEndOfInitLoopSwitchMin = EndOfInitLoopSwitch.GetOutPort( 'Min' )
+    OEndOfInitLoopSwitchMax = EndOfInitLoopSwitch.GetOutPort( 'Max' )
+    OEndOfInitLoopSwitchGate = EndOfInitLoopSwitch.GetOutPort( 'Gate' )
+    InitLoopSwitch.SetName( 'InitLoopSwitch' )
+    InitLoopSwitch.SetAuthor( '' )
+    InitLoopSwitch.SetComment( 'Compute Node' )
+    InitLoopSwitch.Coords( 10 , 129 )
+    
+    # Creation of Switch Nodes
+    PySwitch = []
+    PySwitch.append( 'from time import *     ' )
+    PySwitch.append( 'def Switch(a) :       ' )
+    PySwitch.append( '    if a == 0 :    ' )
+    PySwitch.append( '        return 0,0,a ' )
+    PySwitch.append( '    if a < 0 : ' )
+    PySwitch.append( '        return 1,1,a ' )
+    PySwitch.append( '    if ( a & 1 ) == 0 :     ' )
+    PySwitch.append( '        sleep(1)        ' )
+    PySwitch.append( '    return a & 1,1-(a&1),a        ' )
+    Switch,EndOfSwitch = GraphSwitch_1.SNode( 'Switch' , PySwitch )
+    EndOfSwitch.SetName( 'EndOfSwitch' )
+    EndOfSwitch.SetAuthor( '' )
+    EndOfSwitch.SetComment( 'Compute Node' )
+    EndOfSwitch.Coords( 580 , 147 )
+    PyEndOfSwitch = []
+    EndOfSwitch.SetPyFunction( 'EndSwitch_1' , PyEndOfSwitch )
+    IEndOfSwitcha = EndOfSwitch.InPort( 'a' , 'long' )
+    IEndOfSwitchDefault = EndOfSwitch.GetInPort( 'Default' )
+    OEndOfSwitcha = EndOfSwitch.OutPort( 'a' , 'long' )
+    OEndOfSwitchGate = EndOfSwitch.GetOutPort( 'Gate' )
+    Switch.SetName( 'Switch' )
+    Switch.SetAuthor( '' )
+    Switch.SetComment( 'Compute Node' )
+    Switch.Coords( 195 , 129 )
+    ISwitcha = Switch.InPort( 'a' , 'long' )
+    ISwitchGate = Switch.GetInPort( 'Gate' )
+    OSwitchOdd = Switch.OutPort( 'Odd' , 'long' )
+    OSwitchEven = Switch.OutPort( 'Even' , 'int' )
+    OSwitcha = Switch.OutPort( 'a' , 'int' )
+    OSwitchDefault = Switch.GetOutPort( 'Default' )
+    
+    # Creation of Links
+    LIsOddaEndOfSwitcha = GraphSwitch_1.Link( OIsOdda , IEndOfSwitcha )
+    
+    LInitLoopSwitchIndexSwitcha = GraphSwitch_1.Link( OInitLoopSwitchIndex , ISwitcha )
+    
+    LInitLoopSwitchMinEndOfInitLoopSwitchMin = GraphSwitch_1.Link( OInitLoopSwitchMin , IEndOfInitLoopSwitchMin )
+    
+    LInitLoopSwitchMaxEndOfInitLoopSwitchMax = GraphSwitch_1.Link( OInitLoopSwitchMax , IEndOfInitLoopSwitchMax )
+    
+    LIsEvenaEndOfSwitcha = GraphSwitch_1.Link( OIsEvena , IEndOfSwitcha )
+    
+    LSwitchOddIsOddGate = GraphSwitch_1.Link( OSwitchOdd , IIsOddGate )
+    
+    LSwitchEvenIsEvenGate = GraphSwitch_1.Link( OSwitchEven , IIsEvenGate )
+    
+    LSwitchaIsOdda = GraphSwitch_1.Link( OSwitcha , IIsOdda )
+    
+    LSwitchaIsEvena = GraphSwitch_1.Link( OSwitcha , IIsEvena )
+    
+    LSwitchDefaultEndOfSwitchDefault = GraphSwitch_1.Link( OSwitchDefault , IEndOfSwitchDefault )
+    
+    LEndOfSwitchaEndOfInitLoopSwitchIndex = GraphSwitch_1.Link( OEndOfSwitcha , IEndOfInitLoopSwitchIndex )
+    
+    # Input datas
+    IInitLoopSwitchIndex.Input( 0 )
+    IInitLoopSwitchMin.Input( -5 )
+    IInitLoopSwitchMax.Input( 10 )
+    
+    # Output Ports of the graph
+    #OEndOfInitLoopSwitchIndex = EndOfInitLoopSwitch.GetOutPort( 'Index' )
+    #OEndOfInitLoopSwitchMin = EndOfInitLoopSwitch.GetOutPort( 'Min' )
+    #OEndOfInitLoopSwitchMax = EndOfInitLoopSwitch.GetOutPort( 'Max' )
+    return GraphSwitch_1
+
+
+GraphSwitch_1 = DefGraphSwitch_1()
diff --git a/examples/GraphSwitchErrExec.xml b/examples/GraphSwitchErrExec.xml
new file mode 100644 (file)
index 0000000..e588ff6
--- /dev/null
@@ -0,0 +1,385 @@
+<!DOCTYPE SuperGraph>
+<supergraph>
+<dataflow>
+<info-list>
+<node>
+<component-name>?</component-name>
+    <interface-name>?</interface-name>
+    <node-name>GraphSwitch_1</node-name>
+    <kind>1</kind>
+    <coupled-node>?</coupled-node>
+    <service>
+<service-name>GraphSwitch_1</service-name>
+     <inParameter-list>
+<inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>InitLoopSwitch__Index</inParameter-name>      </inParameter>
+      <inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>InitLoopSwitch__Min</inParameter-name>      </inParameter>
+      <inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>InitLoopSwitch__Max</inParameter-name>      </inParameter>     </inParameter-list>
+     <outParameter-list>
+<outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>EndOfInitLoopSwitch__Index</outParameter-name>      </outParameter>
+      <outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>EndOfInitLoopSwitch__Min</outParameter-name>      </outParameter>
+      <outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>EndOfInitLoopSwitch__Max</outParameter-name>      </outParameter>     </outParameter-list>    </service>
+    <DataStream-list/>
+    <PyFunction-list/>
+    <creation-date>1/10/2003 - 17:23:54</creation-date>
+    <lastmodification-date>12/1/2005 - 16:10:58</lastmodification-date>
+    <editor-release>1.05</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>IsOdd</node-name>
+    <kind>3</kind>
+    <coupled-node>?</coupled-node>
+    <service>
+<service-name>IsOdd</service-name>
+     <inParameter-list>
+<inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>a</inParameter-name>      </inParameter>     </inParameter-list>
+     <outParameter-list>
+<outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>a</outParameter-name>      </outParameter>     </outParameter-list>    </service>
+    <DataStream-list/>
+    <PyFunction-list>
+<PyFunction>
+<FuncName>IsOdd</FuncName>
+      <PyFunc><![CDATA[from time import *   ]]></PyFunc>
+      <PyFunc><![CDATA[def IsOdd(a) :       ]]></PyFunc>
+      <PyFunc><![CDATA[    print a,"IsOdd (GraphSwitch)"      ]]></PyFunc>
+      <PyFunc><![CDATA[    sleep( 1 )   ]]></PyFunc>
+      <PyFunc><![CDATA[    return a     ]]></PyFunc>     </PyFunction>    </PyFunction-list>
+    <creation-date>12/1/2005 - 16:10:58</creation-date>
+    <lastmodification-date>12/1/2005 - 16:10:58</lastmodification-date>
+    <editor-release>1.05</editor-release>
+    <author>?</author>
+    <container>?</container>
+    <comment>Python function</comment>
+    <x-position>388</x-position>
+    <y-position>50</y-position>   </node>
+   <node>
+<component-name>?</component-name>
+    <interface-name>?</interface-name>
+    <node-name>InitLoopSwitch</node-name>
+    <kind>4</kind>
+    <coupled-node>EndOfInitLoopSwitch</coupled-node>
+    <service>
+<service-name>InitLoopSwitch</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-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-list>    </service>
+    <DataStream-list/>
+    <PyFunction-list>
+<PyFunction>
+<FuncName>InitLoop</FuncName>
+      <PyFunc><![CDATA[def InitLoop(Index,Min,Max) :       ]]></PyFunc>
+      <PyFunc><![CDATA[        Index = Max ]]></PyFunc>
+      <PyFunc><![CDATA[        return Index,Min,Max      ]]></PyFunc>     </PyFunction>
+     <PyFunction>
+<FuncName>MoreLoop</FuncName>
+      <PyFunc><![CDATA[def MoreLoop(Index,Min,Max) :      ]]></PyFunc>
+      <PyFunc><![CDATA[        if Index >= Min :    ]]></PyFunc>
+      <PyFunc><![CDATA[                DoLoop = 1      ]]></PyFunc>
+      <PyFunc><![CDATA[        else :      ]]></PyFunc>
+      <PyFunc><![CDATA[                DoLoop = 0      ]]></PyFunc>
+      <PyFunc><![CDATA[        return DoLoop,Index,Min,Max      ]]></PyFunc>     </PyFunction>
+     <PyFunction>
+<FuncName>NextLoop</FuncName>
+      <PyFunc><![CDATA[def NextLoop(Index,Min,Max) :      ]]></PyFunc>
+      <PyFunc><![CDATA[        Index = Index - 1      ]]></PyFunc>
+      <PyFunc><![CDATA[        return Index,Min,Max      ]]></PyFunc>     </PyFunction>    </PyFunction-list>
+    <creation-date>12/1/2005 - 16:10:58</creation-date>
+    <lastmodification-date>12/1/2005 - 16:10:58</lastmodification-date>
+    <editor-release>1.05</editor-release>
+    <author>?</author>
+    <container>?</container>
+    <comment>Compute Node</comment>
+    <x-position>10</x-position>
+    <y-position>129</y-position>   </node>
+   <node>
+<component-name>?</component-name>
+    <interface-name>?</interface-name>
+    <node-name>EndOfInitLoopSwitch</node-name>
+    <kind>5</kind>
+    <coupled-node>InitLoopSwitch</coupled-node>
+    <service>
+<service-name>EndOfInitLoopSwitch</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-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-list>    </service>
+    <DataStream-list/>
+    <PyFunction-list>
+<PyFunction>
+<FuncName>?</FuncName>
+      <PyFunc><![CDATA[?]]></PyFunc>     </PyFunction>    </PyFunction-list>
+    <creation-date>12/1/2005 - 16:10:58</creation-date>
+    <lastmodification-date>12/1/2005 - 16:10:58</lastmodification-date>
+    <editor-release>1.05</editor-release>
+    <author>?</author>
+    <container>?</container>
+    <comment>Compute Node</comment>
+    <x-position>766</x-position>
+    <y-position>127</y-position>   </node>
+   <node>
+<component-name>?</component-name>
+    <interface-name>?</interface-name>
+    <node-name>IsEven</node-name>
+    <kind>3</kind>
+    <coupled-node>?</coupled-node>
+    <service>
+<service-name>IsEven</service-name>
+     <inParameter-list>
+<inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>a</inParameter-name>      </inParameter>     </inParameter-list>
+     <outParameter-list>
+<outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>a</outParameter-name>      </outParameter>     </outParameter-list>    </service>
+    <DataStream-list/>
+    <PyFunction-list>
+<PyFunction>
+<FuncName>IsEven</FuncName>
+      <PyFunc><![CDATA[from time import *    ]]></PyFunc>
+      <PyFunc><![CDATA[def IsEven(a) :        ]]></PyFunc>
+      <PyFunc><![CDATA[    print a,"IsEven (GraphSwitch)"       ]]></PyFunc>
+      <PyFunc><![CDATA[    sleep( 1 )    ]]></PyFunc>
+      <PyFunc><![CDATA[    return a      ]]></PyFunc>     </PyFunction>    </PyFunction-list>
+    <creation-date>12/1/2005 - 16:10:58</creation-date>
+    <lastmodification-date>12/1/2005 - 16:10:58</lastmodification-date>
+    <editor-release>2.0</editor-release>
+    <author>?</author>
+    <container>?</container>
+    <comment>Compute Node</comment>
+    <x-position>397</x-position>
+    <y-position>279</y-position>   </node>
+   <node>
+<component-name>?</component-name>
+    <interface-name>?</interface-name>
+    <node-name>Switch</node-name>
+    <kind>6</kind>
+    <coupled-node>EndOfSwitch</coupled-node>
+    <service>
+<service-name>Switch</service-name>
+     <inParameter-list>
+<inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>a</inParameter-name>      </inParameter>     </inParameter-list>
+     <outParameter-list>
+<outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>Odd</outParameter-name>      </outParameter>
+      <outParameter>
+<outParameter-type>int</outParameter-type>
+       <outParameter-name>Even</outParameter-name>      </outParameter>
+      <outParameter>
+<outParameter-type>int</outParameter-type>
+       <outParameter-name>a</outParameter-name>      </outParameter>     </outParameter-list>    </service>
+    <DataStream-list/>
+    <PyFunction-list>
+<PyFunction>
+<FuncName>Switch</FuncName>
+      <PyFunc><![CDATA[from time import *     ]]></PyFunc>
+      <PyFunc><![CDATA[def Switch(a) :       ]]></PyFunc>
+      <PyFunc><![CDATA[    if a == 0 :    ]]></PyFunc>
+      <PyFunc><![CDATA[        return 0,0,a ]]></PyFunc>
+      <PyFunc><![CDATA[    if a < 0 : ]]></PyFunc>
+      <PyFunc><![CDATA[        return 1,1,a ]]></PyFunc>
+      <PyFunc><![CDATA[    if ( a & 1 ) == 0 :     ]]></PyFunc>
+      <PyFunc><![CDATA[        sleep(1)        ]]></PyFunc>
+      <PyFunc><![CDATA[    return a & 1,1-(a&1),a        ]]></PyFunc>     </PyFunction>    </PyFunction-list>
+    <creation-date>12/1/2005 - 16:10:58</creation-date>
+    <lastmodification-date>12/1/2005 - 16:10:58</lastmodification-date>
+    <editor-release>2.0</editor-release>
+    <author>?</author>
+    <container>?</container>
+    <comment>Compute Node</comment>
+    <x-position>195</x-position>
+    <y-position>129</y-position>   </node>
+   <node>
+<component-name>?</component-name>
+    <interface-name>?</interface-name>
+    <node-name>EndOfSwitch</node-name>
+    <kind>7</kind>
+    <coupled-node>Switch</coupled-node>
+    <service>
+<service-name>EndOfSwitch</service-name>
+     <inParameter-list>
+<inParameter>
+<inParameter-type>long</inParameter-type>
+       <inParameter-name>a</inParameter-name>      </inParameter>     </inParameter-list>
+     <outParameter-list>
+<outParameter>
+<outParameter-type>long</outParameter-type>
+       <outParameter-name>a</outParameter-name>      </outParameter>     </outParameter-list>    </service>
+    <DataStream-list/>
+    <PyFunction-list>
+<PyFunction>
+<FuncName>EndSwitch_1</FuncName>
+      <PyFunc><![CDATA[?]]></PyFunc>     </PyFunction>    </PyFunction-list>
+    <creation-date>12/1/2005 - 16:10:58</creation-date>
+    <lastmodification-date>12/1/2005 - 16:10:58</lastmodification-date>
+    <editor-release>2.0</editor-release>
+    <author>?</author>
+    <container>?</container>
+    <comment>Compute Node</comment>
+    <x-position>580</x-position>
+    <y-position>147</y-position>   </node>  </node-list>
+  <link-list>
+<link>
+<fromnode-name>IsOdd</fromnode-name>
+    <fromserviceparameter-name>a</fromserviceparameter-name>
+    <tonode-name>EndOfSwitch</tonode-name>
+    <toserviceparameter-name>a</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>InitLoopSwitch</fromnode-name>
+    <fromserviceparameter-name>DoLoop</fromserviceparameter-name>
+    <tonode-name>EndOfInitLoopSwitch</tonode-name>
+    <toserviceparameter-name>DoLoop</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>InitLoopSwitch</fromnode-name>
+    <fromserviceparameter-name>Index</fromserviceparameter-name>
+    <tonode-name>Switch</tonode-name>
+    <toserviceparameter-name>a</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>InitLoopSwitch</fromnode-name>
+    <fromserviceparameter-name>Min</fromserviceparameter-name>
+    <tonode-name>EndOfInitLoopSwitch</tonode-name>
+    <toserviceparameter-name>Min</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>InitLoopSwitch</fromnode-name>
+    <fromserviceparameter-name>Max</fromserviceparameter-name>
+    <tonode-name>EndOfInitLoopSwitch</tonode-name>
+    <toserviceparameter-name>Max</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>EndOfInitLoopSwitch</fromnode-name>
+    <fromserviceparameter-name>DoLoop</fromserviceparameter-name>
+    <tonode-name>InitLoopSwitch</tonode-name>
+    <toserviceparameter-name>DoLoop</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>IsEven</fromnode-name>
+    <fromserviceparameter-name>a</fromserviceparameter-name>
+    <tonode-name>EndOfSwitch</tonode-name>
+    <toserviceparameter-name>a</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>Switch</fromnode-name>
+    <fromserviceparameter-name>Odd</fromserviceparameter-name>
+    <tonode-name>IsOdd</tonode-name>
+    <toserviceparameter-name>Gate</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>Switch</fromnode-name>
+    <fromserviceparameter-name>Even</fromserviceparameter-name>
+    <tonode-name>IsEven</tonode-name>
+    <toserviceparameter-name>Gate</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>Switch</fromnode-name>
+    <fromserviceparameter-name>a</fromserviceparameter-name>
+    <tonode-name>IsOdd</tonode-name>
+    <toserviceparameter-name>a</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>Switch</fromnode-name>
+    <fromserviceparameter-name>a</fromserviceparameter-name>
+    <tonode-name>IsEven</tonode-name>
+    <toserviceparameter-name>a</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>Switch</fromnode-name>
+    <fromserviceparameter-name>Default</fromserviceparameter-name>
+    <tonode-name>EndOfSwitch</tonode-name>
+    <toserviceparameter-name>Default</toserviceparameter-name>
+    <coord-list/>   </link>
+   <link>
+<fromnode-name>EndOfSwitch</fromnode-name>
+    <fromserviceparameter-name>a</fromserviceparameter-name>
+    <tonode-name>EndOfInitLoopSwitch</tonode-name>
+    <toserviceparameter-name>Index</toserviceparameter-name>
+    <coord-list/>   </link>  </link-list>
+  <data-list>
+<data>
+<fromnode-name>GraphSwitch_1</fromnode-name>
+    <fromserviceparameter-name>InitLoopSwitch__Index</fromserviceparameter-name>
+    <tonode-name>InitLoopSwitch</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>GraphSwitch_1</fromnode-name>
+    <fromserviceparameter-name>InitLoopSwitch__Min</fromserviceparameter-name>
+    <tonode-name>InitLoopSwitch</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>GraphSwitch_1</fromnode-name>
+    <fromserviceparameter-name>InitLoopSwitch__Max</fromserviceparameter-name>
+    <tonode-name>InitLoopSwitch</tonode-name>
+    <toserviceparameter-name>Max</toserviceparameter-name>
+    <data-value>
+<value-type>3</value-type>
+     <value>10</value>    </data-value>
+    <coord-list/>   </data>  </data-list> </dataflow></supergraph>