11#pragma once
2+ #include " ../utils/SimpleTimer.h"
23#include " CallbackData.h"
34#include " LoopTask.h"
4- #include " ../utils/SimpleTimer.h"
55
66// задача-интервальный таймер
77class LoopTimer : public LoopTask , public SimpleTimer {
88 public:
9- LoopTimer (uint32_t ms, TaskCallback callback, bool states = false , bool events = false ) : LoopTimer((hash_t )0 , ms, callback, states, events) {}
10- LoopTimer (const char * id, uint32_t ms, TaskCallback callback, bool states = false , bool events = false ) : LoopTimer(LPHr(id), ms, callback, states, events) {}
11- LoopTimer (hash_t id, uint32_t ms, TaskCallback callback, bool states = false , bool events = false ) : LoopTask(id, callback, TASK_IS_TIMER, states, events), SimpleTimer(ms) {}
9+ LoopTimer (uint32_t ms, TaskCallback callback, bool start = true , bool states = false , bool events = false ) : LoopTimer((hash_t )0 , ms, callback, start , states, events) {}
10+ LoopTimer (const char * id, uint32_t ms, TaskCallback callback, bool start = true , bool states = false , bool events = false ) : LoopTimer(LPHr(id), ms, callback, start , states, events) {}
11+ LoopTimer (hash_t id, uint32_t ms, TaskCallback callback, bool start = true , bool states = false , bool events = false ) : LoopTask(id, callback, TASK_IS_TIMER, states, events), SimpleTimer(ms, start ) {}
1212
1313 // опрос таймера
1414 void poll () {
@@ -19,9 +19,9 @@ class LoopTimer : public LoopTask, public SimpleTimer {
1919// таймер для создания своих классов
2020class LoopTimerBase : public LoopTimer {
2121 public:
22- LoopTimerBase (uint32_t ms) : LoopTimerBase((hash_t )0 , ms) {}
23- LoopTimerBase (const char * id, uint32_t ms) : LoopTimerBase(LPHr(id), ms) {}
24- LoopTimerBase (hash_t id, uint32_t ms) : LoopTimer(id, ms, _exec) {}
22+ LoopTimerBase (uint32_t ms, bool start = true ) : LoopTimerBase((hash_t )0 , ms, start ) {}
23+ LoopTimerBase (const char * id, uint32_t ms, bool start = true ) : LoopTimerBase(LPHr(id), ms, start ) {}
24+ LoopTimerBase (hash_t id, uint32_t ms, bool start = true ) : LoopTimer(id, ms, _exec, start ) {}
2525
2626 // выполняется при срабатывании таймера
2727 virtual void exec () = 0;
@@ -42,9 +42,9 @@ class LoopTimerData : public LoopTimer, public TaskCallbackData<T> {
4242 LP_MAKE_CALLBACK (DataCallback, void , T*);
4343
4444 public:
45- LoopTimerData (uint32_t ms, T* data, DataCallback callback) : LoopTimerData((hash_t )0 , ms, data, callback) {}
46- LoopTimerData (const char * id, uint32_t ms, T* data, DataCallback callback) : LoopTimerData(LPHr(id), ms, data, callback) {}
47- LoopTimerData (hash_t id, uint32_t ms, T* data, DataCallback callback) : LoopTimer(id, ms, _exec), TaskCallbackData<T>(data, callback) {}
45+ LoopTimerData (uint32_t ms, T* data, DataCallback callback, bool start = true ) : LoopTimerData((hash_t )0 , ms, data, callback, start ) {}
46+ LoopTimerData (const char * id, uint32_t ms, T* data, DataCallback callback, bool start = true ) : LoopTimerData(LPHr(id), ms, data, callback, start ) {}
47+ LoopTimerData (hash_t id, uint32_t ms, T* data, DataCallback callback, bool start = true ) : LoopTimer(id, ms, _exec, start ), TaskCallbackData<T>(data, callback) {}
4848
4949 private:
5050 using LoopTask::attach;
0 commit comments