Salome HOME
78316dca213d10b32de840fb2de0aabd7399391b
[modules/superv.git] / src / GraphBase / DataFlowBase_GOTONode.hxx
1 //  SUPERV GraphBase : contains fondamental classes for Services, Input Ports, Output Ports Links and Nodes.
2 //
3 //  Copyright (C) 2003  CEA/DEN, EDF R&D
4 //
5 //
6 //
7 //  File   : DataFlowBase_GOTONode.hxx
8 //  Author : Jean Rahuel, CEA
9 //  Module : SUPERV
10 //  $Header:
11
12 #ifndef _DATAFLOWBASE_GOTONODE_HXX
13 #define _DATAFLOWBASE_GOTONODE_HXX
14
15 #include "DataFlowBase_InLineNode.hxx"
16
17 namespace GraphBase {
18
19   class GOTONode : public InLineNode {
20
21     private:
22     
23       InLineNode * _CoupledNode ;
24       char       * _CoupledNodeName ;
25
26     public:
27
28       GOTONode() ;
29       GOTONode( CORBA::ORB_ptr ORB ,
30                 SALOME_NamingService* ptrNamingService ,
31                 const char *DataFlowName ,
32                 const SUPERV::KindOfNode DataFlowkind ,
33                 int * Graph_prof_debug ,
34                 ofstream * Graph_fdebug ) ;
35       GOTONode( CORBA::ORB_ptr ORB ,
36                 SALOME_NamingService* ptrNamingService ,
37                 const char * FuncName ,
38                 const SUPERV::ListOfStrings & PythonFunction ,
39                 const char *NodeName ,
40                 const SUPERV::KindOfNode akind ,
41                 const SUPERV::SDate NodeFirstCreation ,
42                 const SUPERV::SDate NodeLastModification ,
43                 const char * NodeEditorRelease ,
44                 const char * NodeAuthor ,
45                 const char * NodeComment ,
46                 const bool   GeneratedName ,
47                 const long   X ,
48                 const long   Y ,
49                 int * Graph_prof_debug = NULL ,
50                 ofstream * Graph_fdebug = NULL ) ;
51       virtual ~GOTONode() ;
52
53       void CoupledNode( InLineNode * aCoupledNode ) ;
54       const InLineNode * CoupledNode() const ;
55       InLineNode * CoupledNode() ;
56       void CoupledNodeName( const char * aCoupledNodeName ) ;
57       char * CoupledNodeName() const ;
58
59 //      bool SaveXML(ostream &f , char *Tabs , int X , int Y ) const ;
60       bool SaveXML(QDomDocument & Graph , QDomElement & info , int X , int Y ) const ;
61
62       bool SavePY(ostream &f , const char * aGraphName , int X , int Y ) const ;
63
64   };
65   
66 };
67
68 #endif