You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by jr...@apache.org on 2017/08/30 03:12:53 UTC

[34/51] [partial] qpid-site git commit: QPID-7903: Publish a snapshot of the Proton C docs

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/36c59045/content/releases/qpid-proton-master/proton/c/api/group__event.html
----------------------------------------------------------------------
diff --git a/content/releases/qpid-proton-master/proton/c/api/group__event.html b/content/releases/qpid-proton-master/proton/c/api/group__event.html
index 430cf67..af8d800 100755
--- a/content/releases/qpid-proton-master/proton/c/api/group__event.html
+++ b/content/releases/qpid-proton-master/proton/c/api/group__event.html
@@ -3,7 +3,8 @@
 <head>
 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
-<meta name="generator" content="Doxygen 1.8.11"/>
+<meta name="generator" content="Doxygen 1.8.13"/>
+<meta name="viewport" content="width=device-width, initial-scale=1"/>
 <title>Qpid Proton C API: Event</title>
 <link href="tabs.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="jquery.js"></script>
@@ -14,7 +15,6 @@
 <script type="text/javascript" src="navtree.js"></script>
 <script type="text/javascript">
   $(document).ready(initResizable);
-  $(window).load(resizeHeight);
 </script>
 <link href="search/search.css" rel="stylesheet" type="text/css"/>
 <script type="text/javascript" src="search/searchdata.js"></script>
@@ -55,7 +55,7 @@
 </table>
 </div>
 <!-- end header part -->
-<!-- Generated by Doxygen 1.8.11 -->
+<!-- Generated by Doxygen 1.8.13 -->
 <script type="text/javascript">
 var searchBox = new SearchBox("searchBox", "search",false,'Search');
 </script>
@@ -107,7 +107,7 @@ Typedefs</h2></td></tr>
 <tr class="memdesc:ga87f3028b4888632bbd56fb71ac737ae8"><td class="mdescLeft">&#160;</td><td class="mdescRight">Notification of a state change in the protocol engine.  <a href="#ga87f3028b4888632bbd56fb71ac737ae8">More...</a><br /></td></tr>
 <tr class="separator:ga87f3028b4888632bbd56fb71ac737ae8"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga6bc581dfeaa8e8d46d07d37229d565c9"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="group__event.html#ga6bc581dfeaa8e8d46d07d37229d565c9">pn_event_batch_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#ga6bc581dfeaa8e8d46d07d37229d565c9">pn_event_batch_t</a></td></tr>
-<tr class="memdesc:ga6bc581dfeaa8e8d46d07d37229d565c9"><td class="mdescLeft">&#160;</td><td class="mdescRight"><b>Experimental</b> - A batch of events to handle.  <a href="#ga6bc581dfeaa8e8d46d07d37229d565c9">More...</a><br /></td></tr>
+<tr class="memdesc:ga6bc581dfeaa8e8d46d07d37229d565c9"><td class="mdescLeft">&#160;</td><td class="mdescRight"><b>Experimental</b> - A batch of events that must be handled in sequence.  <a href="#ga6bc581dfeaa8e8d46d07d37229d565c9">More...</a><br /></td></tr>
 <tr class="separator:ga6bc581dfeaa8e8d46d07d37229d565c9"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga905cdecedb8020bc28e648e43348b5d1"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a></td></tr>
 <tr class="memdesc:ga905cdecedb8020bc28e648e43348b5d1"><td class="mdescLeft">&#160;</td><td class="mdescRight">An event collector.  <a href="#ga905cdecedb8020bc28e648e43348b5d1">More...</a><br /></td></tr>
@@ -157,27 +157,26 @@ Enumerations</h2></td></tr>
 <a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa7c7278de5bcbf3b42b3e692ca21f6c5a">PN_TRANSPORT_ERROR</a>, 
 <br />
 &#160;&#160;<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa98facd13835b4a1d8e878d6f13c10a51">PN_TRANSPORT_HEAD_CLOSED</a>, 
-<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaafeca7b216c6adaa6f26b338443715018">PN_TRANSPORT_WRITE_CLOSED</a>, 
 <a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa205d07df6cd3d07b37a89f046b1184db">PN_TRANSPORT_TAIL_CLOSED</a>, 
-<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa12d81068a6a24cafc311fbabad00da34">PN_TRANSPORT_READ_CLOSED</a>, 
-<br />
-&#160;&#160;<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa1ca722ce3c0b2c13a33636cded8430ba">PN_TRANSPORT_CLOSED</a>, 
+<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa1ca722ce3c0b2c13a33636cded8430ba">PN_TRANSPORT_CLOSED</a>, 
 <b>PN_SELECTABLE_INIT</b>, 
-<b>PN_SELECTABLE_UPDATED</b>, 
-<b>PN_SELECTABLE_READABLE</b>, 
 <br />
-&#160;&#160;<b>PN_SELECTABLE_WRITABLE</b>, 
+&#160;&#160;<b>PN_SELECTABLE_UPDATED</b>, 
+<b>PN_SELECTABLE_READABLE</b>, 
+<b>PN_SELECTABLE_WRITABLE</b>, 
 <b>PN_SELECTABLE_ERROR</b>, 
-<b>PN_SELECTABLE_EXPIRED</b>, 
-<b>PN_SELECTABLE_FINAL</b>, 
 <br />
-&#160;&#160;<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa28a2bfee806bbc1fe31499c8eec39db0">PN_CONNECTION_WAKE</a>, 
+&#160;&#160;<b>PN_SELECTABLE_EXPIRED</b>, 
+<b>PN_SELECTABLE_FINAL</b>, 
+<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa28a2bfee806bbc1fe31499c8eec39db0">PN_CONNECTION_WAKE</a>, 
 <a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa0602b15957883e7d00ccdff4abca992c">PN_LISTENER_ACCEPT</a>, 
-<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaad5920df168cd28daaf253cad789d8aca">PN_LISTENER_CLOSE</a>, 
+<br />
+&#160;&#160;<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaad5920df168cd28daaf253cad789d8aca">PN_LISTENER_CLOSE</a>, 
 <a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaaee05826a80e94b5b86c4544e4715f499">PN_PROACTOR_INTERRUPT</a>, 
+<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa4afa8c2da61f4c665c669fbe37b1c5fe">PN_PROACTOR_TIMEOUT</a>, 
+<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa894e93f167ef39e28a07c9cdf6b1181b">PN_PROACTOR_INACTIVE</a>, 
 <br />
-&#160;&#160;<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa4afa8c2da61f4c665c669fbe37b1c5fe">PN_PROACTOR_TIMEOUT</a>, 
-<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa894e93f167ef39e28a07c9cdf6b1181b">PN_PROACTOR_INACTIVE</a>
+&#160;&#160;<a class="el" href="group__event.html#gga4876e2eed24a4d4e4c52b99842103cdaa6e25f00110ab278fd8b34fee00bd5fd7">PN_LISTENER_OPEN</a>
 <br />
  }<tr class="memdesc:ga4876e2eed24a4d4e4c52b99842103cda"><td class="mdescLeft">&#160;</td><td class="mdescRight">An event type.  <a href="group__event.html#ga4876e2eed24a4d4e4c52b99842103cda">More...</a><br /></td></tr>
 </td></tr>
@@ -197,6 +196,9 @@ Functions</h2></td></tr>
 <tr class="memitem:ga04e6edffd24e5c865ac1f6b3529469e4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#ga04e6edffd24e5c865ac1f6b3529469e4">pn_collector_release</a> (<a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *collector)</td></tr>
 <tr class="memdesc:ga04e6edffd24e5c865ac1f6b3529469e4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Release a collector.  <a href="#ga04e6edffd24e5c865ac1f6b3529469e4">More...</a><br /></td></tr>
 <tr class="separator:ga04e6edffd24e5c865ac1f6b3529469e4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gadab22668a28ff1af0d8ef82df516f94f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#gadab22668a28ff1af0d8ef82df516f94f">pn_collector_drain</a> (<a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *collector)</td></tr>
+<tr class="memdesc:gadab22668a28ff1af0d8ef82df516f94f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Drain a collector: remove and discard all events.  <a href="#gadab22668a28ff1af0d8ef82df516f94f">More...</a><br /></td></tr>
+<tr class="separator:gadab22668a28ff1af0d8ef82df516f94f"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga1857c64d3f8549209b0b8ec91bf81e89"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#ga1857c64d3f8549209b0b8ec91bf81e89">pn_collector_put</a> (<a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *collector, const pn_class_t *clazz, void *context, <a class="el" href="group__event.html#ga4876e2eed24a4d4e4c52b99842103cda">pn_event_type_t</a> type)</td></tr>
 <tr class="memdesc:ga1857c64d3f8549209b0b8ec91bf81e89"><td class="mdescLeft">&#160;</td><td class="mdescRight">Place a new event on a collector.  <a href="#ga1857c64d3f8549209b0b8ec91bf81e89">More...</a><br /></td></tr>
 <tr class="separator:ga1857c64d3f8549209b0b8ec91bf81e89"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -204,16 +206,16 @@ Functions</h2></td></tr>
 <tr class="memdesc:ga672d5ec725787815cae9b7bc739cd6f9"><td class="mdescLeft">&#160;</td><td class="mdescRight">Access the head event contained by a collector.  <a href="#ga672d5ec725787815cae9b7bc739cd6f9">More...</a><br /></td></tr>
 <tr class="separator:ga672d5ec725787815cae9b7bc739cd6f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga7a4a24eb162059737f44e7520a0c1a54"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#ga7a4a24eb162059737f44e7520a0c1a54">pn_collector_pop</a> (<a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *collector)</td></tr>
