27 #ifndef _mtsTaskPeriodic_h
28 #define _mtsTaskPeriodic_h
42 enum { STATE_TABLE_DEFAULT_SIZE = 256 };
50 unsigned int sizeStateTable = STATE_TABLE_DEFAULT_SIZE) :
51 mtsGenericObject(), Name(name), Period(period), IsHardRealTime(isHardRealTime), StateTableSize(sizeStateTable) {}
53 Name(other.Name), Period(other.Period), IsHardRealTime(other.IsHardRealTime), StateTableSize(other.StateTableSize) {}
59 void ToStream(std::ostream & outputStream)
const;
62 virtual void ToStreamRaw(std::ostream & outputStream,
const char delimiter =
' ',
63 bool headerOnly =
false,
const std::string & headerPrefix =
"")
const;
67 virtual bool FromStreamRaw(std::istream & inputStream,
const char delimiter =
' ');
139 double periodicityInSeconds,
140 bool isHardRealTime =
false,
141 unsigned int sizeStateTable = 256,
142 bool newThread =
true);
146 bool isHardRealTime =
false,
147 unsigned int sizeStateTable = 256,
148 bool newThread =
true);
164 double GetPeriodicity(
void)
const;
176 #endif // _mtsTaskPeriodic_h
#define CISST_EXPORT
Definition: cmnExportMacros.h:50
mtsTaskPeriodicConstructorArg(const std::string &name, double period, bool isHardRealTime=false, unsigned int sizeStateTable=STATE_TABLE_DEFAULT_SIZE)
Definition: mtsTaskPeriodic.h:49
#define mtsTaskManager
Definition: mtsTaskManager.h:34
mtsTaskPeriodicConstructorArg()
Definition: mtsTaskPeriodic.h:48
virtual void StartInternal(void)
virtual void SerializeRaw(std::ostream &outputStream) const
virtual void DeSerializeRaw(std::istream &inputStream)
Declaration of osaTimeServer class.
virtual void ToStream(std::ostream &outputStream) const
Definition: mtsTaskPeriodic.h:38
Base class for data object in cisstMultiTask.
Definition: mtsGenericObject.h:56
Declaration of units and unit conversion methodsThis file include the definition and implementation o...
virtual bool FromStreamRaw(std::istream &inputStream, const char delimiter= ' ')
Defines a continuously executing task.
std::string Name
Definition: mtsTaskPeriodic.h:43
~mtsTaskPeriodicConstructorArg()
Definition: mtsTaskPeriodic.h:54
CMN_DECLARE_SERVICES_INSTANTIATION(mtsTaskPeriodicConstructorArg)
#define CMN_DECLARE_SERVICES(hasDynamicCreation, lod)
Definition: cmnClassRegisterMacros.h:116
virtual void CleanupInternal(void)
Declaration of osaThreadBuddy.
mtsTaskContinuous BaseType
Definition: mtsTaskPeriodic.h:87
virtual void * RunInternal(void *argument)
osaAbsoluteTime AbsoluteTimePeriod
Definition: mtsTaskPeriodic.h:98
mtsTaskPeriodicConstructorArg(const mtsTaskPeriodicConstructorArg &other)
Definition: mtsTaskPeriodic.h:52
double Period
Definition: mtsTaskPeriodic.h:97
unsigned int StateTableSize
Definition: mtsTaskPeriodic.h:46
virtual bool IsPeriodic(void) const
Definition: mtsTask.h:292
Definition: mtsTaskContinuous.h:77
Definition: mtsTaskPeriodic.h:80
const int CMN_NO_DYNAMIC_CREATION
Definition: cmnClassRegisterMacros.h:328
const int CMN_DYNAMIC_CREATION
Definition: cmnClassRegisterMacros.h:331
virtual void StartupInternal(void)
virtual void ToStreamRaw(std::ostream &outputStream, const char delimiter= ' ', bool headerOnly=false, const std::string &headerPrefix="") const
Implementation of the Thread Proxy object in an OS independent manner.
Definition: osaThreadBuddy.h:63
double Period
Definition: mtsTaskPeriodic.h:44
Definition: osaTimeServer.h:36
bool IsHardRealTime
Definition: mtsTaskPeriodic.h:45
#define CMN_LOG_ALLOW_DEFAULT
Definition: cmnLogLoD.h:76
bool IsHardRealTime
Definition: mtsTaskPeriodic.h:102
osaThreadBuddy ThreadBuddy
Definition: mtsTaskPeriodic.h:94