1#ifndef PROTON_RECEIVER_HPP
2#define PROTON_RECEIVER_HPP
27#include "./internal/export.hpp"
30#include <proton/type_compat.h>
44 PN_CPP_EXTERN
receiver(pn_link_t* r);
85 friend class internal::factory<
receiver>;
86 friend class receiver_iterator;
93class receiver_iterator :
public internal::iter_base<receiver, receiver_iterator> {
94 explicit receiver_iterator(
receiver r, pn_session_t* s =
nullptr) :
95 internal::iter_base<
receiver, receiver_iterator>(r), session_(s) {}
99 explicit receiver_iterator() :
100 internal::iter_base<receiver, receiver_iterator>(nullptr), session_(nullptr) {}
103 PN_CPP_EXTERN receiver_iterator operator++();
106 pn_session_t* session_;
108 friend class connection;
109 friend class session;
113typedef internal::iter_range<receiver_iterator> receiver_range;
link()
Create an empty link.
Definition link.hpp:50
Options for creating a receiver.
Definition receiver_options.hpp:59
A channel for receiving messages.
Definition receiver.hpp:42
delivery_range unsettled_deliveries() const
Unsettled API - Get a range of unsettled deliveries on this receiver.
class target target() const
Get the target node.
void add_credit(uint32_t)
Increment the credit available to the sender.
void open(const receiver_options &opts)
Open the receiver.
class source source() const
Get the source node.
void open()
Open the receiver.
receiver()=default
Create an empty receiver.
void drain()
Unsettled API - Commence a drain cycle.
A named channel for sending or receiving messages.
The main Proton namespace.
Definition annotation_key.hpp:33