-<tr class="memdesc:ga7a4a24eb162059737f44e7520a0c1a54"><td class="mdescLeft">&#160;</td><td class="mdescRight">Clear the head event on a collector.  <a href="#ga7a4a24eb162059737f44e7520a0c1a54">More...</a><br /></td></tr>
+<tr class="memdesc:ga7a4a24eb162059737f44e7520a0c1a54"><td class="mdescLeft">&#160;</td><td class="mdescRight">Remove the head event on a collector.  <a href="#ga7a4a24eb162059737f44e7520a0c1a54">More...</a><br /></td></tr>
 <tr class="separator:ga7a4a24eb162059737f44e7520a0c1a54"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga554801c4fb87ae7518772a4492f307e0"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#ga554801c4fb87ae7518772a4492f307e0">pn_collector_next</a> (<a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *collector)</td></tr>
-<tr class="memdesc:ga554801c4fb87ae7518772a4492f307e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the next event to be handled.  <a href="#ga554801c4fb87ae7518772a4492f307e0">More...</a><br /></td></tr>
+<tr class="memdesc:ga554801c4fb87ae7518772a4492f307e0"><td class="mdescLeft">&#160;</td><td class="mdescRight">Pop and return the head event, returns NULL if the collector is empty.  <a href="#ga554801c4fb87ae7518772a4492f307e0">More...</a><br /></td></tr>
 <tr class="separator:ga554801c4fb87ae7518772a4492f307e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:ga9304e9c2e85cb5de23c81ae7cd8a9077"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#ga9304e9c2e85cb5de23c81ae7cd8a9077">pn_collector_prev</a> (<a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *collector)</td></tr>
-<tr class="memdesc:ga9304e9c2e85cb5de23c81ae7cd8a9077"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the same event as the previous call to <a class="el" href="group__event.html#ga554801c4fb87ae7518772a4492f307e0" title="Return the next event to be handled. ">pn_collector_next()</a>  <a href="#ga9304e9c2e85cb5de23c81ae7cd8a9077">More...</a><br /></td></tr>
+<tr class="memdesc:ga9304e9c2e85cb5de23c81ae7cd8a9077"><td class="mdescLeft">&#160;</td><td class="mdescRight">Return the same pointer as the most recent call to <a class="el" href="group__event.html#ga554801c4fb87ae7518772a4492f307e0" title="Pop and return the head event, returns NULL if the collector is empty. ">pn_collector_next()</a>.  <a href="#ga9304e9c2e85cb5de23c81ae7cd8a9077">More...</a><br /></td></tr>
 <tr class="separator:ga9304e9c2e85cb5de23c81ae7cd8a9077"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gabf731be5b6c0d15173fd4d9a3b132121"><td class="memItemLeft" align="right" valign="top">bool&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#gabf731be5b6c0d15173fd4d9a3b132121">pn_collector_more</a> (<a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *collector)</td></tr>
-<tr class="memdesc:gabf731be5b6c0d15173fd4d9a3b132121"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if there are more events after the current event.  <a href="#gabf731be5b6c0d15173fd4d9a3b132121">More...</a><br /></td></tr>
+<tr class="memdesc:gabf731be5b6c0d15173fd4d9a3b132121"><td class="mdescLeft">&#160;</td><td class="mdescRight">Check if there are more events after the current head event.  <a href="#gabf731be5b6c0d15173fd4d9a3b132121">More...</a><br /></td></tr>
 <tr class="separator:gabf731be5b6c0d15173fd4d9a3b132121"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gacaea54ca51885933b4987c131a3d1b0d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__event.html#ga4876e2eed24a4d4e4c52b99842103cda">pn_event_type_t</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#gacaea54ca51885933b4987c131a3d1b0d">pn_event_type</a> (<a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *event)</td></tr>
 <tr class="memdesc:gacaea54ca51885933b4987c131a3d1b0d"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the type of an event.  <a href="#gacaea54ca51885933b4987c131a3d1b0d">More...</a><br /></td></tr>
@@ -221,7 +223,7 @@ Functions</h2></td></tr>
 <tr class="memitem:ga1f3f0a01db5cce634c5d0ccd5d9b50be"><td class="memItemLeft" align="right" valign="top">const pn_class_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#ga1f3f0a01db5cce634c5d0ccd5d9b50be">pn_event_class</a> (<a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *event)</td></tr>
 <tr class="memdesc:ga1f3f0a01db5cce634c5d0ccd5d9b50be"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the class associated with the event context.  <a href="#ga1f3f0a01db5cce634c5d0ccd5d9b50be">More...</a><br /></td></tr>
 <tr class="separator:ga1f3f0a01db5cce634c5d0ccd5d9b50be"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:gaecda1dea7e3a01c4ba246043ea438b19"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaecda1dea7e3a01c4ba246043ea438b19"></a>
+<tr class="memitem:gaecda1dea7e3a01c4ba246043ea438b19"><td class="memItemLeft" align="right" valign="top"><a id="gaecda1dea7e3a01c4ba246043ea438b19"></a>
 void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#gaecda1dea7e3a01c4ba246043ea438b19">pn_event_context</a> (<a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *event)</td></tr>
 <tr class="memdesc:gaecda1dea7e3a01c4ba246043ea438b19"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get the context associated with an event. <br /></td></tr>
 <tr class="separator:gaecda1dea7e3a01c4ba246043ea438b19"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -243,6 +245,9 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
 <tr class="memitem:ga5989cf0c187bd12899596fe06931476e"><td class="memItemLeft" align="right" valign="top">pn_record_t *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#ga5989cf0c187bd12899596fe06931476e">pn_event_attachments</a> (<a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *event)</td></tr>
 <tr class="memdesc:ga5989cf0c187bd12899596fe06931476e"><td class="mdescLeft">&#160;</td><td class="mdescRight">Get any attachments associated with an event.  <a href="#ga5989cf0c187bd12899596fe06931476e">More...</a><br /></td></tr>
 <tr class="separator:ga5989cf0c187bd12899596fe06931476e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gae7beda7f373660b889b61412ce429028"><td class="memItemLeft" align="right" valign="top">struct <a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#gae7beda7f373660b889b61412ce429028">pn_event_condition</a> (<a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *event)</td></tr>
+<tr class="memdesc:gae7beda7f373660b889b61412ce429028"><td class="mdescLeft">&#160;</td><td class="mdescRight">If the event context object has a condition and the condition is set return it, otherwise return NULL.  <a href="#gae7beda7f373660b889b61412ce429028">More...</a><br /></td></tr>
+<tr class="separator:gae7beda7f373660b889b61412ce429028"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:gac3fbf151357d3101ac294cb675348c76"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="group__event.html#gac3fbf151357d3101ac294cb675348c76">pn_event_batch_next</a> (<a class="el" href="group__event.html#ga6bc581dfeaa8e8d46d07d37229d565c9">pn_event_batch_t</a> *batch)</td></tr>
 <tr class="memdesc:gac3fbf151357d3101ac294cb675348c76"><td class="mdescLeft">&#160;</td><td class="mdescRight"><b>Experimental</b> - Remove the next event from the batch and return it.  <a href="#gac3fbf151357d3101ac294cb675348c76">More...</a><br /></td></tr>
 <tr class="separator:gac3fbf151357d3101ac294cb675348c76"><td class="memSeparator" colspan="2">&#160;</td></tr>
@@ -250,22 +255,35 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
 <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
 <p>Protocol and transport events. </p>
 <h2 class="groupheader">Typedef Documentation</h2>
-<a class="anchor" id="ga905cdecedb8020bc28e648e43348b5d1"></a>
+<a id="ga87f3028b4888632bbd56fb71ac737ae8"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga87f3028b4888632bbd56fb71ac737ae8">&#9670;&nbsp;</a></span>pn_event_t</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef struct <a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> <a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a></td>
+          <td class="memname">typedef struct <a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> <a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a></td>
         </tr>
       </table>
 </div><div class="memdoc">
 
