Add implementation
This commit is contained in:
30
src/timer.hpp
Normal file
30
src/timer.hpp
Normal file
@ -0,0 +1,30 @@
|
||||
#ifndef _timer_H_
|
||||
#define _timer_H_
|
||||
|
||||
#include <cstdint>
|
||||
#include <mutex>
|
||||
|
||||
namespace sc {
|
||||
|
||||
class timer {
|
||||
static uint64_t next_id;
|
||||
static std::mutex mutex;
|
||||
|
||||
timer_t _tid;
|
||||
uint64_t _id;
|
||||
double _time;
|
||||
bool _repeat;
|
||||
|
||||
public:
|
||||
timer(void(*callback)(union sigval), double time, bool repeat = false);
|
||||
~timer();
|
||||
|
||||
void time(struct itimerspec& cur_value) const;
|
||||
double time() const;
|
||||
bool is_armed() const;
|
||||
bool repeat() const { return _repeat; }
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
#endif // _timer_H_
|
Reference in New Issue
Block a user