![]() |
D++ (DPP)
C++ Discord API Bot Library
|
A timed_listener is a way to temporarily attach to an event for a specific timeframe, then detach when complete. A lambda may also be optionally called when the timeout is reached. Destructing the timed_listener detaches any attached event listeners, and cancels any created timers, but does not call any timeout lambda. More...
#include <cluster.h>
Public Member Functions | |
| timed_listener (cluster *cl, uint64_t _duration, attached_event &event, listening_function listener, timer_callback_t on_end={}) | |
| Construct a new timed listener object. More... | |
| ~timed_listener () | |
| Destroy the timed listener object. More... | |
A timed_listener is a way to temporarily attach to an event for a specific timeframe, then detach when complete. A lambda may also be optionally called when the timeout is reached. Destructing the timed_listener detaches any attached event listeners, and cancels any created timers, but does not call any timeout lambda.
| attached_event | Event within cluster to attach to within the cluster::dispatch member (dpp::dispatcher object) |
| listening_function | Definition of lambda function that matches up with the attached_event. |
|
inline |
Construct a new timed listener object.
| cl | Owning cluster |
| _duration | Duration of timed event in seconds |
| event | Event to hook, e.g. cluster.on_message_create |
| on_end | An optional void() lambda to trigger when the timed_listener times out. Calling the destructor before the timeout is reached does not call this lambda. |
| listener | Lambda to receive events. Type must match up properly with that passed into the 'event' parameter. |
|
inline |
Destroy the timed listener object.