From 5a4d9842e9d41dbc91c300b134e7cdfd51a09e55 Mon Sep 17 00:00:00 2001 From: abd Date: Tue, 13 Feb 2007 14:07:20 +0000 Subject: [PATCH] Rollback to V3_2_4 --- idl/SUPERV.idl | 14 +- src/GraphBase/DataFlowBase_Base.cxx | 1 - src/GraphBase/DataFlowBase_Base.hxx | 1 - src/GraphBase/DataFlowBase_ComputingNode.cxx | 2 +- src/GraphBase/DataFlowBase_Graph.cxx | 86 +----- src/GraphBase/DataFlowBase_Graph.hxx | 35 +-- src/GraphEditor/DataFlowEditor_OutNode.cxx | 11 +- .../DataFlowExecutor_FiniteStateMachine.cxx | 7 - .../DataFlowExecutor_FiniteStateMachine.hxx | 2 - .../DataFlowExecutor_InNodeThreads.cxx | 44 +-- .../DataFlowExecutor_OutNode.cxx | 11 +- .../DataFlowExecutor_OutNode.hxx | 4 - src/SUPERVGUI/SUPERVGUI_BrowseNodeDlg.cxx | 137 +++------ src/SUPERVGUI/SUPERVGUI_CanvasControlNode.cxx | 37 --- src/SUPERVGUI/SUPERVGUI_Service.cxx | 290 +----------------- src/SUPERVGUI/SUPERVGUI_Service.h | 27 +- src/SUPERVGUI/SUPERV_msg_en.po | 9 - src/Supervision/CNode_Impl.cxx | 2 + src/Supervision/FNode_Impl.cxx | 11 - src/Supervision/GNode_Impl.cxx | 3 +- src/Supervision/Graph_Impl.cxx | 33 +- src/Supervision/Graph_Impl.hxx | 4 - src/Supervision/SUPERV_shared_modules.py | 4 +- src/Supervision/SuperV_Impl.cxx | 2 - src/Supervision/Value_Impl.cxx | 17 +- 25 files changed, 85 insertions(+), 709 deletions(-) diff --git a/idl/SUPERV.idl b/idl/SUPERV.idl index a26a910..959ddb7 100644 --- a/idl/SUPERV.idl +++ b/idl/SUPERV.idl @@ -990,19 +990,7 @@ This interface includes a set of methods used for management of the graphs in %S /*! Forces use of Editor's data model and destroy of Executor */ void Editing(); - - /*! Returns the default name of container for C component - */ - string DefaultCContainerName(); - - /*! Returns the default name of container for Python component - */ - string DefaultPythonContainerName(); - - /*! Returns the last container name associated with the ComponentName component - */ - string ContainerNameForComponent( in string ComponentName ); - + } ; diff --git a/src/GraphBase/DataFlowBase_Base.cxx b/src/GraphBase/DataFlowBase_Base.cxx index a21a234..12ca867 100644 --- a/src/GraphBase/DataFlowBase_Base.cxx +++ b/src/GraphBase/DataFlowBase_Base.cxx @@ -34,7 +34,6 @@ char *SuperVision_Version = "3.0" ; char *NULLSTRING = "" ; char *FACTORYSERVER = "localhost/FactoryServer" ; -char *FACTORYSERVERPY = "localhost/FactoryServerPy" ; GraphBase::Base::Base() { _prof_debug = NULL ; diff --git a/src/GraphBase/DataFlowBase_Base.hxx b/src/GraphBase/DataFlowBase_Base.hxx index b4f75bb..4dd042e 100644 --- a/src/GraphBase/DataFlowBase_Base.hxx +++ b/src/GraphBase/DataFlowBase_Base.hxx @@ -55,7 +55,6 @@ extern char *SuperVision_Version ; extern char *NULLSTRING ; extern char *FACTORYSERVER ; -extern char *FACTORYSERVERPY ; inline char * my_strdup( const char * s ) { if (s == NULL) return NULL; diff --git a/src/GraphBase/DataFlowBase_ComputingNode.cxx b/src/GraphBase/DataFlowBase_ComputingNode.cxx index 264719f..0439956 100644 --- a/src/GraphBase/DataFlowBase_ComputingNode.cxx +++ b/src/GraphBase/DataFlowBase_ComputingNode.cxx @@ -295,7 +295,7 @@ void GraphBase::ComputingNode::LastModification(const SUPERV::SDate aDate ) { bool GraphBase::ComputingNode::EditorRelease(const char * c){ if ( _EditorRelease && _EditorRelease != NULLSTRING ) - delete [] _EditorRelease; + delete _EditorRelease; _EditorRelease = my_strdup(c); return true ; } diff --git a/src/GraphBase/DataFlowBase_Graph.cxx b/src/GraphBase/DataFlowBase_Graph.cxx index fd93a61..6943ba8 100644 --- a/src/GraphBase/DataFlowBase_Graph.cxx +++ b/src/GraphBase/DataFlowBase_Graph.cxx @@ -1188,9 +1188,6 @@ bool GraphBase::Graph::AddLink( GraphBase::ComputingNode *fromNode , cdebug_out << "RemoveLink(AddLink) toPort->GetOutPort()->NodeName() RemoveLink Error." << endl ; return false ; } - if ( fromNode->IsGOTONode() && fromPort->IsGate() ) { // mkr : PAL12575 - ((GraphBase::GOTONode * ) fromNode)->CoupledNode( (GraphBase::InLineNode * ) toNode ) ; - } } if ( !fromNode->IsDataFlowNode() && !fromNode->IsDataStreamNode() && @@ -1490,22 +1487,6 @@ bool GraphBase::Graph::RemoveLink( const char* FromNodeName , } else { fromNode->RemoveLinkedNode( toNode ) ; - // mkr : PAL12575 --> - if ( fromNode->IsGOTONode() ) { - GraphBase::GOTONode * aGOTONode = (GraphBase::GOTONode * ) fromNode ; - if ( aGOTONode->CoupledNode() && strcmp( aGOTONode->CoupledNode()->Name(), toNode->Name() ) == 0 ) { - aGOTONode->CoupledNode(NULL); - aGOTONode->CoupledNodeName(""); - - // set ExternConnected status for output data port of GoTo node - for ( int aPortId = 0 ; aPortId < fromNode->GetNodeOutPortsSize() ; aPortId++ ) { - GraphBase::OutPort * anOutPort = fromNode->GetChangeNodeOutPort(aPortId) ; - if ( anOutPort->IsNotConnected() && !anOutPort->IsGate() ) - anOutPort->PortStatus( ExternConnected ) ; - } - } - } - // mkr : PAL12575 <-- } } //JR PAL7990 : a SwitchPort is an OutPort of a SwitchNode connected to a InGate Port @@ -1672,8 +1653,8 @@ bool GraphBase::Graph::AddInputData( const char* ToNodeName , else { cdebug << "ERROR Node and/or Port not found : " << aNodeName << " " << aPortName << endl ; } - delete [] aNodeName ; - delete [] aPortName ; + delete aNodeName ; + delete aPortName ; cdebug_out << "GraphBase::Graph::AddInputData " << RetVal << endl; return RetVal ; @@ -2792,59 +2773,6 @@ bool GraphBase::Graph::Sort( int & SubStreamGraphsNumber ) { return true ; } -// mkr : PAL12575 -bool GraphBase::Graph::ValidGOTO() { - cdebug_in << "GraphBase::Graph::ValidGOTO" << endl; - bool RetVal = true ; - int i, j ; - GraphBase::ComputingNode * aNode ; - for ( i = 0 ; i < GraphNodesSize() ; i++ ) { - aNode = GraphNodes( i ) ; - if ( aNode->IsGOTONode() ) { - GraphBase::GOTONode * aGoToNode = (GraphBase::GOTONode * ) aNode ; - GraphBase::InLineNode * aCoupledNode ; - aCoupledNode = (GraphBase::InLineNode * ) aGoToNode->CoupledNode() ; - if ( aCoupledNode ) { - ostringstream ErrorMessage ; - // 1. Check the number of ports (the number of OutPorts of a GOTONode and of InPorts of its linked - // InLine node must be the same) - if ( aNode->GetNodeOutPortsSize() != aCoupledNode->GetNodeInPortsSize() ) { - cdebug << "GraphBase::Graph::ValidGOTO : Different ports number!" << endl ; - ReSetMessages() ; - ErrorMessage << "Different ports number : the number of OutPorts of a " << aNode->Name() - << " node (GoTo node) and of InPorts of its linked " << aCoupledNode->Name() - << " node (InLine node) must be the same!\n" ; - SetMessages( ErrorMessage.str() ) ; - RetVal = false ; - } - // 2. Check ports names (the names of OutPorts of a GOTONode and of InPorts of its linked - // InLine node must be the same) - else { - for ( j = 0 ; j < aNode->GetNodeOutPortsSize() ; j++ ) { - GraphBase::OutPort * aBusParamOutPort = aNode->GetChangeNodeOutPort( j ) ; - if ( !aBusParamOutPort->IsGate() ) { - GraphBase::InPort * aBusParamChangeInPort = NULL ; - aBusParamChangeInPort = aCoupledNode->GetChangeInPort( aBusParamOutPort->PortName() ) ; - if ( !aBusParamChangeInPort ) { - cdebug << "GraphBase::Graph::ValidGOTO : Different names of ports!" << endl ; - ReSetMessages() ; - ErrorMessage << "Different names of ports : there is no input port of " << aCoupledNode->Name() - << " node (InLine node) coupled to " << aBusParamOutPort->PortName() - << " output port of a " << aNode->Name() - << " node (GoTo node)\n" ; - SetMessages( ErrorMessage.str() ) ; - RetVal = false ; - } - } - } - } - } - } - } - cdebug_out << "GraphBase::Graph::ValidGOTO RetVal " << RetVal << endl; - return RetVal ; -} - bool GraphBase::Graph::ValidLoops() const { cdebug_in << "GraphBase::Graph::ValidLoops" << endl; bool RetVal = true ; @@ -3092,7 +3020,7 @@ bool GraphBase::Graph::DataServerNodes() const { const GraphBase::OutPort * anOutPort = aNode->GetNodeOutPort(j) ; //JR Debug 06.06.2005 : if it is not a Gate ! // if ( anOutPort->IsNotConnected() ) { - if ( anOutPort->IsNotConnected() && !anOutPort->IsGate() && !aNode->IsGOTONode() ) { // mkr : PAL12575 + if ( anOutPort->IsNotConnected() && !anOutPort->IsGate() ) { cdebug << "Graph::DataServerNodes Add[Stream]LinkedNode for OutPort " << aNode->Name() << "( " << anOutPort->PortName() << " , " << anOutPort->PortStatus() << " )" << endl ; @@ -3255,8 +3183,8 @@ const CORBA::Any GraphBase::Graph::PortInData( const char* ToNodeName , cdebug << "GraphBase::Graph::PortInData " << ToNodeName << " " << ToServiceParameterName << " ERROR no Node" << endl ; } - delete [] theNode ; - delete [] aPort ; + delete theNode ; + delete aPort ; #if TracePortInOutData cdebug_out << "GraphBase::Graph::PortInData " << endl ; #endif @@ -3307,8 +3235,8 @@ const CORBA::Any GraphBase::Graph::PortOutData( const char* FromNodeName , cdebug << "GraphBase::Graph::PortOutData " << FromNodeName << " " << FromServiceParameterName << " ERROR no Node" << endl ; } - delete [] theNode ; - delete [] aPort ; + delete theNode ; + delete aPort ; #if TracePortInOutData cdebug_out << "GraphBase::Graph::PortOutData " << endl ; #endif diff --git a/src/GraphBase/DataFlowBase_Graph.hxx b/src/GraphBase/DataFlowBase_Graph.hxx index a5a026c..0dab620 100644 --- a/src/GraphBase/DataFlowBase_Graph.hxx +++ b/src/GraphBase/DataFlowBase_Graph.hxx @@ -90,14 +90,12 @@ namespace GraphBase { // int _SubStreamGraphsSize ; // vector > _SubStreamGraphs ; - string _Messages ; + string _Messages ; - map< string, string > _MapOfComponentNameContainer ; // mkr : PAL13947 - - bool AddLink( GraphBase::ComputingNode *fromNode , - GraphBase::OutPort *fromPort , - GraphBase::ComputingNode *toNode , - GraphBase::InPort *toPort ) ; + bool AddLink( GraphBase::ComputingNode *fromNode , + GraphBase::OutPort *fromPort , + GraphBase::ComputingNode *toNode , + GraphBase::InPort *toPort ) ; public: @@ -342,7 +340,6 @@ namespace GraphBase { bool InLineServices() ; bool Sort( int & SubStreamGraphsNumber ) ; - bool ValidGOTO() ; // mkr : PAL12575 bool ValidLoops() const ; bool ValidSwitchs() const ; bool ComputingNodes() const ; @@ -375,28 +372,6 @@ namespace GraphBase { Engines::Container_var & myContainer , Engines::Component_var & objComponent ) ; - // mkr : PAL13947 - void InsertToMapOfComponentNameContainer( const char * theComponentName, - const char * theContainer) { - _MapOfComponentNameContainer[ theComponentName ] = theContainer ; - } - - // mkr : PAL13947 - const char * RetrieveFromMapOfComponentNameContainer( const char * theComponentName ) { - if ( _MapOfComponentNameContainer.empty() - || - _MapOfComponentNameContainer.find(theComponentName) == _MapOfComponentNameContainer.end() ) - return NULL ; - - return _MapOfComponentNameContainer[ theComponentName ].c_str() ; - } - - // mkr : PAL13947 - void ClearMapOfComponentNameContainer() { - if ( !_MapOfComponentNameContainer.empty() ) - _MapOfComponentNameContainer.clear(); - } - }; }; diff --git a/src/GraphEditor/DataFlowEditor_OutNode.cxx b/src/GraphEditor/DataFlowEditor_OutNode.cxx index babb50e..1a4e2e0 100644 --- a/src/GraphEditor/DataFlowEditor_OutNode.cxx +++ b/src/GraphEditor/DataFlowEditor_OutNode.cxx @@ -349,10 +349,6 @@ bool GraphEditor::OutNode::LoadNodes(map< string , int > & aMapOfNodes , aNode.theAuthor.c_str() , aNode.theContainer.c_str() , aNode.theComment.c_str() , aNode.theCoords.theX , aNode.theCoords.theY ) ; - - // insert container into < ComponentName, Container > map for corresponding component - Graph()->InsertToMapOfComponentNameContainer( aNode.theComponentName.c_str(), aNode.theContainer.c_str() ) ; // mkr : PAL13947 - string * aNodetheName = new string( aNode.theName ) ; aMapOfNodes[ *aNodetheName ] = Graph()->GetGraphNodeIndex( anInNode->Name() ) ; if ( anInNode->IsOneOfInLineNodes() || anInNode->IsMacroNode() ) { @@ -1019,11 +1015,6 @@ bool GraphEditor::OutNode::Valid() { Graph()->ComputingNodes() ; #endif - if ( !Graph()->ValidGOTO() ) { // mkr : PAL12575 - cdebug << "Editor::OutNode::Valid This DataFlow have not valid GOTO(ValidGOTO)." << endl ; - RetVal = false ; - } - if ( RetVal ) { _Valid = true ; } @@ -1068,7 +1059,7 @@ bool GraphEditor::OutNode::Executable() { StreamGraph()->SubStreamGraphsNumber( SubStreamGraphsNumber ) ; Graph()->InLineServices() ; - + // if ( kLoopSwitch ) { if ( !Graph()->ValidLoops() ) { cdebug << "Editor::OutNode::Executable This DataFlow have not valid Loops(ValidLoops)." << endl ; diff --git a/src/GraphExecutor/DataFlowExecutor_FiniteStateMachine.cxx b/src/GraphExecutor/DataFlowExecutor_FiniteStateMachine.cxx index 36b70bf..8408f5c 100644 --- a/src/GraphExecutor/DataFlowExecutor_FiniteStateMachine.cxx +++ b/src/GraphExecutor/DataFlowExecutor_FiniteStateMachine.cxx @@ -728,13 +728,6 @@ void GraphExecutor::FiniteStateMachine::JoinThread( pthread_t aThread ) { } } -int GraphExecutor::FiniteStateMachine::ThreadsNumber() { - if( _ThreadList.begin() == _ThreadList.end() ) - return 0; - else - return _ThreadList.size(); -} - ostream & operator<< (ostream &f ,const GraphExecutor::AutomatonState & aState ) { switch (aState) { case GraphExecutor::UnKnownState : diff --git a/src/GraphExecutor/DataFlowExecutor_FiniteStateMachine.hxx b/src/GraphExecutor/DataFlowExecutor_FiniteStateMachine.hxx index 257c208..40f2c06 100644 --- a/src/GraphExecutor/DataFlowExecutor_FiniteStateMachine.hxx +++ b/src/GraphExecutor/DataFlowExecutor_FiniteStateMachine.hxx @@ -233,8 +233,6 @@ namespace GraphExecutor { void JoinThread() ; void JoinThread( pthread_t aThread ) ; - int ThreadsNumber() ; // mkr : IPAL14711 - const char * ControlStateName( const SUPERV::ControlState & aState ) const { return _ControlStateName[ aState ] ; } ; const char * StateName( const GraphExecutor::AutomatonState & aState ) const { diff --git a/src/GraphExecutor/DataFlowExecutor_InNodeThreads.cxx b/src/GraphExecutor/DataFlowExecutor_InNodeThreads.cxx index 1f48695..b56f5e5 100644 --- a/src/GraphExecutor/DataFlowExecutor_InNodeThreads.cxx +++ b/src/GraphExecutor/DataFlowExecutor_InNodeThreads.cxx @@ -85,9 +85,6 @@ int GraphExecutor::InNode::SendEvent( const GraphExecutor::NodeEvent anEvent ) { _OldState = State() ; _NextState = Automaton()->NextState( _OldState , anEvent ) ; if ( _NextState == _OldState ) { - string anErrorMessage = string( "Automaton error for node " ) + - string( Name() ) + " (SuperVision executor error)." ; - _OutNode->Graph()->SetMessages( anErrorMessage ) ; cdebug << pthread_self() << "/" << ThreadNo() << " " << Name() << " GraphExecutor::InNodeThreads::SendEvent SameStates ERROR _OldState/_NextState " << _OldState << " Event " << Automaton()->EventName( anEvent ) << endl ; @@ -637,7 +634,6 @@ int GraphExecutor::InNode::executeAction() { delete [] msg ; pthread_exit( msg ) ; } - _OutNode->setRunFuncThread( T ) ; // mkr : IPAL14711 #if ActionsTrace cdebug << pthread_self() << "/" << ThreadNo() << " " << Name() << " executeAction has created thread " << T << endl ; @@ -892,8 +888,7 @@ int GraphExecutor::InNode::VoidAction() { int GraphExecutor::InNode::DataWaiting_SomeDataReadyAction() { #if SomeDataReadyActionTrace cdebug_in << pthread_self() << "/" << ThreadNo() << " " << Name() - << " DataWaiting_SomeDataReadyAction from " << DataFromNode() - << " " << GetNodeInPortsSize() << " Inport(s)" << endl; + << " DataWaiting_SomeDataReadyAction from " << DataFromNode() << endl; #endif unsigned int k; int InReady = 0 ; @@ -984,8 +979,7 @@ int GraphExecutor::InNode::DataWaiting_SomeDataReadyAction() { anOutPort = anInPort->GetOutPort() ; if ( anOutPort ) { #if SomeDataReadyActionTrace - cdebug << pthread_self() << "/" << ThreadNo() << " " << Name() << " InPort" - << k << " " + cdebug << pthread_self() << "/" << ThreadNo() << " " << Name() << " InPort " << anInPort->PortName() << " already setted to OutPort " << anOutPort->NodeName() << "( " << anOutPort->PortName() << " )" << endl ; #endif @@ -994,8 +988,7 @@ int GraphExecutor::InNode::DataWaiting_SomeDataReadyAction() { anOutPort = CoupledNode()->GetChangeOutPort( anInPort->PortName() ) ; if ( anOutPort ) { #if SomeDataReadyActionTrace - cdebug << pthread_self() << "/" << ThreadNo() << " " << Name() << " InPort" - << k << " " + cdebug << pthread_self() << "/" << ThreadNo() << " " << Name() << " InPort " << anInPort->PortName() << " change of OutPort from " << anInPort->GetOutPort()->NodeName() << "( " << anInPort->GetOutPort()->PortName() << " ) to " << anOutPort->NodeName() << "( " << anOutPort->PortName() << " )" @@ -1003,8 +996,7 @@ int GraphExecutor::InNode::DataWaiting_SomeDataReadyAction() { #endif } else { - cdebug << pthread_self() << "/" << ThreadNo() << " " << Name() << " InPort" - << k << " " + cdebug << pthread_self() << "/" << ThreadNo() << " " << Name() << " InPort " << anInPort->PortName() << " have NO OutPort ERROR " << endl ; return 0 ; } @@ -1015,8 +1007,7 @@ int GraphExecutor::InNode::DataWaiting_SomeDataReadyAction() { anOutPort = anInPort->GetOutPort() ; } #if SomeDataReadyActionTrace - cdebug << pthread_self() << "/" << ThreadNo() << " " << Name() << " InPort" - << k << " " + cdebug << pthread_self() << "/" << ThreadNo() << " " << Name() << " InPort " << anInPort->PortName() << " " << anInPort->PortState() << " " << anInPort->PortStatus() << " " << anInPort->Kind() ; if ( anOutPort ) { @@ -1054,8 +1045,6 @@ int GraphExecutor::InNode::DataWaiting_SomeDataReadyAction() { #endif cdebug << endl ; #endif -//JR 30.01.2007 : wrong debug for PAL12455 -#if 0 // mkr : PAL12455 --> // MacroNode : give immediately the value to the corresponding graph if ( IsMacroNode() ) { @@ -1068,7 +1057,6 @@ int GraphExecutor::InNode::DataWaiting_SomeDataReadyAction() { aMacroGraph->InputOfAny( anInPort->PortName() , anOutPort->Value() ) ; } // mkr : PAL12455 <-- -#endif } else if ( IsLoopNode() && anInPort->IsDataConnected() ) { anInPort->PortState( SUPERV::ReadyState ) ; @@ -1252,32 +1240,10 @@ int GraphExecutor::InNode::DataWaiting_SomeDataReadyAction() { cdebug << pthread_self() << "/" << ThreadNo() << " Node " << Name() << " HasAllDataReady" << endl ; #endif -//JR 30.01.2007 Right Debug PAL12455 ---> -//That must be done only for DataConnected ports and only once - if ( IsMacroNode() ) { - GraphExecutor::DataFlow * aMacroGraph = GraphMacroNode()->CoupledNode()->GraphEditor()->Executor() ; - for ( k = 0 ; k < (unsigned int ) GetNodeInPortsSize() ; k++ ) { - GraphBase::InPort * anInPort = GetChangeNodeInPort(k) ; - GraphBase::OutPort * anOutPort ; - anOutPort = anInPort->GetOutPort() ; - if ( anInPort->IsDataConnected() ) { - cdebug << "SomeDataReadyAction MacroNode " << aMacroGraph->Name() - << " --> InputOfAny " << InReady << "/" << GetNodeInPortsSize() - << " InPorts are Ready ( " << anInPort->PortName() - << " ) ===> InputOfAny" << endl ; - aMacroGraph->InputOfAny( anInPort->PortName() , anOutPort->Value() ) ; - } - } - } -// <--- JR 30.01.2007 Right Debug PAL12455 HasAllDataReady( true ) ; // ==> Ready to execute res = 1 ; } else { // At least one Flag == 0 : -#if SomeDataReadyActionTrace - cdebug << pthread_self() << "/" << ThreadNo() << " Node " << Name() << " HasNOTAllDataReady " - << InReady << "/" << GetNodeInPortsSize() << " DoAllDataReadyIf " << DoAllDataReadyIf << endl ; -#endif HasAllDataReady( false ) ; res = SendEvent( GraphExecutor::NotAllDataReadyEvent ); } diff --git a/src/GraphExecutor/DataFlowExecutor_OutNode.cxx b/src/GraphExecutor/DataFlowExecutor_OutNode.cxx index 44eb527..ef342d0 100644 --- a/src/GraphExecutor/DataFlowExecutor_OutNode.cxx +++ b/src/GraphExecutor/DataFlowExecutor_OutNode.cxx @@ -55,7 +55,6 @@ GraphExecutor::OutNode::OutNode() { _ControlState = SUPERV::VoidState ; _State = GraphExecutor::UnKnownState ; _PyInitialized = false ; - _run_func_thread = 0; pthread_mutex_init( &_MutexWait , NULL ) ; pthread_mutex_init( &_PyMutexWait , NULL ) ; if ( pthread_cond_init( &_EventWait , NULL ) ) { @@ -97,7 +96,6 @@ GraphExecutor::OutNode::OutNode( CORBA::ORB_ptr ORB, _ControlState = SUPERV::VoidState ; _State = GraphExecutor::UnKnownState ; _PyInitialized = false ; - _run_func_thread = 0; _Orb = CORBA::ORB::_duplicate( ORB ) ; pthread_mutex_init( &_MutexWait , NULL ) ; pthread_mutex_init( &_PyMutexWait , NULL ) ; @@ -161,7 +159,6 @@ GraphExecutor::OutNode::OutNode( CORBA::ORB_ptr ORB, _ControlState = SUPERV::VoidState ; _State = GraphExecutor::UnKnownState ; _PyInitialized = false ; - _run_func_thread = 0; _Orb = CORBA::ORB::_duplicate( ORB ) ; pthread_mutex_init( &_MutexWait , NULL ) ; pthread_mutex_init( &_PyMutexWait , NULL ) ; @@ -839,7 +836,7 @@ void GraphExecutor::OutNode::CheckAllDone() { MESSAGE("================================================================================") ; cdebug << "================================================================================" << endl ; cdebug << Name() << " IS DONE : " << theAutomaton->StateName( AutomatonState() ) << " EventQSize " - << EventQSize() << endl ; + << EventQSize() << endl ; cdebug << "================================================================================" << endl ; //PAL8520 @@ -960,7 +957,6 @@ void GraphExecutor::OutNode::ExitThread( pthread_t ThreadNumber ) { cdebug << pthread_self() << " ExitThread( " << ThreadNumber << " ) " << _Threads << " running threads " << _SuspendedThreads << " suspended threads IsDone() " << IsDone() ; - _run_func_thread = 0 ; // mkr : IPAL14711 if ( IsDone() ) { cdebug << " ==> theAutomaton->Executed() " << endl ; theAutomaton->Executed() ; @@ -2148,11 +2144,6 @@ bool GraphExecutor::OutNode::DoneWait() { perror("pthread_mutex_lock _DoneWait") ; exit( 0 ) ; } - while ( _run_func_thread || theAutomaton->ThreadsNumber() ) { - // mkr : IPAL14711 - // waiting for pthread_join in FiniteStateMachine - } - if ( Done() || IsKilled() ) Graph()->GraphEditor()->Editing(); // mkr : IPAL14572 : calling Editing() to indicate stop of execution cdebug_out << pthread_self() << " GraphExecutor::DoneWait " << this << " " << Name() << " " << State() << " : " << aret << endl ; return aret ; diff --git a/src/GraphExecutor/DataFlowExecutor_OutNode.hxx b/src/GraphExecutor/DataFlowExecutor_OutNode.hxx index 4a2a7da..200d42b 100644 --- a/src/GraphExecutor/DataFlowExecutor_OutNode.hxx +++ b/src/GraphExecutor/DataFlowExecutor_OutNode.hxx @@ -70,8 +70,6 @@ namespace GraphExecutor { list< GraphExecutor::NodeEvent > _Events ; list< GraphExecutor::AutomatonState > _States ; - pthread_t _run_func_thread ; - bool Valid() ; void UnValid() ; bool Executable() ; @@ -271,8 +269,6 @@ namespace GraphExecutor { const char *FromParameterName ) ; const long CpuUsed() ; const long CpuUsed( const char *aNodeName ) ; - - void setRunFuncThread( pthread_t theThread ) { _run_func_thread = theThread; } ; // mkr : IPAL14711 }; }; diff --git a/src/SUPERVGUI/SUPERVGUI_BrowseNodeDlg.cxx b/src/SUPERVGUI/SUPERVGUI_BrowseNodeDlg.cxx index 5969c39..a50fe23 100644 --- a/src/SUPERVGUI/SUPERVGUI_BrowseNodeDlg.cxx +++ b/src/SUPERVGUI/SUPERVGUI_BrowseNodeDlg.cxx @@ -302,88 +302,7 @@ void SUPERVGUI_BrowseNodeDlg::onFieldActivated() myActiveField = (aField->isEditable())? aField : 0; } -namespace { - - QString getIORfromIO (const Handle(SALOME_InteractiveObject)& theIO, - SUPERVGUI * theModule) - { - QString ior (""); - if (!theIO->hasEntry()) return ior; - - SalomeApp_Study* anAppStudy = dynamic_cast(theModule->getActiveStudy()); - _PTR(SObject) aSObj (anAppStudy->studyDS()->FindObjectID(theIO->getEntry())); - - _PTR(GenericAttribute) anAttr; - if (aSObj->FindAttribute(anAttr, "AttributeIOR")) { - _PTR(AttributeIOR) anIOR (anAttr); - ior = anIOR->Value().c_str(); - return ior; - } - // old code, it is useless, because GetObject()> here will be NULL - // (because it is retrieved from by stored IOR) - /* - SALOMEDS_Study* aSStudy = dynamic_cast( aSObj->GetStudy().get() ); - SALOMEDS_SObject* aSSObj = dynamic_cast( aSObj.get() ); - if ( aSStudy && aSSObj ) - ior = aSStudy->ConvertObjectToIOR( aSSObj->GetObject() ).c_str(); - //*/ - - // new code - - // default value: null IOR (IOR:01000000010000000000...) - SalomeApp_Application* anApp = theModule->getApp(); - CORBA::Object_var aNullObj; - ior = anApp->orb()->object_to_string(aNullObj); - - // try to load a component data from an opened (presumably) study - _PTR(SComponent) aSComp = aSObj->GetFatherComponent(); - std::string aCompIOR; - if (!aSComp->ComponentIOR(aCompIOR)) { - std::string aCompDataType = aSComp->ComponentDataType(); - - // obtain a driver by a component data type - // like it is done in SALOMEDS_DriverFactory_i::GetDriverByType - SALOMEDS::Driver_var anEngine = SALOMEDS::Driver::_nil(); - SALOME_LifeCycleCORBA * LCC = anApp->lcc(); - try { - CORBA::Object_var - anEngineObj = LCC->FindOrLoad_Component("FactoryServer", aCompDataType.c_str()); - if (CORBA::is_nil(anEngineObj)) - anEngineObj = LCC->FindOrLoad_Component("FactoryServerPy", aCompDataType.c_str()); - - if (!CORBA::is_nil(anEngineObj)) - anEngine = SALOMEDS::Driver::_narrow(anEngineObj); - } - catch (...) { - } - - if (!CORBA::is_nil(anEngine)) { - // try to load - _PTR(StudyBuilder) aStudyBuilder = aSObj->GetStudy()->NewBuilder(); - bool isOk = true; - try { - CORBA::String_var aDriverIOR = anApp->orb()->object_to_string(anEngine); - aStudyBuilder->LoadWith(aSComp, aDriverIOR.in()); - } - catch (...) { - isOk = false; - } - - if (isOk) { - // now try to obtain the IOR once again (after successfull component data loading) - if (aSObj->FindAttribute( anAttr, "AttributeIOR" )) { - _PTR(AttributeIOR) anIOR ( anAttr ); - ior = anIOR->Value().c_str(); - } - } - } // if (!CORBA::is_nil(anEngine)) - } // if (!aSComp->ComponentIOR(aCompIOR)) - - return ior; - } - -} // no name namespace /** * Slot, called when selection is changed @@ -391,7 +310,7 @@ namespace { void SUPERVGUI_BrowseNodeDlg::onSelectionChanged() { if ( myActiveField ) { - + SALOME_ListIO aList; aList.Clear(); @@ -401,13 +320,28 @@ void SUPERVGUI_BrowseNodeDlg::onSelectionChanged() return; } - SalomeApp_Application* anApp = aSupMod->getApp(); - anApp->selectionMgr()->selectedObjects( aList ); - - if ( aList.Extent() == 1 ) { + (( SalomeApp_Application* )(aSupMod->getActiveStudy()->application())) + ->selectionMgr()->selectedObjects( aList ); + + if( aList.Extent() == 1 ) { Handle( SALOME_InteractiveObject ) anIO = aList.First(); if ( anIO->hasEntry() ) { - QString ior = ::getIORfromIO(anIO, aSupMod); + _PTR(SObject) aObj ( dynamic_cast( aSupMod->getActiveStudy() )-> + studyDS()->FindObjectID( anIO->getEntry() ) ); + + _PTR(GenericAttribute) anAttr; + QString ior(""); + + if (aObj->FindAttribute( anAttr, "AttributeIOR" ) ) { + _PTR(AttributeIOR) anIOR ( anAttr ); + ior = anIOR->Value().c_str(); + } + else { + SALOMEDS_Study* aSStudy = dynamic_cast( aObj->GetStudy().get() ); + SALOMEDS_SObject* aSSObj = dynamic_cast( aObj.get() ); + if ( aSStudy && aSSObj ) + ior = aSStudy->ConvertObjectToIOR( aSSObj->GetObject() ).c_str(); + } myActiveField->setData( ior ); } } @@ -542,20 +476,35 @@ void SUPERVGUI_GetValueDlg::onSelectionChanged() { SALOME_ListIO aList; aList.Clear(); - + SUPERVGUI* aSupMod = SUPERVGUI::Supervision(); if ( !aSupMod ) { MESSAGE("NULL Supervision module!"); return; } - - SalomeApp_Application* anApp = aSupMod->getApp(); - anApp->selectionMgr()->selectedObjects( aList ); - - if ( aList.Extent() == 1 ) { + + (( SalomeApp_Application* )(aSupMod->getActiveStudy()->application())) + ->selectionMgr()->selectedObjects( aList ); + + if( aList.Extent() == 1 ) { Handle( SALOME_InteractiveObject ) anIO = aList.First(); if ( anIO->hasEntry() ) { - QString ior = ::getIORfromIO(anIO, aSupMod); + _PTR(SObject) aObj ( dynamic_cast( aSupMod->getActiveStudy() )-> + studyDS()->FindObjectID( anIO->getEntry() ) ); + + _PTR(GenericAttribute) anAttr; + QString ior(""); + + if (aObj->FindAttribute( anAttr, "AttributeIOR" ) ) { + _PTR(AttributeIOR) anIOR ( anAttr ); + ior = anIOR->Value().c_str(); + } + else { + SALOMEDS_Study* aSStudy = dynamic_cast( aObj->GetStudy().get() ); + SALOMEDS_SObject* aSSObj = dynamic_cast( aObj.get() ); + if ( aSStudy && aSSObj ) + ior = aSStudy->ConvertObjectToIOR( aSSObj->GetObject() ).c_str(); + } myField->setData( ior ); } } diff --git a/src/SUPERVGUI/SUPERVGUI_CanvasControlNode.cxx b/src/SUPERVGUI/SUPERVGUI_CanvasControlNode.cxx index 71bd607..5d9c498 100644 --- a/src/SUPERVGUI/SUPERVGUI_CanvasControlNode.cxx +++ b/src/SUPERVGUI/SUPERVGUI_CanvasControlNode.cxx @@ -26,7 +26,6 @@ #include "SUPERVGUI_CanvasControlNode.h" #include "SUPERVGUI_CanvasControlNodePrs.h" #include "SUPERVGUI_CanvasCellNodePrs.h" -#include "SUPERVGUI_CanvasLink.h" #include "SUPERVGUI_Clipboard.h" #include "SUPERVGUI_Main.h" #include "SUPERVGUI.h" @@ -245,43 +244,7 @@ void SUPERVGUI_CanvasGotoNode::linkToNode() { if (aDlg->exec()) { QString aNodeName = aDlg->getName(); if (!aNodeName.isEmpty()) { //implement additional check from GUI side for bug PAL7007 - // mkr : here we should re/create (if it is not yet exists) a presentation for new - // Goto(OutGate)->CoupledNode(InGate) link, which will be created in SetCoupled method - - // check if GoTo node have coupled node - SUPERV_INode aCoupledNode = getGotoNode()->Coupled(); - if ( !SUPERV_isNull(aCoupledNode) ) - { // we got old coupled node - SUPERV_Port anInGatePort = aCoupledNode->GetInPort("InGate"); - SUPERV_Link anOldLinkEngine = anInGatePort->Link(); - if ( !SUPERV_isNull(anOldLinkEngine) ) - { // we got old link engine - SUPERVGUI_CanvasLink* anOldLinkPrs = getMain()->getCanvas()->getLink(anOldLinkEngine); - if ( anOldLinkPrs ) - { // delete old link presentation - delete anOldLinkPrs; - anOldLinkPrs = 0; - } - } - } - getGotoNode()->SetCoupled(aNodeName.latin1()); - - aCoupledNode = SUPERV::INode::_narrow(getMain()->getDataflow()->Node(aNodeName.latin1())); - if ( !SUPERV_isNull(aCoupledNode) ) - { // we got new coupled node - SUPERV_Port anInGatePort = aCoupledNode->GetInPort("InGate"); - SUPERV_Link aLinkEngine = anInGatePort->Link(); - if ( !SUPERV_isNull(aLinkEngine) ) - { // we got new link engine - if ( !getMain()->getCanvas()->getLink(aLinkEngine) ) - { // there is no presentation for such link engine => create it - SUPERVGUI_CanvasLink* aLink = new SUPERVGUI_CanvasLink(getMain()->getCanvas(), getMain(), aLinkEngine); - aLink->show(); - } - } - } - getMain()->getCanvas()->sync(); } } diff --git a/src/SUPERVGUI/SUPERVGUI_Service.cxx b/src/SUPERVGUI/SUPERVGUI_Service.cxx index 10b5093..2bdc79a 100644 --- a/src/SUPERVGUI/SUPERVGUI_Service.cxx +++ b/src/SUPERVGUI/SUPERVGUI_Service.cxx @@ -117,8 +117,6 @@ SUPERVGUI_Service::SUPERVGUI_Service(SALOME_NamingService* ns): aBaseLayoutV->setSpacing(10); QHBoxLayout* aBaseLayout = new QHBoxLayout(aCorbaPane); //!! - aBaseLayout->setMargin(5); - aBaseLayout->setSpacing(10); components = new QListView(aCorbaPane); components->addColumn(tr("COL_COMPONENTS")); @@ -129,7 +127,6 @@ SUPERVGUI_Service::SUPERVGUI_Service(SALOME_NamingService* ns): components->setColumnAlignment(3, AlignLeft); components->setSelectionMode(QListView::Extended); components->setRootIsDecorated(true); - // aBaseLayout->addWidget(components); aBaseLayoutV->addWidget(components); //!! @@ -140,16 +137,11 @@ SUPERVGUI_Service::SUPERVGUI_Service(SALOME_NamingService* ns): //NRI connect(aComputeCBtn, SIGNAL(clicked()), this, SLOT(addComputeNode())); //!! //NRI aComputeCBtn->setDefault(false); - QPushButton* aComputeBtnDef = new QPushButton(tr("TIT_ADDFNODE"), aCorbaPane); - connect(aComputeBtnDef, SIGNAL(clicked()), this, SLOT(addFactoryNodeDef())); - aComputeBtnDef->setDefault(true); - - QPushButton* aComputeBtnCust = new QPushButton(tr("TIT_ADDFNODE_CUST"), aCorbaPane); - connect(aComputeBtnCust, SIGNAL(clicked()), this, SLOT(addFactoryNodeCust())); - aComputeBtnCust->setDefault(true); + QPushButton* aComputeBtn = new QPushButton(tr("TIT_ADDFNODE"), aCorbaPane); + connect(aComputeBtn, SIGNAL(clicked()), this, SLOT(addFactoryNode())); + aComputeBtn->setDefault(true); - aBaseLayout->addWidget(aComputeBtnDef); - aBaseLayout->addWidget(aComputeBtnCust); + aBaseLayout->addWidget(aComputeBtn); //NRI aBaseLayout->addWidget(aComputeCBtn); //!! aBaseLayoutV->insertLayout(-1, aBaseLayout); @@ -428,7 +420,7 @@ void SUPERVGUI_Service::addComputeNode() { } } -void SUPERVGUI_Service::addFactoryNodeDef() { +void SUPERVGUI_Service::addFactoryNode() { SUIT_Desktop* aDesktop = SUIT_Session::session()->activeApplication()->desktop(); CAM_Application* anApp = ( CAM_Application* )(SUIT_Session::session()->activeApplication()); if ( !anApp ) return; @@ -500,115 +492,6 @@ void SUPERVGUI_Service::addFactoryNodeDef() { } } -void SUPERVGUI_Service::addFactoryNodeCust() { - SUIT_Desktop* aDesktop = SUIT_Session::session()->activeApplication()->desktop(); - CAM_Application* anApp = ( CAM_Application* )(SUIT_Session::session()->activeApplication()); - if ( !anApp ) return; - - SUPERVGUI* aSupMod = SUPERVGUI::Supervision(); - if ( !aSupMod ) { - MESSAGE("NULL Supervision module!"); - return; - } - - SUPERVGUI_Main* aMain = aSupMod->getMain(); - if (aMain==0) { - QMessageBox::warning(aDesktop, tr("WARNING"), tr("MSG_NO_SUPERVISION_WINDOW")); - } else if (!aMain->isEditable()) { - QMessageBox::warning(aDesktop, tr("ERROR"), tr("MSG_CANT_CREATE_NODE")); - } else { - CORBA::Object_ptr obj = naming->Resolve("/Kernel/ModulCatalog"); - SALOME_ModuleCatalog::ModuleCatalog_var* aModuleCatalog = new SALOME_ModuleCatalog::ModuleCatalog_var; - *aModuleCatalog = SALOME_ModuleCatalog::ModuleCatalog::_narrow(obj); - if (CORBA::is_nil(*aModuleCatalog)) { - QMessageBox::warning(aDesktop, tr("ERROR"), tr("MSG_CANT_CHOOSE_SERVICE")); - } else { - QListViewItem* item; - bool b = false; - - QListViewItemIterator iSel(components); - int count = 0; - for (; iSel.current(); ++iSel) { // check : how many objects are selected (single or multi) - item = iSel.current(); - if (item->isSelected()) count++; - if ( count > 1) break; - } - - QListViewItemIterator i(components); - QString anAuthor, aContainer, aComment; - bool DoneSetting = false; - int aRes = 0; - for (; i.current(); ++i) { - item = i.current(); - if (item->isSelected()) { - const char* service = item->text(0).latin1(); - const char* interface = item->parent()->text(0).latin1(); - //const char* component = anApp->moduleName(item->parent()->parent()->text(0).latin1()); - // mkr : PAL13135 --> - if ( aSupMod->getInterfaceNameMap().contains(item->parent()->parent()->text(0)) ) { - const char* component = aSupMod->getInterfaceNameMap().find(item->parent()->parent()->text(0)).data(); - // mkr : PAL13135 <-- - - SALOME_ModuleCatalog::Acomponent_ptr myComponent = (*aModuleCatalog)->GetComponent(component); - if (myComponent==NULL) { - QMessageBox::warning(aDesktop, tr("ERROR"), tr("MSG_CANT_CHOOSE_SERVICE")); - } - else { - const SALOME_ModuleCatalog::Service* myService = myComponent->GetService(interface, service); - SUPERV_CNode aNode; - if ( myService->TypeOfNode == 0 ) { // ComputeNode - aNode = aMain->getDataflow()->CNode(*myService); - if (CORBA::is_nil( aNode ) ) { - QMessageBox::warning(aDesktop, tr("ERROR"), tr("MSG_CANT_CREATE_NODE")); - return; - } - } - else { // Factory Node - - SUPERVGUI_CustomSettings* aCSDialog = 0; - if ( count > 1 && !DoneSetting) { // multi selection - DoneSetting = true; - aCSDialog = new SUPERVGUI_CustomSettings(item, true, myComponent->implementation_type()); - } - else if ( count == 1 ) // single selection - aCSDialog = new SUPERVGUI_CustomSettings(item, false, myComponent->implementation_type()); - - if ( aCSDialog ) { - aRes = aCSDialog->exec(); - if (aRes) { - anAuthor = aCSDialog->Author(); - aContainer = aCSDialog->Container(); - aComment = aCSDialog->Comment(); - } - delete aCSDialog; - } - - aNode = aMain->getDataflow()->FNode(component, interface, *myService, myComponent->implementation_type()); // mkr : PAL11273 - if ( CORBA::is_nil( aNode ) ) { - QMessageBox::warning(aDesktop, tr("ERROR"), tr("MSG_CANT_CREATE_NODE")); - return; - } - - if (aRes) { - aNode->SetAuthor(anAuthor.latin1()); - SUPERV::FNode::_narrow(aNode)->SetContainer(aContainer.latin1()); - aNode->SetComment(aComment.latin1()); - } - - } - SUPERV::INode_var aDummyEndNode; - addNode( aNode, aDummyEndNode, myX, myY ); - b = true; - } - } - } - } - if ( !b ) { - QMessageBox::warning(aDesktop, tr("WARNING"), tr("MSG_NONODE_TOADD")); - } - } - } -} void SUPERVGUI_Service::addInlineNode() { SUPERVGUI* aSupMod = SUPERVGUI::Supervision(); @@ -1178,166 +1061,3 @@ void SUPERVGUI_Service::addNode( SUPERV::CNode_var theNode, SUPERV::INode_var th } } -/*! - Constructor -*/ -SUPERVGUI_CustomSettings::SUPERVGUI_CustomSettings(QListViewItem* theItem, - bool isMultiSel, - bool isCimpl) - : QDialog( SUIT_Session::session()->activeApplication()->desktop(), "", true, WStyle_Customize | WStyle_NormalBorder | WStyle_Title | WStyle_SysMenu ) -{ - Trace("SUPERVGUI_CustomSettings::SUPERVGUI_CustomSettings"); - - SUPERVGUI* aSupMod = SUPERVGUI::Supervision(); - if ( !aSupMod ) { - MESSAGE("NULL Supervision module!"); - return; - } - - SUIT_Desktop* aDesktop = SUIT_Session::session()->activeApplication()->desktop(); - - setSizeGripEnabled( true ); - - QGridLayout* TopLayout = new QGridLayout( this ); - TopLayout->setSpacing( 6 ); - TopLayout->setMargin( 11 ); - - QGroupBox* TopGroup = new QGroupBox( this, "TopGroup" ); - TopGroup->setColumnLayout(0, Qt::Vertical ); - TopGroup->layout()->setSpacing( 0 ); - TopGroup->layout()->setMargin( 0 ); - QGridLayout* TopGroupLayout = new QGridLayout( TopGroup->layout() ); - TopGroupLayout->setAlignment( Qt::AlignTop ); - TopGroupLayout->setSpacing( 6 ); - TopGroupLayout->setMargin( 11 ); - - QLabel* authL = new QLabel( tr( "AUTHOR_LBL" ), TopGroup); - authV = new QLineEdit( TopGroup ); - authV->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) ); - authV->setMinimumSize( 200, 0 ); - authV->setText( "" ); - - contL = new QLabel( tr( "CONTAINER_LBL" ), TopGroup ); - contV = new QLineEdit( TopGroup ); - contV->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Fixed ) ); - contV->setMinimumSize( 200, 0 ); - - QLabel* commL = new QLabel( tr( "COMMENT_LBL" ), TopGroup); - commV = new QMultiLineEdit( TopGroup ); - commV->setSizePolicy( QSizePolicy( QSizePolicy::Expanding, QSizePolicy::Expanding ) ); - commV->setMinimumSize( 200, 100 ); - - if ( !aSupMod->getInterfaceNameMap().contains(theItem->parent()->parent()->text(0)) ) { - QMessageBox::warning(aDesktop, tr("WARNING"), tr("MSG_NONODE_TOADD")); - return; - } - const char* component = aSupMod->getInterfaceNameMap().find(theItem->parent()->parent()->text(0)).data(); - - QString aNodeDefComment; - if ( !isMultiSel ) { - // 1) set caption - const char* service = theItem->text(0).latin1(); - aNodeDefComment = QString(service) + QString(tr("COMMENT_FROM")) + QString(component); - setCaption( tr( "TLT_CUSTOMPARAMETERS_SINGLE" ) + aNodeDefComment ); - } - else { - // 1) set caption - aNodeDefComment = QString("Factory Node"); - setCaption( tr( "TLT_CUSTOMPARAMETERS_MULTI" ) ); - } - - // 2) set Container - SUPERVGUI_Main* aMain = aSupMod->getMain(); - if (aMain==0) { - QMessageBox::warning(aDesktop, tr("WARNING"), tr("MSG_NO_SUPERVISION_WINDOW")); - return; - } - const char* aContainer = aMain->getDataflow()->ContainerNameForComponent(component); - if ( aContainer && strlen(aContainer) > 0 ) - contV->setText( QString(aContainer) ); - else if ( isCimpl ) // C++ implementation - contV->setText( QString(aMain->getDataflow()->DefaultCContainerName()) ); - else // Python implementation - contV->setText( QString(aMain->getDataflow()->DefaultPythonContainerName()) ); - - // 3) set comment - commV->setText( aNodeDefComment ); - - TopGroupLayout->addWidget( authL, 1, 0 ); - TopGroupLayout->addWidget( authV, 1, 1 ); - TopGroupLayout->addWidget( contL, 2, 0 ); - TopGroupLayout->addWidget( contV, 2, 1 ); - TopGroupLayout->addWidget( commL, 7, 0 ); - TopGroupLayout->addMultiCellWidget( commV, 7, 8, 1, 1 ); - TopGroupLayout->addItem( new QSpacerItem( 5, 5, QSizePolicy::Minimum, QSizePolicy::Expanding ), 8, 0 ); - TopGroupLayout->setColStretch( 1, 5 ); - - QGroupBox* GroupButtons = new QGroupBox( this, "GroupButtons" ); - GroupButtons->setColumnLayout(0, Qt::Vertical ); - GroupButtons->layout()->setSpacing( 0 ); - GroupButtons->layout()->setMargin( 0 ); - QGridLayout* GroupButtonsLayout = new QGridLayout( GroupButtons->layout() ); - GroupButtonsLayout->setAlignment( Qt::AlignTop ); - GroupButtonsLayout->setSpacing( 6 ); - GroupButtonsLayout->setMargin( 11 ); - - QPushButton* okB = new QPushButton( tr( "BUT_OK" ), GroupButtons ); - connect( okB, SIGNAL( clicked() ), this, SLOT( okButton() ) ); - QPushButton* cancelB = new QPushButton( tr( "BUT_CANCEL" ), GroupButtons ); - connect( cancelB, SIGNAL( clicked() ), this, SLOT( koButton() ) ); - - GroupButtonsLayout->addWidget( okB, 0, 0 ); - GroupButtonsLayout->addItem ( new QSpacerItem( 5, 5, QSizePolicy::Expanding, QSizePolicy::Minimum ), 0, 1 ); - GroupButtonsLayout->addWidget( cancelB, 0, 2 ); - - TopLayout->addWidget( TopGroup, 0, 0 ); - TopLayout->addWidget( GroupButtons, 1, 0 ); - TopLayout->setRowStretch( 0, 1 ); - TopLayout->setRowStretch( 1, 0 ); - - resize(370,200); -} - -/*! - Destructor -*/ -SUPERVGUI_CustomSettings::~SUPERVGUI_CustomSettings() { - Trace("SUPERVGUI_CustomSettings::~SUPERVGUI_CustomSettings"); -} - -/*! - Get author -*/ -QString SUPERVGUI_CustomSettings::Author() { - return authV->text(); -} - -/*! - Get container -*/ -QString SUPERVGUI_CustomSettings::Container() { - return contV->text(); -} - -/*! - Get comment -*/ -QString SUPERVGUI_CustomSettings::Comment() { - return commV->text(); -} - -/*! - button slot -*/ -void SUPERVGUI_CustomSettings::okButton() { - Trace("SUPERVGUI_CustomSettings::okButton"); - accept(); -} - -/*! - button slot -*/ -void SUPERVGUI_CustomSettings::koButton() { - Trace("SUPERVGUI_CustomSettings::koButton"); - reject(); -} diff --git a/src/SUPERVGUI/SUPERVGUI_Service.h b/src/SUPERVGUI/SUPERVGUI_Service.h index f28da4c..6fb1f56 100644 --- a/src/SUPERVGUI/SUPERVGUI_Service.h +++ b/src/SUPERVGUI/SUPERVGUI_Service.h @@ -115,8 +115,7 @@ private: private slots: void tabChanged(QWidget *); void addComputeNode(); - void addFactoryNodeDef(); - void addFactoryNodeCust(); + void addFactoryNode(); void addInlineNode(); void addMacroNode(); void typeNodeSelected(int theRow); @@ -211,28 +210,4 @@ private: SUPERVGUI_PythonEditPane* myNextPane; }; -class SUPERVGUI_CustomSettings: public QDialog { - Q_OBJECT - - public: - SUPERVGUI_CustomSettings(QListViewItem* theItem, bool isMultiSel, bool isCimpl); - virtual ~SUPERVGUI_CustomSettings(); - - QString Author(); - QString Container(); - QString Comment(); - - private slots: - void okButton(); - void koButton(); - - private: - - QLineEdit* authV; - QLineEdit* contV; - QLabel* contL; - - QMultiLineEdit* commV; -}; - #endif diff --git a/src/SUPERVGUI/SUPERV_msg_en.po b/src/SUPERVGUI/SUPERV_msg_en.po index e4a7523..45a1d25 100644 --- a/src/SUPERVGUI/SUPERV_msg_en.po +++ b/src/SUPERVGUI/SUPERV_msg_en.po @@ -495,12 +495,6 @@ msgstr "Rename Dataflow" msgid "TLT_INFORMATIONS" msgstr "Informations" -msgid "TLT_CUSTOMPARAMETERS_SINGLE" -msgstr "Set Custom Parameters for " - -msgid "TLT_CUSTOMPARAMETERS_MULTI" -msgstr "Set Custom Parameters for a selected nodes" - msgid "TLT_DSGRAPHPARAMS" msgstr "Data Stream Graph Parameters" @@ -639,9 +633,6 @@ msgstr "Add Compute Node" msgid "TIT_ADDFNODE" msgstr "Add Node" -msgid "TIT_ADDFNODE_CUST" -msgstr "Add Node and Customize Parameters" - msgid "BTN_FACTORYNODE" msgstr "Factory" diff --git a/src/Supervision/CNode_Impl.cxx b/src/Supervision/CNode_Impl.cxx index 6933b27..3b2addf 100644 --- a/src/Supervision/CNode_Impl.cxx +++ b/src/Supervision/CNode_Impl.cxx @@ -37,6 +37,8 @@ using namespace std; #include "StreamPort_Impl.hxx" +char *FACTORYSERVERPY = "localhost/FactoryServerPy" ; + CNode_Impl::CNode_Impl( CORBA::ORB_ptr orb , PortableServer::POA_ptr poa , PortableServer::ObjectId * contId , diff --git a/src/Supervision/FNode_Impl.cxx b/src/Supervision/FNode_Impl.cxx index b136c7f..a7a801a 100644 --- a/src/Supervision/FNode_Impl.cxx +++ b/src/Supervision/FNode_Impl.cxx @@ -64,13 +64,6 @@ 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 ; } @@ -168,10 +161,6 @@ 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() ) ) ) { diff --git a/src/Supervision/GNode_Impl.cxx b/src/Supervision/GNode_Impl.cxx index bc12026..89228a5 100644 --- a/src/Supervision/GNode_Impl.cxx +++ b/src/Supervision/GNode_Impl.cxx @@ -247,8 +247,7 @@ bool GNode_Impl::SetCoupled( const char * anInLineNode ) ( !IsGOTO() && ( IsLoop() || IsSwitch() || IsEndLoop() || IsEndSwitch() ) ) ) { DataFlowNode()->CoupledNode( CoupledINode ) ; if ( CoupledINode && IsSwitch() ) { -//JR NPAL14793 05.02.2007 : do not add that link -// DataFlowEditor()->AddLink( Name() , "Default" ,CoupledINode->Name() , "Default" ) ; + DataFlowEditor()->AddLink( Name() , "Default" ,CoupledINode->Name() , "Default" ) ; } else if ( CoupledINode && ( IsLoop() || IsEndLoop() ) ) { DataFlowEditor()->AddLink( Name() , "DoLoop" , CoupledINode->Name() , "DoLoop" ) ; diff --git a/src/Supervision/Graph_Impl.cxx b/src/Supervision/Graph_Impl.cxx index 58c3400..7564fd6 100644 --- a/src/Supervision/Graph_Impl.cxx +++ b/src/Supervision/Graph_Impl.cxx @@ -589,11 +589,10 @@ SUPERV::SNode_ptr Graph_Impl::SNode( const char * FuncName , myEndNode->SetObjRef( SUPERV::ESNode::_duplicate( iendobject ) ) ; myNode->SetCoupled( myEndNode->BaseNode()->Name() ) ; myEndNode->SetCoupled( myNode->BaseNode()->Name() ) ; -//JR NPAL14793 05.02.2007 : do not add that link -// if ( !Link( myNode->Port( "Default" ) , myEndNode->Port( "Default" ) ) ) { -// iobject = SUPERV::SNode::_nil() ; -// iendobject = SUPERV::ESNode::_nil() ; -// } + if ( !Link( myNode->Port( "Default" ) , myEndNode->Port( "Default" ) ) ) { + iobject = SUPERV::SNode::_nil() ; + iendobject = SUPERV::ESNode::_nil() ; + } } } anEndOfSwitch = SUPERV::ESNode::_duplicate( iendobject ) ; @@ -2553,27 +2552,3 @@ void Graph_Impl::Editing() { } } -/** - * Returns the default name of container for C component - */ -char* Graph_Impl::DefaultCContainerName() { - return ( CORBA::string_dup( FACTORYSERVER ) ); -} - -/** - * Returns the default name of container for Python component - */ -char* Graph_Impl::DefaultPythonContainerName() { - return ( CORBA::string_dup( FACTORYSERVERPY ) ); -} - -/*! - * Returns the last container name associated with theComponentName component - */ -char* Graph_Impl::ContainerNameForComponent( const char * theComponentName ) { - const char* aContainer = DataFlowEditor()->Graph()->RetrieveFromMapOfComponentNameContainer(theComponentName); - if ( aContainer ) - return my_strdup(aContainer); - else - return ""; -} diff --git a/src/Supervision/Graph_Impl.hxx b/src/Supervision/Graph_Impl.hxx index a6dffe7..699fee0 100644 --- a/src/Supervision/Graph_Impl.hxx +++ b/src/Supervision/Graph_Impl.hxx @@ -212,10 +212,6 @@ class Graph_Impl : public POA_SUPERV::Graph , virtual SUPERV::StreamGraph_ptr ToStreamGraph() ; virtual void Editing(); // Destroy Executor and use only Editor and its data model - - virtual char* DefaultCContainerName() ; - virtual char* DefaultPythonContainerName() ; - virtual char* ContainerNameForComponent( const char * theComponentName) ; private: bool run( const bool andSuspend = false ); // Run() calls run( false ), Start() calls run( true ); diff --git a/src/Supervision/SUPERV_shared_modules.py b/src/Supervision/SUPERV_shared_modules.py index 8a2d3c3..88fcfc3 100644 --- a/src/Supervision/SUPERV_shared_modules.py +++ b/src/Supervision/SUPERV_shared_modules.py @@ -25,9 +25,7 @@ # see salome_shared_modules.py # (avoids incomplete import at run time) -from launchConfigureParser import verbose - -if verbose(): print "============== import SUPERV =======================" +print "============== import SUPERV =======================" import SUPERV diff --git a/src/Supervision/SuperV_Impl.cxx b/src/Supervision/SuperV_Impl.cxx index 510d76c..4fd4fd1 100644 --- a/src/Supervision/SuperV_Impl.cxx +++ b/src/Supervision/SuperV_Impl.cxx @@ -835,7 +835,6 @@ SUPERV::Graph_ptr SuperV_Impl::GraphE(const char * aGraphName ) { myGraph->SetObjRef( SUPERV::Graph::_duplicate( iobject ) ) ; } myGraph->ReadOnly() ; - myGraph->DataFlowEditor()->Graph()->ClearMapOfComponentNameContainer() ; // mkr : PAL13947 endService( "SuperV_Impl::GraphE" ); return SUPERV::Graph::_duplicate(iobject) ; } @@ -885,7 +884,6 @@ SUPERV::StreamGraph_ptr SuperV_Impl::StreamGraphE(const char * aGraphName ) { myStreamGraph->SetObjRef( SUPERV::StreamGraph::_duplicate( iobject ) ) ; } myStreamGraph->ReadOnly() ; - myStreamGraph->DataFlowEditor()->Graph()->ClearMapOfComponentNameContainer() ; // mkr : PAL13947 endService( "SuperV_Impl::StreamGraphE" ); return SUPERV::StreamGraph::_duplicate(iobject) ; } diff --git a/src/Supervision/Value_Impl.cxx b/src/Supervision/Value_Impl.cxx index 4e7675e..162c932 100644 --- a/src/Supervision/Value_Impl.cxx +++ b/src/Supervision/Value_Impl.cxx @@ -265,12 +265,10 @@ char * Value_Impl::ToString() { } ostringstream astr ; const char * retstr ; - string RetStr; int startstr = 0 ; switch (anAny.type()->kind()) { case CORBA::tk_string: { anAny >>= retstr; - RetStr = string(retstr); // MESSAGE( "ToString( string ) '" << retstr << "'" ); break ; } @@ -278,7 +276,7 @@ char * Value_Impl::ToString() { CORBA::Long l; anAny >>= l; astr << l << ends ; - RetStr = astr.str() ; + retstr = astr.str().c_str() ; // MESSAGE( "ToString( CORBA::Long ) '" << l << " " << retstr << "'" ); break ; } @@ -286,12 +284,11 @@ char * Value_Impl::ToString() { double d; anAny >>= d; astr << setw(25) << setprecision(18) << d << ends ; - RetStr = astr.str(); + retstr = astr.str().c_str() ; int i = 0 ; - while ( i < (int ) RetStr.length() && RetStr.at(i++) == ' ' ) { + while ( i < (int ) strlen( retstr ) && retstr[ i++ ] == ' ' ) { startstr = i ; } - RetStr = RetStr.substr(startstr) ; // MESSAGE( "ToString( double ) '" << d << "' '" << retstr << "' '" << &retstr[ startstr ] << "'"); break ; } @@ -303,22 +300,22 @@ char * Value_Impl::ToString() { #else anAny >>= obj ; #endif - RetStr = _Orb->object_to_string( obj ); + retstr = _Orb->object_to_string( obj ); // MESSAGE( "ToString( object ) '" << retstr << "'" ); } catch ( ... ) { - RetStr = "object_to_string catched " ; + retstr = "object_to_string catched " ; } break ; } default: { - RetStr = "Unknown CORBA::Any Type" ; + retstr = "Unknown CORBA::Any Type" ; // MESSAGE( retstr ); break ; } } // endService( "Value_Impl::ToString" ); - return CORBA::string_dup( RetStr.c_str() ) ; + return CORBA::string_dup( &retstr[ startstr ] ) ; } bool Value_Impl::IsIOR() { -- 2.39.2