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 : GNode_Impl.hxx
8 // Author : Jean Rahuel
12 #ifndef _GNODE_IMPL_HXX_
13 #define _GNODE_IMPL_HXX_
15 //#include <iostream.h>
19 #include <SALOMEconfig.h>
20 #include "SALOME_Component_i.hxx"
21 #include "SALOME_LifeCycleCORBA.hxx"
23 #include "INode_Impl.hxx"
24 #include "Port_Impl.hxx"
26 #include "DataFlowEditor_DataFlow.hxx"
27 #include "DataFlowExecutor_DataFlow.hxx"
29 class GNode_Impl : public INode_Impl ,
30 public POA_SUPERV::GNode {
34 PortableServer::POA_ptr _Poa ;
35 PortableServer::ObjectId * _ContId ;
39 GNode_Impl( CORBA::ORB_ptr orb ,
40 PortableServer::POA_ptr poa ,
41 PortableServer::ObjectId * contId ,
42 const char *instanceName ,
43 const char *interfaceName ,
44 const char *aDataFlowName ,
45 const SUPERV::KindOfNode aKindOfNode ) ;
46 GNode_Impl( CORBA::ORB_ptr orb ,
47 PortableServer::POA_ptr poa ,
48 PortableServer::ObjectId * contId ,
49 const char *instanceName ,
50 const char *interfaceName ,
51 GraphEditor::DataFlow * DataFlowEditor ,
52 const char * FuncName ,
53 const SUPERV::ListOfStrings & PythonFunction ,
54 const SUPERV::KindOfNode NodeKindOfNode = SUPERV::GOTONode ) ;
55 GNode_Impl( CORBA::ORB_ptr orb ,
56 PortableServer::POA_ptr poa ,
57 PortableServer::ObjectId * contId ,
58 const char *instanceName ,
59 const char *interfaceName ,
60 GraphEditor::DataFlow * DataFlowEditor ,
61 GraphBase::ListOfFuncName FuncNameList ,
62 GraphBase::ListOfPythonFunctions PythonFunctionList ,
63 const SUPERV::KindOfNode NodeKindOfNode = SUPERV::GOTONode ) ;
64 GNode_Impl( CORBA::ORB_ptr orb ,
65 PortableServer::POA_ptr poa ,
66 PortableServer::ObjectId * contId ,
67 const char *instanceName ,
68 const char *interfaceName ,
69 GraphEditor::DataFlow * DataFlowEditor ,
70 GraphEditor::InNode * DataFlowNode ) ;
71 virtual ~GNode_Impl() ;
72 virtual void destroy() ;
73 virtual bool Delete() ;
75 virtual bool SetCoupled( const char * anInLineNode );
77 virtual SUPERV::INode_ptr Coupled() ;
79 virtual GraphBase::GOTONode * BaseNode() {
80 return DataFlowNode()->GOTONode() ; } ;