1 # Copyright (C) 2007-2015 CEA/DEN, EDF R&D, OPEN CASCADE
3 # Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 # CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
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, or (at your option) any later version.
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.
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
20 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
23 # Check the Merge of two graphs and python functions definitions
24 # Creation of GraphSwitch
26 from GraphSwitch import *
28 # Creation of GraphSwitch1
29 from GraphSwitch1 import *
31 # Merge of GraphSwitch1 in GraphSwitch
32 statmerge = GraphSwitch.Merge( GraphSwitch1 )
34 print "Failed to merge GraphSwitch1 in GraphSwitch"
36 # Create a variable for each node of GraphSwitch :
37 # IsOdd,IsOdd_1,InitLoopSwitch,InitLoop,EndOfInitLoopSwitch,EndOfInitLoop,Switch,Switch_1,EndOfSwitch,EndSwitch
38 exec GraphSwitch.ListNodes()
40 funcname = InitLoopSwitch.PyInitName()
41 funcname1 = InitLoop.PyInitName()
42 print "Init python function names of InitLoopSwitch and InitLoop :",funcname,funcname1
44 # Erase python functions of InitLoop
45 InitLoop.SetPyInit( funcname , [] )
47 InitLoop.SetPyMore( InitLoop.PyMoreName() , [] )
49 InitLoop.SetPyNext( InitLoop.PyNextName() , [] )
52 IsOdd.SetPyFunction( IsOdd.PyFuncName() , [] )
55 # Print Input and Output Ports values of InitLoopSwitch
56 InitLoopSwitch.PrintPorts()
58 # Print Input and Output Ports values of InitLoop
61 # Print Input and Output Ports values of GraphSwitch
62 GraphSwitch.PrintPorts()
64 # Start asynchronous execution of GraphSwitch
67 # Wait for completion of GraphSwitch
70 # Print the state of GraphSwitch
73 # Print the results of GraphSwitch
74 GraphSwitch.PrintPorts()
76 GraphSwitch.Export( "../GraphPyFunctions.xml" )