-<p>An event collector. </p>
-<p>A pn_collector_t may be used to register interest in being notified of high level events that can occur to the various objects representing AMQP endpoint state. See <a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8" title="Notification of a state change in the protocol engine. ">pn_event_t</a> for more details. </p>
+<p>Notification of a state change in the protocol engine. </p>
+<p>The AMQP endpoint state modeled by the protocol engine is captured by the following object types: <a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">Deliveries </a>, <a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">Links </a>, <a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">Sessions </a>, <a class="el" href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">Connections </a>, and <a class="el" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">Transports </a>. These objects are related as follows:</p>
+<ul>
+<li><a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">Deliveries </a> always have a single parent Link</li>
+<li><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">Links </a> always have a single parent Session</li>
+<li><a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">Sessions </a> always have a single parent Connection</li>
+<li><a class="el" href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">Connections </a> optionally have at most one associated Transport</li>
+<li><a class="el" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">Transports </a> optionally have at most one associated Connection</li>
+</ul>
+<p>Every event has a type (see <a class="el" href="group__event.html#ga4876e2eed24a4d4e4c52b99842103cda" title="An event type. ">pn_event_type_t</a>) that identifies what sort of state change has occurred along with a pointer to the object whose state has changed (as well as its associated objects).</p>
+<p>Events are accessed by creating a <a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">Collector </a> with <a class="el" href="group__event.html#ga7c7754316e257d4ce7660730953000ac" title="Construct a collector. ">pn_collector()</a> and registering it with the <a class="el" href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">Connection </a> of interest through use of <a class="el" href="group__connection.html#ga2fd2089e8eaa2a362606498f233ada61" title="Associate a connection object with an event collector. ">pn_connection_collect()</a>. Once a collector has been registered, <a class="el" href="group__event.html#ga672d5ec725787815cae9b7bc739cd6f9" title="Access the head event contained by a collector. ">pn_collector_peek()</a> and <a class="el" href="group__event.html#ga7a4a24eb162059737f44e7520a0c1a54" title="Remove the head event on a collector. ">pn_collector_pop()</a> are used to access and process events. </p>
 
 </div>
 </div>
-<a class="anchor" id="ga6bc581dfeaa8e8d46d07d37229d565c9"></a>
+<a id="ga6bc581dfeaa8e8d46d07d37229d565c9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga6bc581dfeaa8e8d46d07d37229d565c9">&#9670;&nbsp;</a></span>pn_event_batch_t</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -275,37 +293,32 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
       </table>
 </div><div class="memdoc">
 
-<p><b>Experimental</b> - A batch of events to handle. </p>
-<p>Call <a class="el" href="group__event.html#gac3fbf151357d3101ac294cb675348c76" title="Experimental - Remove the next event from the batch and return it. ">pn_event_batch_next()</a> in a loop until it returns NULL to handle them. </p>
+<p><b>Experimental</b> - A batch of events that must be handled in sequence. </p>
+<p>Call <a class="el" href="group__event.html#gac3fbf151357d3101ac294cb675348c76" title="Experimental - Remove the next event from the batch and return it. ">pn_event_batch_next()</a> in a loop until it returns NULL to extract the events. </p>
 
 </div>
 </div>
-<a class="anchor" id="ga87f3028b4888632bbd56fb71ac737ae8"></a>
+<a id="ga905cdecedb8020bc28e648e43348b5d1"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga905cdecedb8020bc28e648e43348b5d1">&#9670;&nbsp;</a></span>pn_collector_t</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">typedef struct <a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> <a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a></td>
+          <td class="memname">typedef struct <a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> <a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a></td>
         </tr>
       </table>
 </div><div class="memdoc">
 
-<p>Notification of a state change in the protocol engine. </p>
-<p>The AMQP endpoint state modeled by the protocol engine is captured by the following object types: <a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">Deliveries </a>, <a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">Links </a>, <a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">Sessions </a>, <a class="el" href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">Connections </a>, and <a class="el" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">Transports </a>. These objects are related as follows:</p>
-<ul>
-<li><a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">Deliveries </a> always have a single parent Link</li>
-<li><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">Links </a> always have a single parent Session</li>
-<li><a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">Sessions </a> always have a single parent Connection</li>
-<li><a class="el" href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">Connections </a> optionally have at most one associated Transport</li>
-<li><a class="el" href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">Transports </a> optionally have at most one associated Connection</li>
-</ul>
-<p>Every event has a type (see <a class="el" href="group__event.html#ga4876e2eed24a4d4e4c52b99842103cda" title="An event type. ">pn_event_type_t</a>) that identifies what sort of state change has occurred along with a pointer to the object whose state has changed (as well as its associated objects).</p>
-<p>Events are accessed by creating a <a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">Collector </a> with <a class="el" href="group__event.html#ga7c7754316e257d4ce7660730953000ac" title="Construct a collector. ">pn_collector()</a> and registering it with the <a class="el" href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">Connection </a> of interest through use of <a class="el" href="group__connection.html#ga2fd2089e8eaa2a362606498f233ada61" title="Associate a connection object with an event collector. ">pn_connection_collect()</a>. Once a collector has been registered, <a class="el" href="group__event.html#ga672d5ec725787815cae9b7bc739cd6f9" title="Access the head event contained by a collector. ">pn_collector_peek()</a> and <a class="el" href="group__event.html#ga7a4a24eb162059737f44e7520a0c1a54" title="Clear the head event on a collector. ">pn_collector_pop()</a> are used to access and process events. </p>
+<p>An event collector. </p>
+<p>A pn_collector_t may be used to register interest in being notified of high level events that can occur to the various objects representing AMQP endpoint state. See <a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8" title="Notification of a state change in the protocol engine. ">pn_event_t</a> for more details. </p>
 
 </div>
 </div>
 <h2 class="groupheader">Enumeration Type Documentation</h2>
-<a class="anchor" id="ga4876e2eed24a4d4e4c52b99842103cda"></a>
+<a id="ga4876e2eed24a4d4e4c52b99842103cda"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga4876e2eed24a4d4e4c52b99842103cda">&#9670;&nbsp;</a></span>pn_event_type_t</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -317,180 +330,168 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
 
 <p>An event type. </p>
 <table class="fieldtable">
-<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa1f5eec218463ae8e4f962fcc8eb2e657"></a>PN_EVENT_NONE&#160;</td><td class="fielddoc">
-<p>Defined as a programming convenience. </p>
+<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa1f5eec218463ae8e4f962fcc8eb2e657"></a>PN_EVENT_NONE&#160;</td><td class="fielddoc"><p>Defined as a programming convenience. </p>
 <p>No event of this type will ever be generated. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa95e9355638399ee20a697f3f494ab7db"></a>PN_REACTOR_INIT&#160;</td><td class="fielddoc">
-<p>A reactor has been started. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa95e9355638399ee20a697f3f494ab7db"></a>PN_REACTOR_INIT&#160;</td><td class="fielddoc"><p>A reactor has been started. </p>
 <p>Events of this type point to the reactor. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa5548649935a6aab6e6547c9036f685ff"></a>PN_REACTOR_QUIESCED&#160;</td><td class="fielddoc">
-<p>A reactor has no more events to process. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa5548649935a6aab6e6547c9036f685ff"></a>PN_REACTOR_QUIESCED&#160;</td><td class="fielddoc"><p>A reactor has no more events to process. </p>
 <p>Events of this type point to the reactor. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaad164b6566815866ed2c1d981e02bacb0"></a>PN_REACTOR_FINAL&#160;</td><td class="fielddoc">
-<p>A reactor has been stopped. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaad164b6566815866ed2c1d981e02bacb0"></a>PN_REACTOR_FINAL&#160;</td><td class="fielddoc"><p>A reactor has been stopped. </p>
 <p>Events of this type point to the reactor. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa13fdcb0402f982fd366e58f165f376c9"></a>PN_TIMER_TASK&#160;</td><td class="fielddoc">
-<p>A timer event has occurred. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa13fdcb0402f982fd366e58f165f376c9"></a>PN_TIMER_TASK&#160;</td><td class="fielddoc"><p>A timer event has occurred. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa182e571a0310028514bce66a41063a6e"></a>PN_CONNECTION_INIT&#160;</td><td class="fielddoc">
-<p>The connection has been created. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa182e571a0310028514bce66a41063a6e"></a>PN_CONNECTION_INIT&#160;</td><td class="fielddoc"><p>The connection has been created. </p>
 <p>This is the first event that will ever be issued for a connection. Events of this type point to the relevant connection. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaaf61aa79ca82b3a8f5017dc735843fae5"></a>PN_CONNECTION_BOUND&#160;</td><td class="fielddoc">
-<p>The connection has been bound to a transport. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaaf61aa79ca82b3a8f5017dc735843fae5"></a>PN_CONNECTION_BOUND&#160;</td><td class="fielddoc"><p>The connection has been bound to a transport. </p>
 <p>This event is issued when the <a class="el" href="group__transport.html#ga1a769e2e6c900c78c710407296cb4e13" title="Binds the transport to an AMQP connection. ">pn_transport_bind()</a> operation is invoked. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaac683ba544c12cbf36a3d3015ae818498"></a>PN_CONNECTION_UNBOUND&#160;</td><td class="fielddoc">
-<p>The connection has been unbound from its transport. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaac683ba544c12cbf36a3d3015ae818498"></a>PN_CONNECTION_UNBOUND&#160;</td><td class="fielddoc"><p>The connection has been unbound from its transport. </p>
 <p>This event is issued when the <a class="el" href="group__transport.html#ga2a66ff267333651eb166f3f6fa4ede50" title="Unbinds a transport from its AMQP connection. ">pn_transport_unbind()</a> operation is invoked. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa5d285c46982df224c3e4733b05c3540a"></a>PN_CONNECTION_LOCAL_OPEN&#160;</td><td class="fielddoc">
-<p>The local connection endpoint has been closed. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa5d285c46982df224c3e4733b05c3540a"></a>PN_CONNECTION_LOCAL_OPEN&#160;</td><td class="fielddoc"><p>The local connection endpoint has been closed. </p>
 <p>Events of this type point to the relevant connection. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaad48bce685db553740fa71cc36473b5cc"></a>PN_CONNECTION_REMOTE_OPEN&#160;</td><td class="fielddoc">
