aMacroGraphExe->CoupledNode( aMacroNode ) ;
aMacroNode->CoupledNode( aMacroGraphExe ) ;
+//JR 04.05.2005 Debug : InPorts values of MacroNodes are like for other nodes
+// InPorts values of MacroGraphs of MacroNodes are done in the Executor
+// It was probably to try to debug anything but it was a wrong debug and I do not know what bug
+// ===> folowing code is commented
+#if 0
// initialize MacroNode's InPorts with corresponding "external" values
int q ;
for ( q = 0 ; q < aMacroNode->GetNodeInPortsSize() ; q++ ) {
}
}
} // end of init MacroNode's InPorts
-
+#endif
aMacroGraphImpl->Run() ;
}
}
}
else {
+ MESSAGE( "Graph_Impl::Link( " << OutPort->Name() << " " << anOutPort << " , "
+ << InPort->Name() << " " << anInPort << " ) ObjRef already exists" ) ;
iobject = anOutPort->InPortObjRef( anInPort ) ;
}
}
RetVal->Graphs.length(0) ;
if ( !IsMacro() ) {
int i ;
- cout << DataFlowEditor()->Graph()->GetGraphNodeSize() << " Nodes in the Map and "
- << DataFlowEditor()->Graph()->GraphNodesSize() << " Nodes int the Vector" << endl ;
+ MESSAGE( DataFlowEditor()->Graph()->GetGraphNodeSize() << " Nodes in the Map and "
+ << DataFlowEditor()->Graph()->GraphNodesSize() << " Nodes int the Vector" ) ;
for ( i = 0 ; i < DataFlowEditor()->Graph()->GraphNodesSize() ; i++ ) {
GraphBase::ComputingNode * aNode = DataFlowEditor()->Graph()->GraphNodes( i ) ;
#if 1
- cout << i << ". Vector : " << aNode->Name() << " Map : "
- << DataFlowEditor()->Graph()->GetGraphNode( aNode->Name() )->Name()
- << endl ;
+ MESSAGE( i << ". Vector : " << aNode->Name() << " Map : "
+ << DataFlowEditor()->Graph()->GetGraphNode( aNode->Name() )->Name() ) ;
#endif
RetVal = SetNode( RetVal , aNode ) ;
}
return Engines::Component::_duplicate( objComponent ) ;
}
+char * Graph_Impl::Messages() {
+ beginService( "Graph_Impl::Messages" );
+ string Messages ;
+ MESSAGE( "Graph_Impl::Messages IsEditing " << DataFlowEditor()->IsEditing() ) ;
+ Messages = DataFlowEditor()->Graph()->Messages() ;
+ DataFlowEditor()->Graph()->ReSetMessages() ;
+ if ( DataFlowExecutor() ) {
+ Messages += DataFlowExecutor()->Graph()->Messages() ;
+ DataFlowExecutor()->Graph()->ReSetMessages() ;
+ }
+ endService( "Graph_Impl::Messages" );
+ return ( CORBA::string_dup( Messages.c_str() ) ) ;
+}
+
bool Graph_Impl::IsValid() {
// beginService( "Graph_Impl::IsValid" );
bool RetVal = false ;
perror("pthread_mutex_lock _MutexExecutorWait") ;
exit( 0 ) ;
}
+ DataFlowEditor()->Graph()->ReSetMessages() ; // ==> Only one set of errors messages ...
if ( DataFlowExecutor() ) {
MESSAGE( "Graph_Impl::Begin " << DataFlowExecutor()->Threads() << " threads" )
Editing(); // just in case it was not called before by GUI..