5#ifndef ICE_UTIL_TIMER_H
6#define ICE_UTIL_TIMER_H
28#ifndef ICE_CPP11_MAPPING
104# pragma clang diagnostic push
105# pragma clang diagnostic ignored "-Wdeprecated-declarations"
108#if (ICE_CPLUSPLUS >= 201703L)
118 return lhs.
get() < rhs.
get();
121 std::map<TimerTaskPtr, IceUtil::Time, TimerTaskCompare>
_tasks;
127# pragma clang diagnostic pop
#define ICE_DEFINE_PTR(TPtr, T)
Definition Config.h:377
#define ICE_API
Definition Config.h:197
T * get() const
Definition Handle.h:25
virtual void runTimerTask()=0
bool operator()(const TimerTaskPtr &lhs, const TimerTaskPtr &rhs) const
Definition Timer.h:116
std::map< TimerTaskPtr, IceUtil::Time, TimerTaskCompare > _tasks
Definition Timer.h:121
bool cancel(const TimerTaskPtr &)
void scheduleRepeated(const TimerTaskPtr &, const IceUtil::Time &)
std::set< Token > _tokens
Definition Timer.h:101
IceUtil::Monitor< IceUtil::Mutex > _monitor
Definition Timer.h:99
void schedule(const TimerTaskPtr &, const IceUtil::Time &)
virtual void runTimerTask(const TimerTaskPtr &)
IceUtil::Time _wakeUpTime
Definition Timer.h:122
bool _destroyed
Definition Timer.h:100
IceUtil::Handle< Timer > TimerPtr
Definition Timer.h:21
::IceUtil::Handle< TimerTask > TimerTaskPtr
Definition Timer.h:38
IceUtil::Time delay
Definition Timer.h:92
Token(const IceUtil::Time &, const IceUtil::Time &, const TimerTaskPtr &)
Definition Timer.h:131
bool operator<(const Token &r) const
Definition Timer.h:137
IceUtil::Time scheduledTime
Definition Timer.h:91
TimerTaskPtr task
Definition Timer.h:93