1 #ifndef _DATAFLOWEXECUTOR_DATAFLOW_HXX
2 #define _DATAFLOWEXECUTOR_DATAFLOW_HXX
4 #include "DataFlowExecutor_OutNode.hxx"
6 namespace GraphExecutor {
8 class DataFlow : public GraphExecutor::OutNode {
12 SALOME_NamingService* _theNamingService ;
17 DataFlow( CORBA::ORB_ptr ORB, SALOME_NamingService* ptrNamingService ,
18 const char * DataFlowName ,
19 const char * DebugFileName );
20 DataFlow( CORBA::ORB_ptr ORB, SALOME_NamingService* ptrNamingService ,
21 const SALOME_ModuleCatalog::Service& DataFlowService ,
22 const char *DataFlowComponentName ,
23 const char *DataFlowInterfaceName ,
24 const char *DataFlowName ,
25 const SUPERV::KindOfNode DataFlowkind = SUPERV::ComputingNode ,
26 const SUPERV::SDate DataFlowFirstCreation = SUPERV::SDate() ,
27 const SUPERV::SDate DataFlowLastModification = SUPERV::SDate() ,
28 const char * DataFlowEditorRelease = NULL ,
29 const char * DataFlowAuthor = NULL ,
30 const char * DataFlowComputer = NULL ,
31 const char * DataFlowComment = NULL ,
32 const char * DebugFileName = NULL ) ;
35 bool LoadDataFlow( const GraphBase::SGraph &aDataFlow ) ;
36 bool LoadXml( const char* myFileName ) ;
38 const SALOME_ModuleCatalog::Service * NodeService( const char * NodeName ) ;
40 bool ChangeInputData( const char* ToNodeName ,
41 const char* ToParameterName ,
42 const CORBA::Any aValue = CORBA::Any() ) ;
43 bool AddInputSharedData( const char* ToNodeName1 ,
44 const char* ToParameterName1 ,
45 const char* ToNodeName2 ,
46 const char* ToParameterName2 ) ;
51 bool Run( const bool AndSuspend ) ;
52 bool Run( const char * aNodeName ,
53 const char * AtNodeName , const bool AndSuspend ) ;
55 long LastLevelDone() ;
57 SUPERV::GraphState State() ;
58 SUPERV::GraphState State(const char * aNodeName ) ;
59 SUPERV::GraphState State( const char * aNodeName ,
60 const char * anOutServiceParameterName ) ;
63 long Thread(const char * aNodeName ) ;
65 SUPERV::AutomatonState AutomatonState() ;
66 SUPERV::AutomatonState AutomatonState(const char * aNodeName ) ;
68 SUPERV::ControlState ControlState() ;
69 SUPERV::ControlState ControlState(const char * aNodeName ) ;
71 void ControlClear(const char * aNodeName ) ;
73 bool Event( char ** aNodeName ,
74 SUPERV::GraphEvent & anEvent ,
75 SUPERV::GraphState & aState ,
76 bool WithWait = true ) ;
77 bool EventW( char ** aNodeName ,
78 SUPERV::GraphEvent & anEvent ,
79 SUPERV::GraphState & aState ) ;
86 bool IsWaiting(const char * aNodeName ) ;
87 bool IsReady(const char * aNodeName ) ;
88 bool IsRunning(const char * aNodeName ) ;
89 bool IsDone(const char * aNodeName ) ;
90 bool IsSuspended(const char * aNodeName ) ;
91 bool IsDone(const char * aNodeName ,
92 const char * anOutServiceParameterName ) ;
94 const CORBA::Any *GetInData( const char * ToNodeName ,
95 const char * ToParameterName ) ;
96 const CORBA::Any *GetOutData( const char * FromNodeName ,
97 const char * FromParameterName ) ;
104 bool SuspendedWait() ;
105 bool ReadyWait(const char * aNodeName ) ;
106 bool RunningWait(const char * aNodeName ) ;
107 bool DoneWait(const char * aNodeName ) ;
108 bool SuspendedWait(const char * aNodeName ) ;
110 bool Ping(const char * aNodeName ) ;
111 bool ContainerKill() ;
112 bool ContainerKill(const char * aNodeName ) ;
115 bool Kill(const char * aNodeName ) ;
116 bool KillDone(const char * aNodeName ) ;
118 bool Suspend(const char * aNodeName ) ;
120 bool SuspendDone(const char * aNodeName ) ;
122 bool Resume(const char * aNodeName ) ;
124 bool Stop(const char * aNodeName ) ;
130 #include "DataFlowExecutor_DataFlow.lxx"
132 ostream & operator << (ostream &,const GraphExecutor::DataFlow & G);
133 ostream & operator << (ostream &,const SUPERV::SDate &);