Salome HOME
Error Messages
[modules/superv.git] / src / GraphBase / DataFlowBase_EndOfSwitchNode.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_EndOfSwitchNode.hxx
8 //  Author : Jean Rahuel, CEA
9 //  Module : SUPERV
10 //  $Header:
11
12 #ifndef _DATAFLOWBASE_ENDOFSWITCHNODE_HXX
13 #define _DATAFLOWBASE_ENDOFSWITCHNODE_HXX
14
15 #include "DataFlowBase_GOTONode.hxx"
16
17 namespace GraphBase {
18
19   class EndOfSwitchNode : public GOTONode {
20
21     private:
22
23       int  _EndSwitchInPortLinkedNumber ; // For Check from Branches to EndOfSwitch links
24       bool _SwitchWithGOTO ;
25     
26     public:
27
28       EndOfSwitchNode() ;
29       EndOfSwitchNode( CORBA::ORB_ptr ORB ,
30                   SALOME_NamingService* ptrNamingService ,
31                   const char * FuncName ,
32                   const SUPERV::ListOfStrings & aPythonFunction ,
33                   const char *NodeName ,
34                   const SUPERV::KindOfNode akind ,
35                   const SUPERV::SDate NodeFirstCreation ,
36                   const SUPERV::SDate NodeLastModification ,
37                   const char * NodeEditorRelease ,
38                   const char * NodeAuthor ,
39                   const char * NodeComment ,
40                   const bool   GeneratedName ,
41                   const long   X ,
42                   const long   Y ,
43                   int * Graph_prof_debug = NULL ,
44                   ofstream * Graph_fdebug = NULL ) ;
45       virtual ~EndOfSwitchNode() ;
46
47       void InitEndSwitchInPortLinked() ;
48       bool DecrEndSwitchInPortLinked( GraphBase::InPort * anInPort ,
49                                       string & anErrorMessage ) ;
50       void SetSwitchWithGOTO() {
51            _SwitchWithGOTO = true ; } ;
52       bool SwitchWithGOTO() {
53            return _SwitchWithGOTO ; } ;
54       bool CheckEndSwitchInPortsLinked( string & anErrorMessage ) ;
55
56   };
57   
58 };
59
60 #endif