-<p>The remote endpoint has opened the connection. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaad48bce685db553740fa71cc36473b5cc"></a>PN_CONNECTION_REMOTE_OPEN&#160;</td><td class="fielddoc"><p>The remote endpoint has opened the connection. </p>
 <p>Events of this type point to the relevant connection. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaac8567664d41057ae94d23776f5ecdb86"></a>PN_CONNECTION_LOCAL_CLOSE&#160;</td><td class="fielddoc">
-<p>The local connection endpoint has been closed. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaac8567664d41057ae94d23776f5ecdb86"></a>PN_CONNECTION_LOCAL_CLOSE&#160;</td><td class="fielddoc"><p>The local connection endpoint has been closed. </p>
 <p>Events of this type point to the relevant connection. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa1252529cf9f03d214c9b4fea5cf11b2f"></a>PN_CONNECTION_REMOTE_CLOSE&#160;</td><td class="fielddoc">
-<p>The remote endpoint has closed the connection. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa1252529cf9f03d214c9b4fea5cf11b2f"></a>PN_CONNECTION_REMOTE_CLOSE&#160;</td><td class="fielddoc"><p>The remote endpoint has closed the connection. </p>
 <p>Events of this type point to the relevant connection. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa6c7d6b4e5f1e4f47fa80dae1ad686e0b"></a>PN_CONNECTION_FINAL&#160;</td><td class="fielddoc">
-<p>The connection has been freed and any outstanding processing has been completed. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa6c7d6b4e5f1e4f47fa80dae1ad686e0b"></a>PN_CONNECTION_FINAL&#160;</td><td class="fielddoc"><p>The connection has been freed and any outstanding processing has been completed. </p>
 <p>This is the final event that will ever be issued for a connection. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaaf5b92fb6331bfe63786db3950073147f"></a>PN_SESSION_INIT&#160;</td><td class="fielddoc">
-<p>The session has been created. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaaf5b92fb6331bfe63786db3950073147f"></a>PN_SESSION_INIT&#160;</td><td class="fielddoc"><p>The session has been created. </p>
 <p>This is the first event that will ever be issued for a session. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa0862b8e3613b7a2b5a08a779474df424"></a>PN_SESSION_LOCAL_OPEN&#160;</td><td class="fielddoc">
-<p>The local session endpoint has been opened. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa0862b8e3613b7a2b5a08a779474df424"></a>PN_SESSION_LOCAL_OPEN&#160;</td><td class="fielddoc"><p>The local session endpoint has been opened. </p>
 <p>Events of this type point ot the relevant session. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaaf67df046bea45df34aea863d9541e806"></a>PN_SESSION_REMOTE_OPEN&#160;</td><td class="fielddoc">
-<p>The remote endpoint has opened the session. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaaf67df046bea45df34aea863d9541e806"></a>PN_SESSION_REMOTE_OPEN&#160;</td><td class="fielddoc"><p>The remote endpoint has opened the session. </p>
 <p>Events of this type point to the relevant session. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa5d3fe92cc7ef0e8712b038ecfbd05029"></a>PN_SESSION_LOCAL_CLOSE&#160;</td><td class="fielddoc">
-<p>The local session endpoint has been closed. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa5d3fe92cc7ef0e8712b038ecfbd05029"></a>PN_SESSION_LOCAL_CLOSE&#160;</td><td class="fielddoc"><p>The local session endpoint has been closed. </p>
 <p>Events of this type point ot the relevant session. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa3410075b825c59b8f4efdcddf5a5b135"></a>PN_SESSION_REMOTE_CLOSE&#160;</td><td class="fielddoc">
-<p>The remote endpoint has closed the session. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa3410075b825c59b8f4efdcddf5a5b135"></a>PN_SESSION_REMOTE_CLOSE&#160;</td><td class="fielddoc"><p>The remote endpoint has closed the session. </p>
 <p>Events of this type point to the relevant session. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaaf5eb59f4d99ef5a8efd48be64a2bd8f8"></a>PN_SESSION_FINAL&#160;</td><td class="fielddoc">
-<p>The session has been freed and any outstanding processing has been completed. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaaf5eb59f4d99ef5a8efd48be64a2bd8f8"></a>PN_SESSION_FINAL&#160;</td><td class="fielddoc"><p>The session has been freed and any outstanding processing has been completed. </p>
 <p>This is the final event that will ever be issued for a session. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa2f9e46bded95d0233cc74a71fdc75a2c"></a>PN_LINK_INIT&#160;</td><td class="fielddoc">
-<p>The link has been created. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa2f9e46bded95d0233cc74a71fdc75a2c"></a>PN_LINK_INIT&#160;</td><td class="fielddoc"><p>The link has been created. </p>
 <p>This is the first event that will ever be issued for a link. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa5ddecd4b0ea72895413fbf1b5cb41f65"></a>PN_LINK_LOCAL_OPEN&#160;</td><td class="fielddoc">
-<p>The local link endpoint has been opened. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa5ddecd4b0ea72895413fbf1b5cb41f65"></a>PN_LINK_LOCAL_OPEN&#160;</td><td class="fielddoc"><p>The local link endpoint has been opened. </p>
 <p>Events of this type point ot the relevant link. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa45edb44a6cc7908b5032944e08925307"></a>PN_LINK_REMOTE_OPEN&#160;</td><td class="fielddoc">
-<p>The remote endpoint has opened the link. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa45edb44a6cc7908b5032944e08925307"></a>PN_LINK_REMOTE_OPEN&#160;</td><td class="fielddoc"><p>The remote endpoint has opened the link. </p>
 <p>Events of this type point to the relevant link. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa3b27f8d1c91cc05b47bed1905d42373a"></a>PN_LINK_LOCAL_CLOSE&#160;</td><td class="fielddoc">
-<p>The local link endpoint has been closed. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa3b27f8d1c91cc05b47bed1905d42373a"></a>PN_LINK_LOCAL_CLOSE&#160;</td><td class="fielddoc"><p>The local link endpoint has been closed. </p>
 <p>Events of this type point ot the relevant link. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa1153f0108be071c31210dd1cd3e40a1f"></a>PN_LINK_REMOTE_CLOSE&#160;</td><td class="fielddoc">
-<p>The remote endpoint has closed the link. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa1153f0108be071c31210dd1cd3e40a1f"></a>PN_LINK_REMOTE_CLOSE&#160;</td><td class="fielddoc"><p>The remote endpoint has closed the link. </p>
 <p>Events of this type point to the relevant link. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa838b909cce908f5769d043ba3e73e73e"></a>PN_LINK_LOCAL_DETACH&#160;</td><td class="fielddoc">
-<p>The local link endpoint has been detached. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa838b909cce908f5769d043ba3e73e73e"></a>PN_LINK_LOCAL_DETACH&#160;</td><td class="fielddoc"><p>The local link endpoint has been detached. </p>
 <p>Events of this type point to the relevant link. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa5a84b68a2bd5ca705187381a785121d2"></a>PN_LINK_REMOTE_DETACH&#160;</td><td class="fielddoc">
-<p>The remote endpoint has detached the link. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa5a84b68a2bd5ca705187381a785121d2"></a>PN_LINK_REMOTE_DETACH&#160;</td><td class="fielddoc"><p>The remote endpoint has detached the link. </p>
 <p>Events of this type point to the relevant link. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa4eaecc54c07cdc9b0df7b1d536a7dc3f"></a>PN_LINK_FLOW&#160;</td><td class="fielddoc">
-<p>The flow control state for a link has changed. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa4eaecc54c07cdc9b0df7b1d536a7dc3f"></a>PN_LINK_FLOW&#160;</td><td class="fielddoc"><p>The flow control state for a link has changed. </p>
 <p>Events of this type point to the relevant link. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaaeacdc45bfe24b2a9da2aeed7b6effac5"></a>PN_LINK_FINAL&#160;</td><td class="fielddoc">
-<p>The link has been freed and any outstanding processing has been completed. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaaeacdc45bfe24b2a9da2aeed7b6effac5"></a>PN_LINK_FINAL&#160;</td><td class="fielddoc"><p>The link has been freed and any outstanding processing has been completed. </p>
 <p>This is the final event that will ever be issued for a link. Events of this type point to the relevant link. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa70bbfc163d85732b5652dc70fb3330fe"></a>PN_DELIVERY&#160;</td><td class="fielddoc">
-<p>A delivery has been created or updated. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa70bbfc163d85732b5652dc70fb3330fe"></a>PN_DELIVERY&#160;</td><td class="fielddoc"><p>A delivery has been created or updated. </p>
 <p>Events of this type point to the relevant delivery. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaad7329eb7a015f62ce70719ea20abab76"></a>PN_TRANSPORT&#160;</td><td class="fielddoc">
-<p>The transport has new data to read and/or write. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaad7329eb7a015f62ce70719ea20abab76"></a>PN_TRANSPORT&#160;</td><td class="fielddoc"><p>The transport has new data to read and/or write. </p>
 <p>Events of this type point to the relevant transport. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaaa205271edd307e5d33bd8287a760ad28"></a>PN_TRANSPORT_AUTHENTICATED&#160;</td><td class="fielddoc">
