GraphExecutor::AutomatonState _State ;
SUPERV::ControlState _ControlState ;
bool _Done ;
+ bool _NodeAborted ;
+ // asv : 20.01.05 : changes involved with switching to old (HEAD) KERNEL
+ //Engines_Container_i * _SuperVisionContainer ;
+ //pthread_t _MainThreadId ;
pthread_mutex_t _PyMutexWait ;
pthread_mutex_t _MutexWait ;
pthread_cond_t _EventWait ;
pthread_cond_t _JoinWait ;
bool _JustStarted ;
int _Threads ; // Number of threads
+ long _CreatedThreads ;
int _SuspendedThreads ;
list< char * > _EventNodes ;
list< GraphExecutor::NodeEvent > _Events ;
GraphBase::Graph * Graph() const {
return _Graph ; } ;
+ char * Name() { return Graph()->Name() ; } ;
+
bool LoadDataFlow( const GraphBase::SGraph * aDataFlow ) ;
// bool LoadXml( const char* myFileName ) ;
bool LoadInfo( const GraphBase::SNode &aDataFlowInfo ) ;
return _Executable ; } ;
bool Run( const bool AndSuspend ) ;
- bool Run( const char * aNodeName , const char * AtNodeName ,
- const bool AndSuspend ) ;
void PyInitialized( bool init ) {
_PyInitialized = init ; } ;
void CheckAllDone() ;
+ // asv : 20.01.05 : changes involved with switching to old (HEAD) KERNEL
+ //Engines_Container_i * SuperVisionContainer() ;
+ //const pthread_t MainThreadId() const ;
void PThreadLock( pthread_mutex_t * aMutex , char * errmsg ) ;
void PThreadUnLock( pthread_mutex_t * aMutex , char * errmsg ) ;
void PyThreadLock() ;
return _Graph->ThreadNo() ; } ;
long Thread( const char * NodeName ) ;
+ void IncrCreatedThreads() {
+ _CreatedThreads += 1 ; } ;
+ long CreatedThreads() {
+ return _CreatedThreads ; } ;
+
bool PushEvent( GraphExecutor::InNode * aNode ,
GraphExecutor::NodeEvent anEvent ,
GraphExecutor::AutomatonState aState ) ;
bool Resume() ;
bool Kill() ;
bool Stop() ;
- bool ReRun() ;
- bool ReStart() ;
+
+ void NodeAborted( const char * aNodeName ) {
+ string aMsg = string( "The node " ) + string( aNodeName ) + " was aborted." ;
+ Graph()->SetMessages( aMsg.c_str() ) ;
+ _NodeAborted = true ; } ;
+ bool IsNodeAborted() {
+ return _NodeAborted ; } ;
bool IsWaiting() ;
bool IsReady() ;
bool IsRunning( const char * NodeName ) ;
bool IsDone( const char * NodeName ) ;
bool IsSuspended( const char * NodeName ) ;
- bool IsDone( const char * NodeName ,
- const char * ServiceParameterName ) ;
+ bool PortDone( const char * NodeName ,
+ const char * ServiceParameterName ) ;
long LastLevelDone() ;
bool ReadyWait() ;
bool DoneWait( const char * NodeName ) ;
bool SuspendedWait( const char * NodeName ) ;
- const CORBA::Any *GetInData( const char *ToNodeName ,
- const char *ToParameterName ) ;
- const CORBA::Any *GetOutData( const char *FromNodeName ,
- const char *FromParameterName ) ;
+//JR 30.03.2005 const CORBA::Any *GetInData( const char *ToNodeName ,
+ const CORBA::Any GetInData( const char *ToNodeName ,
+ const char *ToParameterName ) ;
+//JR 30.03.2005 const CORBA::Any *GetOutData( const char *FromNodeName ,
+ const CORBA::Any GetOutData( const char *FromNodeName ,
+ const char *FromParameterName ) ;
const long CpuUsed() ;
const long CpuUsed( const char *aNodeName ) ;
};