203 unsigned int sizeStateTable = 256);
218 virtual void Run(
void) = 0;
Definition mtsCallableVoidBase.h:40
virtual const mtsManagerComponentServices * GetManagerComponentServices(void) const
StateTableMapType StateTables
Definition mtsComponent.h:518
Definition mtsComponentState.h:34
Enum
Definition mtsComponentState.h:66
Definition mtsExecutionResult.h:34
Definition mtsFunctionVoid.h:36
Definition mtsFunctionWrite.h:37
Definition mtsInterfaceProvided.h:98
Definition mtsInterfaceRequired.h:83
Definition mtsManagerComponentServices.h:52
unsigned long long int TimeTicksType
Definition mtsStateIndex.h:56
Definition mtsStateTable.h:67
const std::string & GetName(void) const
Definition mtsStateTable.h:508
double GetAveragePeriod(void) const
Definition mtsStateTable.h:485
double InitializationDelay
Definition mtsTask.h:81
osaThread Thread
Definition mtsTask.h:74
mtsCallableVoidBase * InterfaceProvidedToManagerCallable
Definition mtsTask.h:104
virtual bool IsPeriodic(void) const
Definition mtsTask.h:299
void * ThreadStartData
Definition mtsTask.h:98
mtsInterfaceRequired * AddInterfaceRequiredWithoutSystemEventHandlers(const std::string &interfaceRequiredName, mtsRequiredType required=MTS_REQUIRED) override
bool WaitForState(mtsComponentState desiredState, double timeout) override
virtual void SaveThreadStartData(void *data)
bool RunEventCalled
Definition mtsTask.h:133
bool CheckForOwnThread(void) const
virtual void ResetOverranPeriod(void)
Definition mtsTask.h:311
friend class mtsManagerLocal
Definition mtsTask.h:63
void ChangeState(mtsComponentState::Enum newState)
void RunEventHandler(void)
void Configure(const std::string &CMN_UNUSED(filename)="") override
Definition mtsTask.h:226
osaThreadSignal StateChangeSignal
Definition mtsTask.h:88
virtual void Wakeup(void)
Definition mtsTask.h:286
static std::runtime_error UnknownException
Definition mtsTask.h:68
virtual bool IsOverranPeriod(void) const
Definition mtsTask.h:306
virtual void OnRunException(const std::exception &excp)
mtsInterfaceProvided * ExecOut
Definition mtsTask.h:128
mtsStateTable * GetDefaultStateTable(void)
Definition mtsTask.h:251
mtsInterfaceProvided * AddInterfaceProvidedWithoutSystemEvents(const std::string &newInterfaceName, mtsInterfaceQueueingPolicy queueingPolicy=MTS_COMPONENT_POLICY) override
virtual void StartupInternal(void)
mtsExecutionResult RunEvent(bool check=true)
void * ReturnValue
Definition mtsTask.h:101
virtual void SetThreadReturnValue(void *returnValue)
mtsFunctionVoid RunEventInternal
Definition mtsTask.h:132
void ChangeStateEventHandler(const mtsComponentState &newState)
bool OverranPeriod
Definition mtsTask.h:95
mtsTask(const std::string &name, unsigned int sizeStateTable=256)
mtsStateIndex::TimeTicksType GetTick(void) const
virtual const mtsManagerComponentServices * GetManagerComponentServices(void) const override
virtual void Create(void *data)=0
void Create(void) override
Definition mtsTask.h:236
virtual void OnStartupException(const std::exception &excp)
void ProcessManagerCommandsIfNotActive()
mtsComponent BaseType
Definition mtsTask.h:66
double GetAveragePeriod(void) const
Definition mtsTask.h:242
virtual void WaitForWakeup(void)
Definition mtsTask.h:281
virtual void CleanupInternal(void)
osaMutex StateChange
Definition mtsTask.h:85
const std::string GetDefaultStateTableName(void) const
Definition mtsTask.h:245
void Sleep(double timeInSeconds)
virtual bool WaitToTerminate(double timeout)
void SetInitializationDelay(double delay)
mtsFunctionWrite ChangeStateEvent
Definition mtsTask.h:137
virtual bool WaitToStart(double timeout)
virtual void * RunInternal(void *argument)=0
mtsInterfaceRequired * ExecIn
Definition mtsTask.h:117
mtsStateTable StateTable
Definition mtsTask.h:91
Define a Mutex object.
Definition osaMutex.h:48
Define a thread object.
Definition osaThread.h:168
void Wakeup(void)
Definition osaThread.h:292
void WaitForWakeup(void)
Definition osaThread.h:286
Definition osaThreadSignal.h:41
#define CMN_DECLARE_SERVICES_INSTANTIATION(className)
Definition cmnClassRegisterMacros.h:199
const int CMN_NO_DYNAMIC_CREATION
Definition cmnClassRegisterMacros.h:325
#define CISST_EXPORT
Definition cmnExportMacros.h:50
#define CMN_LOG_LEVEL_INIT_ERROR
Definition cmnLogLoD.h:58
#define CMN_LOG_ALLOW_DEFAULT
Definition cmnLogLoD.h:76
Portability across compilers and operating systems tools.
#define CMN_UNUSED(argument)
Definition cmnPortability.h:497
Defines base class for a queued void command.
Define an internal command for cisstMultiTask.
Defines a command with one argument.
Defines a command with no argument.
Defines a command with one argument.
Declaration of mtsComponent.
Forward declarations and #define for cisstMultiTask.
mtsRequiredType
Definition mtsForwardDeclarations.h:51
@ MTS_REQUIRED
Definition mtsForwardDeclarations.h:51
mtsInterfaceQueueingPolicy
Definition mtsForwardDeclarations.h:38
@ MTS_COMPONENT_POLICY
Definition mtsForwardDeclarations.h:38
Defines a function object to use a void command (mtsCommandVoid).
Defines the command interfaces.
Defines a mailbox for communication between tasks.
Defines the state data table.
Declaration of osaThread.