1
This commit is contained in:
parent
db10c37c68
commit
c4429a36a8
106
f8/timer.cc
Normal file
106
f8/timer.cc
Normal file
@ -0,0 +1,106 @@
|
||||
#include <a8/a8.h>
|
||||
|
||||
#include <f8/f8.h>
|
||||
|
||||
#include <f8/timer.h>
|
||||
|
||||
namespace f8
|
||||
{
|
||||
|
||||
Attacher::Attacher()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Timer::Init()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Timer::UnInit()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
bool Timer::Initialized()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Timer::Update()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Timer::SetTimeout(int expire_time, a8::TimerCb cb)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Timer::SetTimeoutEx(int expire_time, a8::TimerCb cb, Attacher* attacher)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
TimerWp Timer::SetTimeoutWp(int expire_time, a8::TimerCb cb)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
TimerWp Timer::SetTimeoutWpEx(int expire_time, a8::TimerCb cb, Attacher* attacher)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Timer::SetInterval(int expire_time, a8::TimerCb cb)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Timer::SetIntervalEx(int expire_time, a8::TimerCb cb, Attacher* attacher)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
TimerWp Timer::SetIntervalWp(int expire_time, a8::TimerCb cb)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
TimerWp Timer::SetIntervalWpEx(int expire_time, a8::TimerCb cb, Attacher* attacher)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Timer::FireEvent(TimerWp& timer_wp, int event, a8::Args* args)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Timer::ModifyTime(TimerWp& timer_wp, int expire_time)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
void Timer::Delete(TimerWp& timer_wp)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
long long Timer::GetRemainTime(TimerWp& timer_wp)
|
||||
{
|
||||
|
||||
|
||||
}
|
||||
|
||||
void Timer::DeleteCurrentTimer()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
bool Timer::IsRunning()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
}
|
66
f8/timer.h
Normal file
66
f8/timer.h
Normal file
@ -0,0 +1,66 @@
|
||||
#pragma once
|
||||
|
||||
#include <a8/xtimer.h>
|
||||
#include <a8/singleton.h>
|
||||
|
||||
namespace f8
|
||||
{
|
||||
class TimerWp
|
||||
{
|
||||
public:
|
||||
TimerWp(a8::XTimerWp wp): p_(wp) {};
|
||||
bool expired() { return p_.expired();};
|
||||
auto&& lock() { return p_.lock(); };
|
||||
|
||||
private:
|
||||
a8::XTimerWp p_;
|
||||
friend class Timer;
|
||||
};
|
||||
|
||||
class Attacher
|
||||
{
|
||||
public:
|
||||
Attacher();
|
||||
void ClearTimerList() { p_.ClearTimerList(); };
|
||||
|
||||
private:
|
||||
a8::Attacher p_;
|
||||
friend class Timer;
|
||||
};
|
||||
|
||||
class Timer : public a8::Singleton<Timer>
|
||||
{
|
||||
|
||||
private:
|
||||
Timer() {};
|
||||
friend class a8::Singleton<Timer>;
|
||||
|
||||
public:
|
||||
void Init();
|
||||
void UnInit();
|
||||
bool Initialized();
|
||||
void Update();
|
||||
|
||||
void SetTimeout(int expire_time, a8::TimerCb cb);
|
||||
void SetTimeoutEx(int expire_time, a8::TimerCb cb, Attacher* attacher);
|
||||
TimerWp SetTimeoutWp(int expire_time, a8::TimerCb cb);
|
||||
TimerWp SetTimeoutWpEx(int expire_time, a8::TimerCb cb, Attacher* attacher);
|
||||
|
||||
void SetInterval(int expire_time, a8::TimerCb cb);
|
||||
void SetIntervalEx(int expire_time, a8::TimerCb cb, Attacher* attacher);
|
||||
TimerWp SetIntervalWp(int expire_time, a8::TimerCb cb);
|
||||
TimerWp SetIntervalWpEx(int expire_time, a8::TimerCb cb, Attacher* attacher);
|
||||
|
||||
void FireEvent(TimerWp& timer_wp, int event, a8::Args* args);
|
||||
void ModifyTime(TimerWp& timer_wp, int expire_time);
|
||||
void Delete(TimerWp& timer_wp);
|
||||
long long GetRemainTime(TimerWp& timer_wp);
|
||||
void DeleteCurrentTimer();
|
||||
bool IsRunning();
|
||||
|
||||
private:
|
||||
bool initialized_ = false;
|
||||
a8::XTimer xtimer_;
|
||||
};
|
||||
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user