[core] Introduce Timer abstraction
This commit is contained in:
30
include/mbgl/util/timer.hpp
Normal file
30
include/mbgl/util/timer.hpp
Normal file
@@ -0,0 +1,30 @@
|
||||
#ifndef MBGL_UTIL_TIMER
|
||||
#define MBGL_UTIL_TIMER
|
||||
|
||||
#include <mbgl/util/noncopyable.hpp>
|
||||
#include <mbgl/util/chrono.hpp>
|
||||
|
||||
#include <memory>
|
||||
#include <functional>
|
||||
|
||||
namespace mbgl {
|
||||
namespace util {
|
||||
|
||||
class Timer : private util::noncopyable {
|
||||
public:
|
||||
Timer();
|
||||
~Timer();
|
||||
|
||||
void start(Duration timeout, Duration repeat, std::function<void()>&&);
|
||||
void stop();
|
||||
void unref();
|
||||
|
||||
private:
|
||||
class Impl;
|
||||
std::unique_ptr<Impl> impl;
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
Reference in New Issue
Block a user