-// SUPERV Supervision : contains the implementation of interfaces of SuperVision described in SUPERV.idl
+// Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
+//
+// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
+// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+// This library is free software; you can redistribute it and/or
+// modify it under the terms of the GNU Lesser General Public
+// License as published by the Free Software Foundation; either
+// version 2.1 of the License.
//
-// Copyright (C) 2003 CEA/DEN, EDF R&D
+// This library is distributed in the hope that it will be useful,
+// but WITHOUT ANY WARRANTY; without even the implied warranty of
+// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+// Lesser General Public License for more details.
//
+// You should have received a copy of the GNU Lesser General Public
+// License along with this library; if not, write to the Free Software
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
+// SUPERV Supervision : contains the implementation of interfaces of SuperVision described in SUPERV.idl
// File : ESNode_Impl.cxx
// Author : Jean Rahuel
// Module : SUPERV
-// $Header:
-
+//
using namespace std;
#include <stdio.h>
#include <fstream>
void ESNode_Impl::destroy() {
beginService( "ESNode_Impl::Destroy" );
if ( DataFlowEditor()->IsEditing() ) {
- SUPERV::GNode_ptr aCoupled = SUPERV::GNode::_narrow( Coupled() ) ;
+// SUPERV::GNode_ptr aCoupled = SUPERV::GNode::_narrow( Coupled() ) ;
if ( Delete() ) {
_poa->deactivate_object(*_id) ;
- CORBA::release(_poa) ;
+// CORBA::release(_poa) ;
delete(_id) ;
- _thisObj->_remove_ref();
+// _thisObj->_remove_ref();
}
- if ( !CORBA::is_nil( aCoupled ) ) {
- aCoupled->SetCoupled( "" ) ;
- aCoupled->destroy() ;
+ else {
+ MESSAGE("ESNode_Impl::destroy ERROR ") ;
}
+// destroy have to be used for the SwitchNode ==> destroy of the EndSwitchNode
+// if ( !CORBA::is_nil( aCoupled ) ) {
+// aCoupled->SetCoupled( "" ) ;
+// aCoupled->destroy() ;
+// }
}
-// endService( "ESNode_Impl::Destroy" );
+ endService( "ESNode_Impl::Destroy" );
}
bool ESNode_Impl::Delete() {
-// beginService( "ESNode_Impl::Delete" );
+ beginService( "ESNode_Impl::Delete" );
bool RetVal = false ;
if ( DataFlowEditor()->IsEditing() ) {
+ DeletePorts() ;
RetVal = DataFlowEditor()->RemoveNode( Name() ) ;
- if ( RetVal )
- RetVal = DataFlowEditor()->IsValid() ;
+// IsValid is done in SNode_Impl::Delete
+// if ( RetVal ) {
+// RetVal = DataFlowEditor()->IsValid() ;
+// }
}
-// endService( "ESNode_Impl::Delete" );
+ endService( "ESNode_Impl::Delete" );
return RetVal ;
}