1 // SUPERV Supervision : contains the implementation of interfaces of SuperVision described in SUPERV.idl
3 // Copyright (C) 2003 CEA/DEN, EDF R&D
7 // File : FNode_Impl.cxx
8 // Author : Jean Rahuel
18 //#include "utilities.h"
20 #include "FNode_Impl.hxx"
22 FNode_Impl::FNode_Impl() {
25 FNode_Impl::FNode_Impl( CORBA::ORB_ptr orb ,
26 PortableServer::POA_ptr poa ,
27 PortableServer::ObjectId * contId ,
28 const char * instanceName ,
29 const char * interfaceName ,
30 GraphEditor::DataFlow * aDataFlowEditor ,
31 const SALOME_ModuleCatalog::Service &NodeService ,
32 const char * NodeComponentName ,
33 const char * NodeInterfaceName ,
34 const char * NodeName ,
35 const SUPERV::KindOfNode NodeKindOfNode ,
37 // Engines_Component_i(orb, poa, contId, instanceName, interfaceName, false, false) {
38 CNode_Impl( orb , poa , contId , instanceName , interfaceName , aDataFlowEditor , NodeService , NodeName , NodeKindOfNode , NULLSTRING , SUPERV::ListOfStrings() , isCimpl ) {
39 // MESSAGE( NodeName << " " );
40 beginService( "FNode_Impl::FNode_Impl" );
41 // cout << "FNode_Impl::FNode_Impl -->" << endl ;
43 _id = _poa->activate_object(_thisObj);
44 _Orb = CORBA::ORB::_duplicate(orb);
48 // DataFlowNode( DataFlowEditor()->AddNode( NodeService , NodeComponentName ,
49 // NodeInterfaceName , NodeName ,
50 // NodeKindOfNode ) ) ;
51 DataFlowNode()->ComponentName( NodeComponentName ) ;
52 DataFlowNode()->InterfaceName( NodeInterfaceName ) ;
53 endService( "FNode_Impl::FNode_Impl" );
54 // cout << "<-- FNode_Impl::FNode_Impl" << endl ;
57 FNode_Impl::FNode_Impl( CORBA::ORB_ptr orb ,
58 PortableServer::POA_ptr poa ,
59 PortableServer::ObjectId * contId ,
60 const char * instanceName ,
61 const char * interfaceName ,
62 GraphEditor::DataFlow * aDataFlowEditor ,
63 GraphEditor::InNode * aDataFlowNode ) :
64 // Engines_Component_i(orb, poa, contId, instanceName, interfaceName, false, false) {
65 CNode_Impl( orb , poa , contId , instanceName , interfaceName , aDataFlowEditor , aDataFlowNode ) {
66 MESSAGE( DataFlowNode()->Name() << " " );
67 beginService( "FNode_Impl::FNode_Impl" );
69 _id = _poa->activate_object(_thisObj);
70 _Orb = CORBA::ORB::_duplicate(orb);
74 endService( "FNode_Impl::FNode_Impl" );
77 FNode_Impl::~FNode_Impl() {
78 beginService( "FNode_Impl::~Node_Impl" );
79 endService( "FNode_Impl::~Node_Impl" );
82 void FNode_Impl::destroy() {
83 beginService( "FNode_Impl::Destroy" );
84 if ( DataFlowEditor()->IsEditing() ) {
86 _poa->deactivate_object(*_id) ;
87 // CORBA::release(_poa) ;
89 // _thisObj->_remove_ref();
92 MESSAGE("FNode_Impl::destroy ERROR ") ;
95 // endService( "FNode_Impl::Destroy" );
98 bool FNode_Impl::Delete() {
99 // beginService( "FNode_Impl::Delete" );
100 bool RetVal = false ;
101 if ( DataFlowEditor()->IsEditing() ) {
103 RetVal = DataFlowEditor()->RemoveNode( Name() ) ;
105 DataFlowEditor()->UnValid() ;
108 // endService( "FNode_Impl::Delete" );
112 char * FNode_Impl::GetComponentName() {
113 // beginService( "FNode_Impl::GetComponentName" );
114 char * RetVal = DataFlowNode()->ComponentName() ;
115 // endService( "FNode_Impl::GetComponentName" );
116 return CORBA::string_dup( RetVal );
118 bool FNode_Impl::SetComponentName( const char * aComponentName ) {
119 // beginService( "FNode_Impl::SetComponentName" );
120 bool RetVal = false ;
121 RetVal = DataFlowNode()->ComponentName( aComponentName ) ;
122 // endService( "FNode_Impl::SetComponentName" );
125 char * FNode_Impl::GetInterfaceName() {
126 // beginService( "FNode_Impl::GetInterfaceName" );
127 char * RetVal = DataFlowNode()->InterfaceName() ;
128 // endService( "FNode_Impl::GetInterfaceName" );
129 return CORBA::string_dup( RetVal );
131 bool FNode_Impl::SetInterfaceName( const char * anInterfaceName ) {
132 // beginService( "FNode_Impl::SetInterfaceName" );
133 bool RetVal = false ;
134 RetVal = DataFlowNode()->InterfaceName( anInterfaceName ) ;
135 // endService( "FNode_Impl::SetInterfaceName" );
138 char * FNode_Impl::GetContainer() {
139 // beginService( "FNode_Impl::GetContainer" );
140 char * RetVal = DataFlowNode()->Computer() ;
141 // endService( "FNode_Impl::GetContainer" );
142 return CORBA::string_dup( RetVal ) ;
144 bool FNode_Impl::SetContainer( const char * aDataFlowContainer ) {
145 // beginService( "FNode_Impl::SetContainer" );
146 bool RetVal = false ;
147 // GraphExecutor::DataFlow * _DataFlowExecutor = DataFlowEditor()->Executor() ;
148 // if ( DataFlowEditor()->IsEditing() ) {
149 RetVal = DataFlowNode()->Computer( aDataFlowContainer ) ;
151 // else if ( _DataFlowExecutor && ( _DataFlowExecutor->IsSuspended() ||
152 // _DataFlowExecutor->IsSuspended( DataFlowNode()->Name() ) ) ) {
153 // if ( _DataFlowExecutor->Graph()->GetChangeGraphNode( DataFlowNode()->Name() ) ) {
154 // RetVal = ((GraphEditor::InNode * ) _DataFlowExecutor->Graph()->GetChangeGraphNode( DataFlowNode()->Name() )->GetInNode())->Computer( aDataFlowContainer ) ;
155 DataFlowEditor()->UnValid() ;
158 // endService( "FNode_Impl::SetContainer" );