1 #ifndef PROTON_RECEIVER_HPP
2 #define PROTON_RECEIVER_HPP
26 #include "./internal/export.hpp"
29 #include <proton/type_compat.h>
43 PN_CPP_EXTERN
receiver(pn_link_t* r);
50 PN_CPP_EXTERN ~receiver();
55 PN_CPP_EXTERN
void open();
69 PN_CPP_EXTERN
void add_credit(uint32_t);
79 PN_CPP_EXTERN
void drain();
82 friend class internal::factory<receiver>;
83 friend class receiver_iterator;
90 class receiver_iterator :
public internal::iter_base<receiver, receiver_iterator> {
91 explicit receiver_iterator(receiver r, pn_session_t* s = 0) :
92 internal::iter_base<receiver, receiver_iterator>(r), session_(s) {}
96 explicit receiver_iterator() :
97 internal::iter_base<receiver, receiver_iterator>(0), session_(0) {}
100 PN_CPP_EXTERN receiver_iterator operator++();
103 pn_session_t* session_;
105 friend class connection;
106 friend class session;
110 typedef internal::iter_range<receiver_iterator> receiver_range;
116 #endif // PROTON_RECEIVER_HPP
A named channel for sending or receiving messages.
Definition: link.hpp:41
A named channel for sending or receiving messages.
A point of origin for messages.
Definition: source.hpp:44
Options for creating a receiver.
Definition: receiver_options.hpp:56
A channel for receiving messages.
Definition: receiver.hpp:40
A destination for messages.
Definition: target.hpp:45
receiver()
Create an empty receiver.
Definition: receiver.hpp:48