25 #ifndef INCLUDED_AsyncDeviceToken_h_GUID_654218B0_3900_4B89_E86F_D314EB6C0ABF
26 #define INCLUDED_AsyncDeviceToken_h_GUID_654218B0_3900_4B89_E86F_D314EB6C0ABF
34 #include <boost/thread.hpp>
35 #include <util/RunLoopManagerBoost.h>
41 namespace connection {
47 void signalShutdown();
48 void signalAndWaitForShutdown();
54 void m_setUpdateCallback(DeviceUpdateCallback
const &cb)
override;
60 util::GuardPtr m_getSendGuard()
override;
64 void m_connectionInteract()
override;
66 void m_stopThreads()
override;
68 void m_ensureThreadStarted();
69 DeviceUpdateCallback m_cb;
70 unique_ptr<boost::thread> m_callbackThread;
74 ::util::RunLoopManagerBoost m_run;
79 #endif // INCLUDED_AsyncDeviceToken_h_GUID_654218B0_3900_4B89_E86F_D314EB6C0ABF
A DeviceToken connects the generic device interaction code in PluginKit's C API with the workings of ...
Header providing a templated functor wrapping the holding and calling of function pointer and userdat...
Base class for connection-specific message type registration.
Internal class handling the synchronization of an asynchronous thread wishing to communicate that has...
Standardized, portable parallel to struct timeval for representing both absolute times and time inter...