16 #include <sys/timerfd.h>
25 struct itimerspec itval;
28 fd = timerfd_create (CLOCK_MONOTONIC, 0);
30 itval.it_interval.tv_sec = interval/1000;
31 itval.it_interval.tv_nsec = (interval*1000000)%1000000000;
32 itval.it_value.tv_sec = interval/1000;
33 itval.it_value.tv_nsec = (interval*1000000)%1000000000;
35 timerfd_settime (fd, 0, &itval,
nullptr);
38 unsigned long long missed;
39 int ret = read (fd, &missed,
sizeof (missed));
44 bool quit = this->m_quit;
47 itval.it_interval.tv_sec = 0;
48 itval.it_interval.tv_nsec = 0;
49 itval.it_value.tv_sec = 0;
50 itval.it_value.tv_nsec = 0;
52 timerfd_settime (fd, 0, &itval,
nullptr);
PlatformPointerCastType POINTER_CAST
PlatformIntType NATIVE_INT_TYPE
C++-compatible configuration header for fprime configuration.
static void logMsg(const char *fmt, POINTER_CAST a0=0, POINTER_CAST a1=0, POINTER_CAST a2=0, POINTER_CAST a3=0, POINTER_CAST a4=0, POINTER_CAST a5=0, POINTER_CAST a6=0, POINTER_CAST a7=0, POINTER_CAST a8=0, POINTER_CAST a9=0)
void unLock()
unlock the mutex
void lock()
lock the mutex
void CycleOut_out(NATIVE_INT_TYPE portNum, Svc::TimerVal &cycleStart)
Invoke output port CycleOut.
void startTimer(NATIVE_INT_TYPE interval)
Start timer.
void take()
Function to store a timer value.