-<p>The transport has authenticated, if this is received by a server the associated transport has authenticated an incoming connection and <a class="el" href="group__transport.html#ga6b2750a2d313c65aabe5dc8a99f1de58" title="Retrieve the authenticated user. ">pn_transport_get_user()</a> can be used to obtain the authenticated user. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaaa205271edd307e5d33bd8287a760ad28"></a>PN_TRANSPORT_AUTHENTICATED&#160;</td><td class="fielddoc"><p>The transport has authenticated. </p>
+<p>If this is received by a server the associated transport has authenticated an incoming connection and <a class="el" href="group__transport.html#ga6b2750a2d313c65aabe5dc8a99f1de58" title="Retrieve the authenticated user. ">pn_transport_get_user()</a> can be used to obtain the authenticated user. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa7c7278de5bcbf3b42b3e692ca21f6c5a"></a>PN_TRANSPORT_ERROR&#160;</td><td class="fielddoc">
-<p>Indicates that a transport error has occurred. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa7c7278de5bcbf3b42b3e692ca21f6c5a"></a>PN_TRANSPORT_ERROR&#160;</td><td class="fielddoc"><p>Indicates that a transport error has occurred. </p>
 <p>Use <a class="el" href="group__transport.html#gac458d9fdb684f9501e89b96fc51f5c34" title="Get additional information about the condition of the transport. ">pn_transport_condition()</a> to access the details of the error from the associated transport. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa98facd13835b4a1d8e878d6f13c10a51"></a>PN_TRANSPORT_HEAD_CLOSED&#160;</td><td class="fielddoc">
-<p>Indicates that the "head" or writing end of the transport has been closed. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa98facd13835b4a1d8e878d6f13c10a51"></a>PN_TRANSPORT_HEAD_CLOSED&#160;</td><td class="fielddoc"><p>Indicates that the "head" or writing end of the transport has been closed. </p>
 <p>This means the transport will never produce more bytes for output to the network. Events of this type point to the relevant transport. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaafeca7b216c6adaa6f26b338443715018"></a>PN_TRANSPORT_WRITE_CLOSED&#160;</td><td class="fielddoc">
-<p>The write side of the transport is closed, it will no longer produce bytes to write to external IO. </p>
-<p>Synonynm for PN_TRANSPORT_HEAD_CLOSED </p>
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa205d07df6cd3d07b37a89f046b1184db"></a>PN_TRANSPORT_TAIL_CLOSED&#160;</td><td class="fielddoc">
-<p>Indicates that the tail of the transport has been closed. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa205d07df6cd3d07b37a89f046b1184db"></a>PN_TRANSPORT_TAIL_CLOSED&#160;</td><td class="fielddoc"><p>Indicates that the tail of the transport has been closed. </p>
 <p>This means the transport will never be able to process more bytes from the network. Events of this type point to the relevant transport. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa12d81068a6a24cafc311fbabad00da34"></a>PN_TRANSPORT_READ_CLOSED&#160;</td><td class="fielddoc">
-<p>The read side of the transport is closed, it will no longer read bytes from external IO. </p>
-<p>Synonynm for PN_TRANSPORT_TAIL_CLOSED </p>
-</td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa1ca722ce3c0b2c13a33636cded8430ba"></a>PN_TRANSPORT_CLOSED&#160;</td><td class="fielddoc">
-<p>Indicates that the both the head and tail of the transport are closed. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa1ca722ce3c0b2c13a33636cded8430ba"></a>PN_TRANSPORT_CLOSED&#160;</td><td class="fielddoc"><p>Indicates that the both the head and tail of the transport are closed. </p>
 <p>Events of this type point to the relevant transport. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa28a2bfee806bbc1fe31499c8eec39db0"></a>PN_CONNECTION_WAKE&#160;</td><td class="fielddoc">
-<p><a class="el" href="group__proactor.html#ga2e5c9fddae8d7aa07fc93438c5ae2d86" title="Cause a PN_CONNECTION_WAKE event to be returned by the proactor, even if there are no IO events pendi...">pn_connection_wake()</a> was called. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa28a2bfee806bbc1fe31499c8eec39db0"></a>PN_CONNECTION_WAKE&#160;</td><td class="fielddoc"><p><a class="el" href="group__proactor.html#ga0f49c771fe3bff54f58c9d583ca30560" title="Return a PN_CONNECTION_WAKE event for connection as soon as possible. ">pn_connection_wake()</a> was called. </p>
 <p>Events of this type point to the <a class="el" href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a>. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa0602b15957883e7d00ccdff4abca992c"></a>PN_LISTENER_ACCEPT&#160;</td><td class="fielddoc">
-<p>Indicates the listener is ready to call <a class="el" href="group__proactor.html#ga76bcf4efdfa82fff28318e1afad083dc" title="Asynchronously accept a connection using the listener. ">pn_listener_accept()</a> Events of this type point to the <a class="el" href="group__proactor.html#ga68ac7072ae60612d0bca5470014bf216">pn_listener_t</a>. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa0602b15957883e7d00ccdff4abca992c"></a>PN_LISTENER_ACCEPT&#160;</td><td class="fielddoc"><p>Indicates the listener has an incoming connection, call <a class="el" href="group__listener.html#gaaee3c3f3822484bc2e370406abf5b736" title="Bind connection to a new transport accepted from listener. ">pn_listener_accept()</a> to accept it. </p>
+<p>Events of this type point to the <a class="el" href="group__listener.html#ga68ac7072ae60612d0bca5470014bf216">pn_listener_t</a>. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaad5920df168cd28daaf253cad789d8aca"></a>PN_LISTENER_CLOSE&#160;</td><td class="fielddoc">
-<p>Indicates the listener has closed. </p>
-<p><a class="el" href="group__proactor.html#ga6dba0fded7ca1718397151c62e65535b" title="Get the error condition for a listener. ">pn_listener_condition()</a> provides error information. Events of this type point to the <a class="el" href="group__proactor.html#ga68ac7072ae60612d0bca5470014bf216">pn_listener_t</a>. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaad5920df168cd28daaf253cad789d8aca"></a>PN_LISTENER_CLOSE&#160;</td><td class="fielddoc"><p>Indicates the listener has closed. </p>
+<p><a class="el" href="group__listener.html#gaa49d0d11a9f46a75fbbbebf6def2d4b2" title="Get the error condition for a listener. ">pn_listener_condition()</a> provides error information. Events of this type point to the <a class="el" href="group__listener.html#ga68ac7072ae60612d0bca5470014bf216">pn_listener_t</a>. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaaee05826a80e94b5b86c4544e4715f499"></a>PN_PROACTOR_INTERRUPT&#160;</td><td class="fielddoc">
-<p>Indicates <a class="el" href="group__proactor.html#gaff37a5b9d3d822ad9a961dae5155ebdb" title="Cause PN_PROACTOR_INTERRUPT to be returned to exactly one call of pn_proactor_wait(). ">pn_proactor_interrupt()</a> was called to interrupt a proactor thread Events of this type point to the <a class="el" href="group__proactor.html#gabba42c7929dfceb9d296535bad0c93dc">pn_proactor_t</a>. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaaee05826a80e94b5b86c4544e4715f499"></a>PN_PROACTOR_INTERRUPT&#160;</td><td class="fielddoc"><p>Indicates <a class="el" href="group__proactor.html#gaa5255cd1bcb5d7f5639b53dc30712711" title="Return a PN_PROACTOR_INTERRUPT event as soon as possible. ">pn_proactor_interrupt()</a> was called to interrupt a proactor thread. </p>
+<p>Events of this type point to the <a class="el" href="types_8h.html#abba42c7929dfceb9d296535bad0c93dc">pn_proactor_t</a>. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa4afa8c2da61f4c665c669fbe37b1c5fe"></a>PN_PROACTOR_TIMEOUT&#160;</td><td class="fielddoc">
-<p>Timeout set by <a class="el" href="group__proactor.html#ga8428d00193008841e529aae6a922fa5f" title="Cause PN_PROACTOR_TIMEOUT to be returned to a thread calling wait() after timeout milliseconds...">pn_proactor_set_timeout()</a> time limit expired. </p>
-<p>Events of this type point to the <a class="el" href="group__proactor.html#gabba42c7929dfceb9d296535bad0c93dc">pn_proactor_t</a>. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa4afa8c2da61f4c665c669fbe37b1c5fe"></a>PN_PROACTOR_TIMEOUT&#160;</td><td class="fielddoc"><p>Timeout set by <a class="el" href="group__proactor.html#gad7cd71f06282eb290699d90c316b2d32" title="Return a PN_PROACTOR_TIMEOUT after timeout milliseconds elapse. ">pn_proactor_set_timeout()</a> time limit expired. </p>
+<p>Events of this type point to the <a class="el" href="types_8h.html#abba42c7929dfceb9d296535bad0c93dc">pn_proactor_t</a>. </p>
 </td></tr>
