From 4860040ee790079392a95c415017c2557945c62a Mon Sep 17 00:00:00 2001 From: rahuel Date: Thu, 14 Apr 2005 11:45:01 +0000 Subject: [PATCH] Memory Leaks + management of instances of services --- src/GraphEditor/DataFlowEditor_OutNode.cxx | 23 ++++++++++++++++------ src/GraphEditor/DataFlowEditor_OutNode.hxx | 10 ++++++---- 2 files changed, 23 insertions(+), 10 deletions(-) diff --git a/src/GraphEditor/DataFlowEditor_OutNode.cxx b/src/GraphEditor/DataFlowEditor_OutNode.cxx index 440e354..95bd6c0 100644 --- a/src/GraphEditor/DataFlowEditor_OutNode.cxx +++ b/src/GraphEditor/DataFlowEditor_OutNode.cxx @@ -688,7 +688,9 @@ GraphEditor::InNode * GraphEditor::OutNode::AddNode( if ( aNodeName ) { delete [] aNodeName ; } - int num = Graph()->GetServiceNameNumber( NodeService ) ; +// int num = Graph()->GetServiceNameNumber( NodeService ) ; + char * aServiceName = (CORBA::String_member ) NodeService.ServiceName ; + int num = Graph()->GetNewServiceInstanceNumber( aServiceName ) ; ostringstream astr ; astr << num << ends ; const char * n_instance = astr.str().c_str() ; @@ -759,8 +761,13 @@ GraphEditor::InNode * GraphEditor::OutNode::AddNode( cdebug << "ERROR NodeName is NULL or already exists." << endl ; } // delete [] aNodeName ; - cdebug_out << "GraphEditor::OutNode::AddNode" << endl; _Valid = false ; + if ( Nd == NULL ) { + cdebug_out << "GraphEditor::OutNode::AddNode : NULL" << endl; + } + else { + cdebug_out << "GraphEditor::OutNode::AddNode : " << Nd << " " << Nd->Name() << endl; + } return Nd ; } @@ -1033,22 +1040,26 @@ bool GraphEditor::OutNode::Executable() { return _Executable ; } -const CORBA::Any *GraphEditor::OutNode::GetInData( +//JR 30.03.2005const CORBA::Any *GraphEditor::OutNode::GetInData( +const CORBA::Any GraphEditor::OutNode::GetInData( const char * ToNodeName , const char * ToParameterName ) { // cdebug_in << "GraphEditor::OutNode::GetInData " << ToNodeName // << " " << ToParameterName << endl ; - const CORBA::Any * retdata = Graph()->PortInData( ToNodeName , ToParameterName ) ; +//JR 30.03.2005 const CORBA::Any * retdata = Graph()->PortInData( ToNodeName , ToParameterName ) ; + const CORBA::Any retdata = Graph()->PortInData( ToNodeName , ToParameterName ) ; // cdebug_out << "GraphEditor::OutNode::GetInData" << endl ; return retdata ; } -const CORBA::Any *GraphEditor::OutNode::GetOutData( +//JR 30.03.2005const CORBA::Any *GraphEditor::OutNode::GetOutData( +const CORBA::Any GraphEditor::OutNode::GetOutData( const char * FromNodeName , const char * FromParameterName ) { // cdebug_in << "GraphEditor::OutNode::GetOutData " << FromNodeName // << " " << FromParameterName << endl ; - const CORBA::Any * retdata = Graph()->PortOutData( FromNodeName , FromParameterName ) ; +//JR 30.03.2005 const CORBA::Any * retdata = Graph()->PortOutData( FromNodeName , FromParameterName ) ; + const CORBA::Any retdata = Graph()->PortOutData( FromNodeName , FromParameterName ) ; // cdebug_out << "GraphEditor::OutNode::GetOutData" << endl ; return retdata ; } diff --git a/src/GraphEditor/DataFlowEditor_OutNode.hxx b/src/GraphEditor/DataFlowEditor_OutNode.hxx index 3cfb355..c8640b0 100644 --- a/src/GraphEditor/DataFlowEditor_OutNode.hxx +++ b/src/GraphEditor/DataFlowEditor_OutNode.hxx @@ -302,10 +302,12 @@ namespace GraphEditor { // in-port of type "InPortType". Called from IsLinksCompatible() and Link_Impl::IsValid(). bool IsCompatible( const char* OutPortType, const char* InPortType ) const; - const CORBA::Any *GetInData( const char *ToNodeName , - const char *ToParameterName ) ; - const CORBA::Any *GetOutData( const char *FromNodeName , - const char *FromParameterName ) ; +//JR 30.03.2005 const CORBA::Any *GetInData( const char *ToNodeName , + const CORBA::Any GetInData( const char *ToNodeName , + const char *ToParameterName ) ; +//JR 30.03.2005 const CORBA::Any *GetOutData( const char *FromNodeName , + const CORBA::Any GetOutData( const char *FromNodeName , + const char *FromParameterName ) ; } ; }; -- 2.39.2