Orocos Real-Time Toolkit  2.5.0
TaskContext.idl
Go to the documentation of this file.
00001 #ifndef ORO_CORBA_TASK_CONTEXT_IDL
00002 #define ORO_CORBA_TASK_CONTEXT_IDL
00003 
00010 #include "Service.idl"
00011 #include "ServiceRequester.idl"
00012 #include "DataFlow.idl"
00013 
00014 module RTT
00015 {
00016     module corba
00017     {
00018 
00026     enum CTaskState { CInit, CPreOperational, CFatalError, CException, CStopped, CRunning, CRunTimeError };
00027 
00033     interface CTaskContext
00034     {
00035         typedef sequence<string> CPeerNames;
00036 
00040         string getName();
00041 
00045         string getDescription();
00046 
00055         CTaskState getTaskState();
00056 
00061         boolean configure();
00062 
00067         boolean start();
00068 
00073         boolean activate();
00074 
00079         boolean stop();
00080 
00088         boolean resetException();
00089 
00094         boolean cleanup();
00095 
00100         boolean isActive();
00101 
00106         boolean isRunning();
00107 
00112         boolean isConfigured();
00113 
00118         boolean inFatalError();
00119 
00124         boolean inRunTimeError();
00125 
00132         CDataFlowInterface ports();
00133 
00147         CService getProvider( in string service_name );
00148       
00153         CServiceRequester getRequester( in string service_name );
00165         CPeerNames getPeerList( );
00166 
00171         CTaskContext getPeer( in string name );
00172 
00177         boolean hasPeer( in string name );
00178 
00183         boolean addPeer( in CTaskContext p, in string peer_alias );
00184 
00189         boolean removePeer( in string name );
00190 
00197         boolean connectPeers( in CTaskContext p );
00198 
00203         boolean disconnectPeers( in string name );
00204 
00211         boolean connectPorts( in CTaskContext p );
00212 
00219         boolean connectServices( in CTaskContext p );
00220 
00221     };
00222     };
00223 };
00224 
00225 #endif