-<tr><td class="fieldname"><a class="anchor" id="gga4876e2eed24a4d4e4c52b99842103cdaa894e93f167ef39e28a07c9cdf6b1181b"></a>PN_PROACTOR_INACTIVE&#160;</td><td class="fielddoc">
-<p>The proactor becaome inactive: all listeners and connections are closed and their events processed, the timeout is expired. </p>
-<p>Events of this type point to the <a class="el" href="group__proactor.html#gabba42c7929dfceb9d296535bad0c93dc">pn_proactor_t</a>. </p>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa894e93f167ef39e28a07c9cdf6b1181b"></a>PN_PROACTOR_INACTIVE&#160;</td><td class="fielddoc"><p>The proactor has become inactive: all listeners and connections were closed and the timeout (if set) expired or was cancelled. </p>
+<p>There will be no further events unless new listeners or connections are opened, or a new timeout is set (possibly in other threads in a multi-threaded program.)</p>
+<p>Events of this type point to the <a class="el" href="types_8h.html#abba42c7929dfceb9d296535bad0c93dc">pn_proactor_t</a>. </p>
+</td></tr>
+<tr><td class="fieldname"><a id="gga4876e2eed24a4d4e4c52b99842103cdaa6e25f00110ab278fd8b34fee00bd5fd7"></a>PN_LISTENER_OPEN&#160;</td><td class="fielddoc"><p>The listener is listeneing. </p>
+<p>Events of this type point to the <a class="el" href="group__listener.html#ga68ac7072ae60612d0bca5470014bf216">pn_listener_t</a>. </p>
 </td></tr>
 </table>
 
 </div>
 </div>
 <h2 class="groupheader">Function Documentation</h2>
-<a class="anchor" id="ga7c7754316e257d4ce7660730953000ac"></a>
+<a id="ga3a85c046c11ce692c23b9566b022d54b"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga3a85c046c11ce692c23b9566b022d54b">&#9670;&nbsp;</a></span>pn_event_type_name()</h2>
+
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">const char* pn_event_type_name </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" href="group__event.html#ga4876e2eed24a4d4e4c52b99842103cda">pn_event_type_t</a>&#160;</td>
+          <td class="paramname"><em>type</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+
+<p>Get a human readable name for an event type. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>an event type </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>a human readable name </dd></dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a21">broker.c</a>, <a class="el" href="direct_8c-example.html#a2">direct.c</a>, <a class="el" href="receive_8c-example.html#a1">receive.c</a>, and <a class="el" href="send_8c-example.html#a2">send.c</a>.</dd>
+</dl>
+</div>
+</div>
+<a id="ga7c7754316e257d4ce7660730953000ac"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga7c7754316e257d4ce7660730953000ac">&#9670;&nbsp;</a></span>pn_collector()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -509,7 +510,9 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
 
 </div>
 </div>
-<a class="anchor" id="ga2312e5cb8fc9e4bff94d7ab9d4b15c08"></a>
+<a id="ga2312e5cb8fc9e4bff94d7ab9d4b15c08"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga2312e5cb8fc9e4bff94d7ab9d4b15c08">&#9670;&nbsp;</a></span>pn_collector_free()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -533,12 +536,14 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
 
 </div>
 </div>
-<a class="anchor" id="gabf731be5b6c0d15173fd4d9a3b132121"></a>
+<a id="ga04e6edffd24e5c865ac1f6b3529469e4"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga04e6edffd24e5c865ac1f6b3529469e4">&#9670;&nbsp;</a></span>pn_collector_release()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">bool pn_collector_more </td>
+          <td class="memname">void pn_collector_release </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *&#160;</td>
           <td class="paramname"><em>collector</em></td><td>)</td>
@@ -547,24 +552,25 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
       </table>
 </div><div class="memdoc">
 
-<p>Check if there are more events after the current event. </p>
-<p>If this returns true, then <a class="el" href="group__event.html#ga672d5ec725787815cae9b7bc739cd6f9" title="Access the head event contained by a collector. ">pn_collector_peek()</a> will return an event even after <a class="el" href="group__event.html#ga7a4a24eb162059737f44e7520a0c1a54" title="Clear the head event on a collector. ">pn_collector_pop()</a> is called.</p>
+<p>Release a collector. </p>
+<p>Once in a released state a collector will drain any internally queued events (thereby releasing any pointers they may hold), shrink it's memory footprint to a minimum, and discard any newly created events.</p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramdir">[in]</td><td class="paramname">collector</td><td>a collector object </td></tr>
   </table>
   </dd>
 </dl>
-<dl class="section return"><dt>Returns</dt><dd>true if the collector has more than the current event </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="ga554801c4fb87ae7518772a4492f307e0"></a>
+<a id="gadab22668a28ff1af0d8ef82df516f94f"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gadab22668a28ff1af0d8ef82df516f94f">&#9670;&nbsp;</a></span>pn_collector_drain()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a>* pn_collector_next </td>
+          <td class="memname">void pn_collector_drain </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *&#160;</td>
           <td class="paramname"><em>collector</em></td><td>)</td>
@@ -573,51 +579,77 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
       </table>
 </div><div class="memdoc">
 
-<p>Return the next event to be handled. </p>
-<p>Returns the head event if it has not previously been returned by <a class="el" href="group__event.html#ga554801c4fb87ae7518772a4492f307e0" title="Return the next event to be handled. ">pn_collector_next()</a>, otherwise does <a class="el" href="group__event.html#ga7a4a24eb162059737f44e7520a0c1a54" title="Clear the head event on a collector. ">pn_collector_pop()</a> and returns the new head event.</p>
-<p>The returned pointer is valid till the next call of <a class="el" href="group__event.html#ga7a4a24eb162059737f44e7520a0c1a54" title="Clear the head event on a collector. ">pn_collector_pop()</a>, <a class="el" href="group__event.html#ga554801c4fb87ae7518772a4492f307e0" title="Return the next event to be handled. ">pn_collector_next()</a>, <a class="el" href="group__event.html#ga04e6edffd24e5c865ac1f6b3529469e4" title="Release a collector. ">pn_collector_release()</a> or <a class="el" href="group__event.html#ga2312e5cb8fc9e4bff94d7ab9d4b15c08" title="Free a collector. ">pn_collector_free()</a></p>
+<p>Drain a collector: remove and discard all events. </p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramdir">[in]</td><td class="paramname">collector</td><td>a collector object </td></tr>
   </table>
   </dd>
 </dl>
-<dl class="section return"><dt>Returns</dt><dd>the next event. </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="ga672d5ec725787815cae9b7bc739cd6f9"></a>
+<a id="ga1857c64d3f8549209b0b8ec91bf81e89"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga1857c64d3f8549209b0b8ec91bf81e89">&#9670;&nbsp;</a></span>pn_collector_put()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a>* pn_collector_peek </td>
+          <td class="memname"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a>* pn_collector_put </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *&#160;</td>
-          <td class="paramname"><em>collector</em></td><td>)</td>
+          <td class="paramname"><em>collector</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">const pn_class_t *&#160;</td>
+          <td class="paramname"><em>clazz</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">void *&#160;</td>
+          <td class="paramname"><em>context</em>, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype"><a class="el" href="group__event.html#ga4876e2eed24a4d4e4c52b99842103cda">pn_event_type_t</a>&#160;</td>
+          <td class="paramname"><em>type</em>&#160;</td>
+        </tr>
+        <tr>
           <td></td>
+          <td>)</td>
+          <td></td><td></td>
         </tr>
       </table>
 </div><div class="memdoc">
 
-<p>Access the head event contained by a collector. </p>
-<p>This operation will continue to return the same event until it is cleared by using <a class="el" href="group__event.html#ga7a4a24eb162059737f44e7520a0c1a54" title="Clear the head event on a collector. ">pn_collector_pop</a>. The pointer return by this operation will be valid until <a class="el" href="group__event.html#ga7a4a24eb162059737f44e7520a0c1a54" title="Clear the head event on a collector. ">pn_collector_pop</a> is invoked or <a class="el" href="group__event.html#ga2312e5cb8fc9e4bff94d7ab9d4b15c08" title="Free a collector. ">pn_collector_free</a> is called, whichever happens sooner.</p>
+<p>Place a new event on a collector. </p>
+<p>This operation will create a new event of the given type and context and return a pointer to the newly created event. In some cases an event of the given type and context can be elided. When this happens, this operation will return a NULL pointer.</p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramdir">[in]</td><td class="paramname">collector</td><td>a collector object </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">clazz</td><td>class of the context </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">context</td><td>the event context </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>the event type</td></tr>
   </table>
   </dd>
 </dl>
-<dl class="section return"><dt>Returns</dt><dd>a pointer to the head event contained in the collector </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>a pointer to the newly created event or NULL if the event was elided </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="ga7a4a24eb162059737f44e7520a0c1a54"></a>
+<a id="ga672d5ec725787815cae9b7bc739cd6f9"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga672d5ec725787815cae9b7bc739cd6f9">&#9670;&nbsp;</a></span>pn_collector_peek()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">bool pn_collector_pop </td>
+          <td class="memname"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a>* pn_collector_peek </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *&#160;</td>
           <td class="paramname"><em>collector</em></td><td>)</td>
@@ -626,23 +658,26 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
       </table>
 </div><div class="memdoc">
 
