1 #ifndef PROTON_EVENT_LOOP_HPP
2 #define PROTON_EVENT_LOOP_HPP
26 #include "./internal/config.hpp"
27 #include "./internal/export.hpp"
28 #include "./internal/pn_unique_ptr.hpp"
32 struct pn_connection_t;
54 PN_CPP_EXTERN ~event_loop();
56 #if PN_CPP_HAS_EXPLICIT_CONVERSIONS
57 PN_CPP_EXTERN
explicit operator bool()
const {
return bool(impl_); }
63 PN_CPP_EXTERN
bool operator !()
const {
return !impl_; }
72 #if PN_CPP_HAS_STD_FUNCTION
73 PN_CPP_EXTERN
bool inject(std::function<
void()> f);
78 PN_CPP_EXTERN
static event_loop&
get(pn_connection_t*);
79 PN_CPP_EXTERN
static event_loop&
get(pn_session_t*);
80 PN_CPP_EXTERN
static event_loop&
get(pn_link_t*);
82 internal::pn_unique_ptr<impl> impl_;
93 #endif // PROTON_EVENT_LOOP_HPP
A top-level container of connections, sessions, senders, and receivers.
Definition: container.hpp:47
Experimental - A serial execution context.
Definition: event_loop.hpp:44
A C++03 compatible void no-argument callback function object.
Definition: function.hpp:35
Experimental - An AMQP driver for a single connection.
Definition: connection_driver.hpp:88
Experimental - A thread-safe object wrapper.
Definition: fwd.hpp:65