Salome HOME
Merge from OCC_development_generic_2006
[modules/superv.git] / src / Supervision / batchmode_SuperV.py
index 17d3f2487b33b99d29cdf18127a472c67718b2b3..9dfb5e00f5d229c7017fc80b3d32c92c37587da7 100644 (file)
@@ -40,7 +40,6 @@ except :
 import os
 import re
 from types import *
-import readline
 import SALOMEDS
 import SALOMEDS_Attributes_idl
 #try :
@@ -608,6 +607,8 @@ class FNode(CNode):
         return self.N.SetInterfaceName( anInterfaceName )
     def SetContainer( self , aComputer ):
         return self.N.SetContainer( aComputer )
+    def IsCimpl( self ):
+        return self.N.isCimpl
 
 ##########################################################
 class INode(CNode):
@@ -815,13 +816,27 @@ class Graph(GNode):
         #if SuperVision.Swig :
             #aService = Service_Swig( aService )
         return self.FNode( aComponent , anInterface , aService )
+    def FNodeImpl( self , aComponent , anInterface , aService, isCimpl ):
+        NodeComponent = modulecatalog.GetComponent( aComponent )
+        aService = NodeComponent.GetService( anInterface , aService )
+        aNode = self.G.FNode( aComponent , anInterface , aService, isCimpl )
+        if aNode != None :
+            aNode.isCimpl = isCimpl
+            myNode = FNode( aNode , self.G.Verbose )
+            return myNode
+        ErrMsg = "Failed to create a Node with Service " + aService.ServiceName
+        if self.G.Verbose :
+            print ErrMsg
+        return aNode
     def FNode( self , aComponent , anInterface , aService ):
+        # create node with C++ implementation type by default
         NodeComponent = modulecatalog.GetComponent( aComponent )
         aService = NodeComponent.GetService( anInterface , aService )
         #if SuperVision.Swig :
             #aService = Service_Swig( aService )
-        aNode = self.G.FNode( aComponent , anInterface , aService )
+        aNode = self.G.FNode( aComponent , anInterface , aService, 1 )
         if aNode != None :
+            aNode.isCimpl = 1
             myNode = FNode( aNode , self.G.Verbose )
             return myNode
         ErrMsg = "Failed to create a Node with Service " + aService.ServiceName