Add a simple event wrapper class that takes a class pointer
and member function and will schedule it for the future. --HG-- extra : convert_revision : f5c5a8df0839e1e10716850c2086862c4a5bc499
This commit is contained in:
parent
ec06c63cc7
commit
a1259a4fcf
|
@ -236,6 +236,20 @@ DelayFunction(Tick when, T *object)
|
||||||
new DelayEvent(when, object);
|
new DelayEvent(when, object);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
template <class T, void (T::* F)()>
|
||||||
|
class EventWrapper : public Event
|
||||||
|
{
|
||||||
|
private:
|
||||||
|
T *object;
|
||||||
|
|
||||||
|
public:
|
||||||
|
EventWrapper(T *obj, EventQueue *q = &mainEventQueue,
|
||||||
|
Priority p = Default_Pri)
|
||||||
|
: Event(q, p), object(obj)
|
||||||
|
{}
|
||||||
|
void process() { (object->*F)(); }
|
||||||
|
};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Queue of events sorted in time order
|
* Queue of events sorted in time order
|
||||||
*/
|
*/
|
||||||
|
|
Loading…
Reference in a new issue