26 #include "proton/object.hpp"
27 #include "proton/duration.hpp"
41 class reactor :
public object<pn_reactor_t> {
43 reactor(pn_reactor_t* r = 0) : object<pn_reactor_t>(r) {}
46 PN_CPP_EXTERN
static reactor create();
52 PN_CPP_EXTERN
void run();
55 PN_CPP_EXTERN
void start();
58 PN_CPP_EXTERN
bool process();
61 PN_CPP_EXTERN
void stop();
64 PN_CPP_EXTERN std::string id()
const;
67 PN_CPP_EXTERN duration timeout();
70 PN_CPP_EXTERN
void timeout(duration timeout);
72 PN_CPP_EXTERN amqp_timestamp mark();
73 PN_CPP_EXTERN amqp_timestamp now();
75 PN_CPP_EXTERN task schedule(
int, pn_handler_t*);
77 class connection connection(pn_handler_t*)
const;
79 pn_handler_t* pn_handler()
const;
81 void pn_handler(pn_handler_t* );
83 pn_handler_t* pn_global_handler()
const;
85 void pn_global_handler(pn_handler_t* );
87 pn_io_t* pn_io()
const;
89 PN_CPP_EXTERN
void wakeup();
90 PN_CPP_EXTERN
bool quiesced();
91 PN_CPP_EXTERN
void yield();
93 friend class container_impl;
94 friend class container_context;
101 #endif // REACTOR_HPP
A proton URL.
Definition: url.hpp:51