-<p>Clear the head event on a collector. </p>
+<p>Access the head event contained by a collector. </p>
+<p>This operation will continue to return the same event until it is cleared by using <a class="el" href="group__event.html#ga7a4a24eb162059737f44e7520a0c1a54" title="Remove the head event on a collector. ">pn_collector_pop</a>. The pointer return by this operation will be valid until <a class="el" href="group__event.html#ga7a4a24eb162059737f44e7520a0c1a54" title="Remove the head event on a collector. ">pn_collector_pop</a> is invoked or <a class="el" href="group__event.html#ga2312e5cb8fc9e4bff94d7ab9d4b15c08" title="Free a collector. ">pn_collector_free</a> is called, whichever happens sooner.</p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramdir">[in]</td><td class="paramname">collector</td><td>a collector object </td></tr>
   </table>
   </dd>
 </dl>
-<dl class="section return"><dt>Returns</dt><dd>true if the event was popped, false if the collector is empty </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>a pointer to the head event contained in the collector </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="ga9304e9c2e85cb5de23c81ae7cd8a9077"></a>
+<a id="ga7a4a24eb162059737f44e7520a0c1a54"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga7a4a24eb162059737f44e7520a0c1a54">&#9670;&nbsp;</a></span>pn_collector_pop()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a>* pn_collector_prev </td>
+          <td class="memname">bool pn_collector_pop </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *&#160;</td>
           <td class="paramname"><em>collector</em></td><td>)</td>
@@ -651,75 +686,53 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
       </table>
 </div><div class="memdoc">
 
-<p>Return the same event as the previous call to <a class="el" href="group__event.html#ga554801c4fb87ae7518772a4492f307e0" title="Return the next event to be handled. ">pn_collector_next()</a> </p>
-<p>The returned pointer is valid till the next call of <a class="el" href="group__event.html#ga7a4a24eb162059737f44e7520a0c1a54" title="Clear the head event on a collector. ">pn_collector_pop()</a>, <a class="el" href="group__event.html#ga554801c4fb87ae7518772a4492f307e0" title="Return the next event to be handled. ">pn_collector_next()</a>, <a class="el" href="group__event.html#ga04e6edffd24e5c865ac1f6b3529469e4" title="Release a collector. ">pn_collector_release()</a> or <a class="el" href="group__event.html#ga2312e5cb8fc9e4bff94d7ab9d4b15c08" title="Free a collector. ">pn_collector_free()</a></p>
+<p>Remove the head event on a collector. </p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramdir">[in]</td><td class="paramname">collector</td><td>a collector object </td></tr>
   </table>
   </dd>
 </dl>
-<dl class="section return"><dt>Returns</dt><dd>a pointer to the event returned by previous call to <a class="el" href="group__event.html#ga554801c4fb87ae7518772a4492f307e0" title="Return the next event to be handled. ">pn_collector_next()</a> </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>true if the event was popped, false if the collector is empty </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="ga1857c64d3f8549209b0b8ec91bf81e89"></a>
+<a id="ga554801c4fb87ae7518772a4492f307e0"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga554801c4fb87ae7518772a4492f307e0">&#9670;&nbsp;</a></span>pn_collector_next()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a>* pn_collector_put </td>
+          <td class="memname"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a>* pn_collector_next </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *&#160;</td>
-          <td class="paramname"><em>collector</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">const pn_class_t *&#160;</td>
-          <td class="paramname"><em>clazz</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype">void *&#160;</td>
-          <td class="paramname"><em>context</em>, </td>
-        </tr>
-        <tr>
-          <td class="paramkey"></td>
-          <td></td>
-          <td class="paramtype"><a class="el" href="group__event.html#ga4876e2eed24a4d4e4c52b99842103cda">pn_event_type_t</a>&#160;</td>
-          <td class="paramname"><em>type</em>&#160;</td>
-        </tr>
-        <tr>
+          <td class="paramname"><em>collector</em></td><td>)</td>
           <td></td>
-          <td>)</td>
-          <td></td><td></td>
         </tr>
       </table>
 </div><div class="memdoc">
 
-<p>Place a new event on a collector. </p>
-<p>This operation will create a new event of the given type and context and return a pointer to the newly created event. In some cases an event of the given type and context can be elided. When this happens, this operation will return a NULL pointer.</p>
+<p>Pop and return the head event, returns NULL if the collector is empty. </p>
+<p>The returned pointer is valid till the next call of <a class="el" href="group__event.html#ga554801c4fb87ae7518772a4492f307e0" title="Pop and return the head event, returns NULL if the collector is empty. ">pn_collector_next()</a>.</p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramdir">[in]</td><td class="paramname">collector</td><td>a collector object </td></tr>
-    <tr><td class="paramdir">[in]</td><td class="paramname">clazz</td><td>class of the context </td></tr>
-    <tr><td class="paramdir">[in]</td><td class="paramname">context</td><td>the event context </td></tr>
-    <tr><td class="paramdir">[in]</td><td class="paramname">type</td><td>the event type</td></tr>
   </table>
   </dd>
 </dl>
-<dl class="section return"><dt>Returns</dt><dd>a pointer to the newly created event or NULL if the event was elided </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>the next event. </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="ga04e6edffd24e5c865ac1f6b3529469e4"></a>
+<a id="ga9304e9c2e85cb5de23c81ae7cd8a9077"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga9304e9c2e85cb5de23c81ae7cd8a9077">&#9670;&nbsp;</a></span>pn_collector_prev()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">void pn_collector_release </td>
+          <td class="memname"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a>* pn_collector_prev </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *&#160;</td>
           <td class="paramname"><em>collector</em></td><td>)</td>
@@ -728,63 +741,76 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
       </table>
 </div><div class="memdoc">
 
-<p>Release a collector. </p>
-<p>Once in a released state a collector will drain any internally queued events (thereby releasing any pointers they may hold), shrink it's memory footprint to a minimum, and discard any newly created events.</p>
+<p>Return the same pointer as the most recent call to <a class="el" href="group__event.html#ga554801c4fb87ae7518772a4492f307e0" title="Pop and return the head event, returns NULL if the collector is empty. ">pn_collector_next()</a>. </p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramdir">[in]</td><td class="paramname">collector</td><td>a collector object </td></tr>
   </table>
   </dd>
 </dl>
+<dl class="section return"><dt>Returns</dt><dd>a pointer to the event returned by previous call to <a class="el" href="group__event.html#ga554801c4fb87ae7518772a4492f307e0" title="Pop and return the head event, returns NULL if the collector is empty. ">pn_collector_next()</a> </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="ga5989cf0c187bd12899596fe06931476e"></a>
+<a id="gabf731be5b6c0d15173fd4d9a3b132121"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gabf731be5b6c0d15173fd4d9a3b132121">&#9670;&nbsp;</a></span>pn_collector_more()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">pn_record_t* pn_event_attachments </td>
+          <td class="memname">bool pn_collector_more </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *&#160;</td>
-          <td class="paramname"><em>event</em></td><td>)</td>
+          <td class="paramtype"><a class="el" href="group__event.html#ga905cdecedb8020bc28e648e43348b5d1">pn_collector_t</a> *&#160;</td>
+          <td class="paramname"><em>collector</em></td><td>)</td>
           <td></td>
         </tr>
       </table>
 </div><div class="memdoc">
 
-<p>Get any attachments associated with an event. </p>
+<p>Check if there are more events after the current head event. </p>
+<p>If this returns true, then <a class="el" href="group__event.html#ga672d5ec725787815cae9b7bc739cd6f9" title="Access the head event contained by a collector. ">pn_collector_peek()</a> will return an event even after <a class="el" href="group__event.html#ga7a4a24eb162059737f44e7520a0c1a54" title="Remove the head event on a collector. ">pn_collector_pop()</a> is called.</p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
-    <tr><td class="paramdir">[in]</td><td class="paramname">event</td><td>an event object </td></tr>
+    <tr><td class="paramdir">[in]</td><td class="paramname">collector</td><td>a collector object </td></tr>
   </table>
   </dd>
 </dl>
-<dl class="section return"><dt>Returns</dt><dd>the record holding the attachments </dd></dl>
+<dl class="section return"><dt>Returns</dt><dd>true if the collector has more than the current event </dd></dl>
 
 </div>
 </div>
-<a class="anchor" id="gac3fbf151357d3101ac294cb675348c76"></a>
+<a id="gacaea54ca51885933b4987c131a3d1b0d"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gacaea54ca51885933b4987c131a3d1b0d">&#9670;&nbsp;</a></span>pn_event_type()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a>* pn_event_batch_next </td>
+          <td class="memname"><a class="el" href="group__event.html#ga4876e2eed24a4d4e4c52b99842103cda">pn_event_type_t</a> pn_event_type </td>
           <td>(</td>
-          <td class="paramtype"><a class="el" href="group__event.html#ga6bc581dfeaa8e8d46d07d37229d565c9">pn_event_batch_t</a> *&#160;</td>
-          <td class="paramname"><em>batch</em></td><td>)</td>
+          <td class="paramtype"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *&#160;</td>
+          <td class="paramname"><em>event</em></td><td>)</td>
           <td></td>
         </tr>
       </table>
 </div><div class="memdoc">
 
