1 //=============================================================================
2 // File : Link_Impl.hxx
4 // Author : Jean Rahuel
6 // Copyright : CEA 2001
8 //=============================================================================
10 #ifndef _LINK_IMPL_HXX_
11 #define _LINK_IMPL_HXX_
17 #include <SALOMEconfig.h>
18 #include "SALOME_Component_i.hxx"
19 #include "SALOME_LifeCycleCORBA.hxx"
21 #include "Value_Impl.hxx"
22 #include "Port_Impl.hxx"
24 #include "DataFlowEditor_DataFlow.hxx"
26 class Link_Impl : public POA_SUPERV::Link ,
27 public Engines_Component_i {
31 PortableServer::POA_ptr _Poa ;
32 PortableServer::ObjectId * _ContId ;
34 GraphEditor::DataFlow * _DataFlowEditor ;
35 GraphEditor::InNode * _DataFlowNode ;
36 char * _DataFlowNodeName ;
37 char * _InputParameterName ;
38 GraphEditor::InNode * _DataFlowOutNode ;
39 char * _DataFlowOutNodeName ;
40 char * _OutputParameterName ;
44 Link_Impl( CORBA::ORB_ptr orb ,
45 PortableServer::POA_ptr poa ,
46 PortableServer::ObjectId * contId ,
47 const char *instanceName ,
48 const char *interfaceName ,
49 GraphEditor::DataFlow * DataFlowEditor ,
50 GraphEditor::InNode * DataFlowNode ,
51 const char *InputParameterName ,
52 GraphEditor::InNode * DataFlowOutNode ,
53 const char *OutputParameterName ,
56 virtual ~Link_Impl() ;
57 virtual void destroy() ;
58 virtual bool Delete() ;
60 SUPERV::Port_ptr OutPort() ;
61 SUPERV::Port_ptr InPort() ;
63 virtual GraphBase::SLink * Info() ;
65 virtual long CoordsSize() ;
66 virtual bool AddCoord( const long index ,
69 virtual bool ChangeCoord( const long index ,
72 virtual bool RemoveCoord( const long index ) ;
73 virtual bool Coords( const long index , long & X , long & Y ) ;