Salome HOME
NRI : First integration.
[modules/superv.git] / src / GraphBase / DataFlowBase_GOTONode.hxx
1 //=============================================================================
2 // File      : DataFlowBase_GOTONode.hxx
3 // Created   : 2003
4 // Author    : Jean Rahuel, CEA
5 // Project   : SALOME
6 // $Header:
7 //=============================================================================
8
9 #ifndef _DATAFLOWBASE_GOTONODE_HXX
10 #define _DATAFLOWBASE_GOTONODE_HXX
11
12 #include "DataFlowBase_InLineNode.hxx"
13
14 namespace GraphBase {
15
16   class GOTONode : public InLineNode {
17
18     private:
19     
20       InLineNode            * _CoupledNode ;
21
22     public:
23
24       GOTONode() ;
25       GOTONode( CORBA::ORB_ptr ORB ,
26                   SALOME_NamingService* ptrNamingService ,
27                   const char * FuncName ,
28                   const SUPERV::ListOfStrings & PythonFunction ,
29                   const char *NodeName ,
30                   const SUPERV::KindOfNode akind ,
31                   const SUPERV::SDate NodeFirstCreation ,
32                   const SUPERV::SDate NodeLastModification ,
33                   const char * NodeEditorRelease ,
34                   const char * NodeAuthor ,
35                   const char * NodeComment ,
36                   const bool   GeneratedName ,
37                   const long   X ,
38                   const long   Y ,
39                   int * Graph_prof_debug = NULL ,
40                   ostream * Graph_fdebug = NULL ) ;
41       virtual ~GOTONode() ;
42
43       void CoupledNode( InLineNode * aCoupledNode ) {
44            cdebug << Name() << ".GraphBase::GOTONode::CoupledNode( " ;
45            if ( aCoupledNode ) {
46              cdebug << aCoupledNode->Name() ;
47            }
48            else {
49              cdebug << "NULL" ;
50            }
51            cdebug << " )" << endl ;
52            _CoupledNode = aCoupledNode ; } ;
53       const InLineNode * CoupledNode() const {
54             cdebug << Name() << ".GraphBase::GOTONode::CoupledNode() --> " ;
55             if ( _CoupledNode ) {
56               cdebug << _CoupledNode->Name() ;
57             }
58             else {
59               cdebug << "NULL" ;
60             }
61             cdebug << endl ;
62             return _CoupledNode ; } ;
63       InLineNode * CoupledNode() {
64                    cdebug << Name() << ".GraphBase::GOTONode::CoupledNode() --> " ;
65                    if ( _CoupledNode ) {
66                      cdebug << _CoupledNode->Name() ;
67                    }
68                    else {
69                      cdebug << "NULL" ;
70                    }
71                    cdebug << endl ;
72                    return _CoupledNode ; } ;
73
74 //      bool SaveXML(ostream &f , char *Tabs , int X , int Y ) const ;
75       bool SaveXML(QDomDocument & Graph , QDomElement & info , int X , int Y ) const ;
76
77       bool SavePY(ostream &f , const char * aGraphName , int X , int Y ) const ;
78
79   };
80   
81 };
82
83 #endif