Salome HOME
Join modifications from BR_Dev_For_4_0 tag V4_1_1.
[modules/superv.git] / src / Supervision / FNode_Impl.cxx
index a7a801aa13fdbc785b13f3494d3e825bc43a0f7f..b136c7faacb079cac747aee5f9f03ae54eb1a6e6 100644 (file)
@@ -64,6 +64,13 @@ FNode_Impl::FNode_Impl( CORBA::ORB_ptr orb ,
 //                                           NodeKindOfNode ) ) ;
   DataFlowNode()->ComponentName( NodeComponentName ) ;
   DataFlowNode()->InterfaceName( NodeInterfaceName ) ;
+
+  // mkr : PAL13947 -->
+  const char * aContainer = DataFlowEditor()->Graph()->RetrieveFromMapOfComponentNameContainer(NodeComponentName);
+  if ( aContainer ) // container for NodeComponentName component was found in the map
+    SetContainer( aContainer );
+  // mkr : PAL13947 <--
+
   endService( "FNode_Impl::FNode_Impl" );  
 //  cout << "<-- FNode_Impl::FNode_Impl" << endl ;
 }
@@ -161,6 +168,10 @@ bool FNode_Impl::SetContainer( const char * aDataFlowContainer ) {
 //  GraphExecutor::DataFlow * _DataFlowExecutor = DataFlowEditor()->Executor() ;
 //  if ( DataFlowEditor()->IsEditing() ) {
     RetVal = DataFlowNode()->Computer( aDataFlowContainer ) ;
+
+    // insert modified container into < ComponentName, Container > map
+    DataFlowEditor()->Graph()->InsertToMapOfComponentNameContainer( GetComponentName(), aDataFlowContainer ) ; // mkr : PAL13947
+
 //  }
 //  else if ( _DataFlowExecutor && ( _DataFlowExecutor->IsSuspended() ||
 //            _DataFlowExecutor->IsSuspended( DataFlowNode()->Name() ) ) ) {