-<p><b>Experimental</b> - Remove the next event from the batch and return it. </p>
-<p>NULL means the batch is empty. The returned event pointer is valid until <a class="el" href="group__event.html#gac3fbf151357d3101ac294cb675348c76" title="Experimental - Remove the next event from the batch and return it. ">pn_event_batch_next()</a> is called again on the same batch. </p>
-<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a86">broker.c</a>, <a class="el" href="receive_8c-example.html#a58">receive.c</a>, and <a class="el" href="send_8c-example.html#a72">send.c</a>.</dd>
+<p>Get the type of an event. </p>
+<dl class="params"><dt>Parameters</dt><dd>
+  <table class="params">
+    <tr><td class="paramdir">[in]</td><td class="paramname">event</td><td>an event object </td></tr>
+  </table>
+  </dd>
+</dl>
+<dl class="section return"><dt>Returns</dt><dd>the type of the event </dd></dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a22">broker.c</a>, <a class="el" href="direct_8c-example.html#a3">direct.c</a>, <a class="el" href="receive_8c-example.html#a2">receive.c</a>, and <a class="el" href="send_8c-example.html#a3">send.c</a>.</dd>
 </dl>
 </div>
 </div>
-<a class="anchor" id="ga1f3f0a01db5cce634c5d0ccd5d9b50be"></a>
+<a id="ga1f3f0a01db5cce634c5d0ccd5d9b50be"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga1f3f0a01db5cce634c5d0ccd5d9b50be">&#9670;&nbsp;</a></span>pn_event_class()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -809,7 +835,9 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
 
 </div>
 </div>
-<a class="anchor" id="ga4f2c6a0fdf86a43e7e9874fcd2ccaf52"></a>
+<a id="ga4f2c6a0fdf86a43e7e9874fcd2ccaf52"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga4f2c6a0fdf86a43e7e9874fcd2ccaf52">&#9670;&nbsp;</a></span>pn_event_connection()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -831,16 +859,18 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
   </dd>
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>the connection associated with the event (or NULL) </dd></dl>
-<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a27">broker.c</a>, <a class="el" href="receive_8c-example.html#a15">receive.c</a>, and <a class="el" href="send_8c-example.html#a33">send.c</a>.</dd>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a25">broker.c</a>, <a class="el" href="direct_8c-example.html#a7">direct.c</a>, <a class="el" href="receive_8c-example.html#a6">receive.c</a>, and <a class="el" href="send_8c-example.html#a7">send.c</a>.</dd>
 </dl>
 </div>
 </div>
-<a class="anchor" id="ga10fa6f53bdabe0851ebb2d8a0bf6a52c"></a>
+<a id="gaf4af0bfbe0e0a8e432f0e803df14ecb5"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gaf4af0bfbe0e0a8e432f0e803df14ecb5">&#9670;&nbsp;</a></span>pn_event_session()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">pn_delivery_t</a>* pn_event_delivery </td>
+          <td class="memname"><a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">pn_session_t</a>* pn_event_session </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *&#160;</td>
           <td class="paramname"><em>event</em></td><td>)</td>
@@ -849,19 +879,21 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
       </table>
 </div><div class="memdoc">
 
-<p>Get the delivery associated with an event. </p>
+<p>Get the session associated with an event. </p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramdir">[in]</td><td class="paramname">event</td><td>an event object </td></tr>
   </table>
   </dd>
 </dl>
-<dl class="section return"><dt>Returns</dt><dd>the delivery associated with the event (or NULL) </dd></dl>
-<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a58">broker.c</a>, <a class="el" href="receive_8c-example.html#a26">receive.c</a>, and <a class="el" href="send_8c-example.html#a50">send.c</a>.</dd>
+<dl class="section return"><dt>Returns</dt><dd>the session associated with the event (or NULL) </dd></dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a45">broker.c</a>, <a class="el" href="direct_8c-example.html#a73">direct.c</a>, <a class="el" href="receive_8c-example.html#a45">receive.c</a>, and <a class="el" href="send_8c-example.html#a55">send.c</a>.</dd>
 </dl>
 </div>
 </div>
-<a class="anchor" id="ga75f230ef55f03a1f943df79279f8d111"></a>
+<a id="ga75f230ef55f03a1f943df79279f8d111"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga75f230ef55f03a1f943df79279f8d111">&#9670;&nbsp;</a></span>pn_event_link()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -883,16 +915,18 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
   </dd>
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>the link associated with the event (or NULL) </dd></dl>
-<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a49">broker.c</a>, <a class="el" href="receive_8c-example.html#a50">receive.c</a>, and <a class="el" href="send_8c-example.html#a43">send.c</a>.</dd>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a47">broker.c</a>, <a class="el" href="direct_8c-example.html#a32">direct.c</a>, <a class="el" href="receive_8c-example.html#a49">receive.c</a>, and <a class="el" href="send_8c-example.html#a36">send.c</a>.</dd>
 </dl>
 </div>
 </div>
-<a class="anchor" id="gaf4af0bfbe0e0a8e432f0e803df14ecb5"></a>
+<a id="ga10fa6f53bdabe0851ebb2d8a0bf6a52c"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga10fa6f53bdabe0851ebb2d8a0bf6a52c">&#9670;&nbsp;</a></span>pn_event_delivery()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">pn_session_t</a>* pn_event_session </td>
+          <td class="memname"><a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">pn_delivery_t</a>* pn_event_delivery </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *&#160;</td>
           <td class="paramname"><em>event</em></td><td>)</td>
@@ -901,19 +935,21 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
       </table>
 </div><div class="memdoc">
 
-<p>Get the session associated with an event. </p>
+<p>Get the delivery associated with an event. </p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramdir">[in]</td><td class="paramname">event</td><td>an event object </td></tr>
   </table>
   </dd>
 </dl>
-<dl class="section return"><dt>Returns</dt><dd>the session associated with the event (or NULL) </dd></dl>
-<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a47">broker.c</a>, <a class="el" href="receive_8c-example.html#a46">receive.c</a>, and <a class="el" href="send_8c-example.html#a61">send.c</a>.</dd>
+<dl class="section return"><dt>Returns</dt><dd>the delivery associated with the event (or NULL) </dd></dl>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a56">broker.c</a>, <a class="el" href="direct_8c-example.html#a36">direct.c</a>, <a class="el" href="receive_8c-example.html#a26">receive.c</a>, and <a class="el" href="send_8c-example.html#a45">send.c</a>.</dd>
 </dl>
 </div>
 </div>
-<a class="anchor" id="ga14525ae84870388141898bbf57f2b151"></a>
+<a id="ga14525ae84870388141898bbf57f2b151"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga14525ae84870388141898bbf57f2b151">&#9670;&nbsp;</a></span>pn_event_transport()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
@@ -935,16 +971,18 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
   </dd>
 </dl>
 <dl class="section return"><dt>Returns</dt><dd>the transport associated with the event (or NULL) </dd></dl>
-<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a69">broker.c</a>, <a class="el" href="receive_8c-example.html#a41">receive.c</a>, and <a class="el" href="send_8c-example.html#a56">send.c</a>.</dd>
+<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a67">broker.c</a>, <a class="el" href="direct_8c-example.html#a65">direct.c</a>, <a class="el" href="receive_8c-example.html#a40">receive.c</a>, and <a class="el" href="send_8c-example.html#a50">send.c</a>.</dd>
 </dl>
 </div>
 </div>
-<a class="anchor" id="gacaea54ca51885933b4987c131a3d1b0d"></a>
+<a id="ga5989cf0c187bd12899596fe06931476e"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#ga5989cf0c187bd12899596fe06931476e">&#9670;&nbsp;</a></span>pn_event_attachments()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname"><a class="el" href="group__event.html#ga4876e2eed24a4d4e4c52b99842103cda">pn_event_type_t</a> pn_event_type </td>
+          <td class="memname">pn_record_t* pn_event_attachments </td>
           <td>(</td>
           <td class="paramtype"><a class="el" href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> *&#160;</td>
           <td class="paramname"><em>event</em></td><td>)</td>
@@ -953,41 +991,57 @@ void *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="gr
       </table>
 </div><div class="memdoc">
 
-<p>Get the type of an event. </p>
+<p>Get any attachments associated with an event. </p>
 <dl class="params"><dt>Parameters</dt><dd>
   <table class="params">
     <tr><td class="paramdir">[in]</td><td class="paramname">event</td><td>an event object </td></tr>
   </table>
   </dd>
 </dl>
-<dl class="section return"><dt>Returns</dt><dd>the type of the event </dd></dl>
-<dl><dt><b>Examples: </b></dt><dd><a class="el" href="broker_8c-example.html#a24">broker.c</a>, <a class="el" href="receive_8c-example.html#a3">receive.c</a>, and <a class="el" href="send_8c-example.html#a3">send.c</a>.</dd>
-</dl>
+<dl class="section return"><dt>Returns</dt><dd>the record holding the attachments </dd></dl>
+
 </div>
 </div>
-<a class="anchor" id="ga3a85c046c11ce692c23b9566b022d54b"></a>
+<a id="gae7beda7f373660b889b61412ce429028"></a>
+<h2 class="memtitle"><span class="permalink"><a href="#gae7beda7f373660b889b61412ce429028">&#9670;&nbsp;</a></span>pn_event_condition()</h2>
+
 <div class="memitem">
 <div class="memproto">
       <table class="memname">
         <tr>
-          <td class="memname">const char* pn_event_type_name </td>
+          <td class="memname">struct <a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a>* pn_event_condition </td>
           <td>(</td>
-          <td class=

<TRUNCATED>

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@qpid.apache.org
For additional commands, e-mail: commits-help@qpid.apache.org