Callback guard. More...
#include <callback-guard.hpp>
Classes | |
class | SharedState |
Public Types | |
typedef std::shared_ptr< void > | Tracker |
Public Member Functions | |
CallbackGuard () | |
Creates a guard. More... | |
~CallbackGuard () | |
Waits for all trackers. More... | |
Tracker | spawn () const |
Creates a tracker. More... | |
long | getTrackersCount () const |
Gets trackers count. More... | |
bool | waitForTrackers (const unsigned int timeoutMs) |
Wait for all trackers. More... | |
Private Member Functions | |
CallbackGuard (const CallbackGuard &)=delete | |
CallbackGuard & | operator= (const CallbackGuard &)=delete |
Private Attributes | |
std::shared_ptr< SharedState > | mSharedState |
Callback guard.
An utility class to control and/or monitor callback lifecycle.
typedef std::shared_ptr<void> utils::CallbackGuard::Tracker |
utils::CallbackGuard::CallbackGuard | ( | ) |
Creates a guard.
utils::CallbackGuard::~CallbackGuard | ( | ) |
Waits for all trackers.
|
privatedelete |
long utils::CallbackGuard::getTrackersCount | ( | ) | const |
Gets trackers count.
|
privatedelete |
CallbackGuard::Tracker utils::CallbackGuard::spawn | ( | ) | const |
Creates a tracker.
bool utils::CallbackGuard::waitForTrackers | ( | const unsigned int | timeoutMs | ) |
Wait for all trackers.
|
private |