8 #include "Arp/System/Core/event.hxx" 9 #include "Arp/System/Commons/Logging.h" 12 namespace Arp {
namespace System {
namespace Ve
17 namespace Arp {
namespace System {
namespace Commons {
namespace Chrono
71 Timer(
size_t interval,
const String& name,
size_t priority,
size_t cpuAffinity = 0);
86 bool IsRunning(
void)
const;
93 void SetInterval(
size_t interval);
98 size_t GetInterval(
void)
const;
105 void SetCpuAffinity(
size_t affinity);
112 size_t GetCpuAffinity(
void)
const;
117 void SetName(
const String& value);
122 const String& GetName(
void)
const;
127 void SetPriority(
size_t value);
132 size_t GetPriority(
void)
const;
145 static void TimerServiceCallback(
void* pThis);
152 ITimerService* pTimerService;
153 bool isRunning =
false;
159 inline bool Timer::IsRunning(
void)
const 161 return this->isRunning;
High resolution timer for interval based executions.
Definition: Timer.hpp:53
Use this class to register and invoke several delegates (function pointer in OOP design).
Definition: event.hxx:192
NotifyEvent Notify
List of class methods and classes that are called periodically whenever the predefined interval is ex...
Definition: Timer.hpp:79
Definition: Loggable.hxx:18
event< void > NotifyEvent
Definition of list of delegates to be called when timer expires.
Definition: Timer.hpp:58
Root namespace for the PLCnext API
System components used by the System, Device, Plc or Io domains.