http://git-wip-us.apache.org/repos/asf/qpid-site/blob/8dabb34e/content/releases/qpid-proton-0.21.0/proton/c/api/group__link.html ---------------------------------------------------------------------- diff --git a/content/releases/qpid-proton-0.21.0/proton/c/api/group__link.html b/content/releases/qpid-proton-0.21.0/proton/c/api/group__link.html new file mode 100755 index 0000000..0b3ba51 --- /dev/null +++ b/content/releases/qpid-proton-0.21.0/proton/c/api/group__link.html @@ -0,0 +1,1914 @@ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> +<html xmlns="http://www.w3.org/1999/xhtml"> +<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.13"/> +<meta name="viewport" content="width=device-width, initial-scale=1"/> +<title>Qpid Proton C API: Link</title> +<link href="tabs.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="jquery.js"></script> +<script type="text/javascript" src="dynsections.js"></script> +<link href="navtree.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="resize.js"></script> +<script type="text/javascript" src="navtreedata.js"></script> +<script type="text/javascript" src="navtree.js"></script> +<script type="text/javascript"> + $(document).ready(initResizable); +</script> +<link href="search/search.css" rel="stylesheet" type="text/css"/> +<script type="text/javascript" src="search/searchdata.js"></script> +<script type="text/javascript" src="search/search.js"></script> +<script type="text/javascript"> + $(document).ready(function() { init_search(); }); +</script> +<link href="doxygen.css" rel="stylesheet" type="text/css" /> +</head> +<body> +<div id="top"><!-- do not remove this div, it is closed by doxygen! --> +<div id="titlearea"> +<table cellspacing="0" cellpadding="0"> + <tbody> + <tr style="height: 56px;"> + <td id="projectalign" style="padding-left: 0.5em;"> + <div id="projectname">Qpid Proton C API +  <span id="projectnumber">0.21.0</span> + </div> + </td> + <td> <div id="MSearchBox" class="MSearchBoxInactive"> + <span class="left"> + <img id="MSearchSelect" src="search/mag_sel.png" + onmouseover="return searchBox.OnSearchSelectShow()" + onmouseout="return searchBox.OnSearchSelectHide()" + alt=""/> + <input type="text" id="MSearchField" value="Search" accesskey="S" + onfocus="searchBox.OnSearchFieldFocus(true)" + onblur="searchBox.OnSearchFieldFocus(false)" + onkeyup="searchBox.OnSearchFieldChange(event)"/> + </span><span class="right"> + <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a> + </span> + </div> +</td> + </tr> + </tbody> +</table> +</div> +<!-- end header part --> +<!-- Generated by Doxygen 1.8.13 --> +<script type="text/javascript"> +var searchBox = new SearchBox("searchBox", "search",false,'Search'); +</script> +</div><!-- top --> +<div id="side-nav" class="ui-resizable side-nav-resizable"> + <div id="nav-tree"> + <div id="nav-tree-contents"> + <div id="nav-sync" class="sync"></div> + </div> + </div> + <div id="splitbar" style="-moz-user-select:none;" + class="ui-resizable-handle"> + </div> +</div> +<script type="text/javascript"> +$(document).ready(function(){initNavTree('group__link.html','');}); +</script> +<div id="doc-content"> +<!-- window showing the filter options --> +<div id="MSearchSelectWindow" + onmouseover="return searchBox.OnSearchSelectShow()" + onmouseout="return searchBox.OnSearchSelectHide()" + onkeydown="return searchBox.OnSearchSelectKey(event)"> +</div> + +<!-- iframe showing the search results (closed by default) --> +<div id="MSearchResultsWindow"> +<iframe src="javascript:void(0)" frameborder="0" + name="MSearchResults" id="MSearchResults"> +</iframe> +</div> + +<div class="header"> + <div class="summary"> +<a href="#typedef-members">Typedefs</a> | +<a href="#enum-members">Enumerations</a> | +<a href="#func-members">Functions</a> </div> + <div class="headertitle"> +<div class="title">Link<div class="ingroups"><a class="el" href="group__core.html">Core</a></div></div> </div> +</div><!--header--> +<div class="contents"> + +<p>A channel for transferring messages. +<a href="#details">More...</a></p> +<table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a> +Typedefs</h2></td></tr> +<tr class="memitem:ga89dad3aa7934329a7ff467c636687bc0"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a></td></tr> +<tr class="memdesc:ga89dad3aa7934329a7ff467c636687bc0"><td class="mdescLeft"> </td><td class="mdescRight">An AMQP Link object. <a href="#ga89dad3aa7934329a7ff467c636687bc0">More...</a><br /></td></tr> +<tr class="separator:ga89dad3aa7934329a7ff467c636687bc0"><td class="memSeparator" colspan="2"> </td></tr> +</table><table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="enum-members"></a> +Enumerations</h2></td></tr> +<tr class="memitem:ga3fb58bd0b88d37407ebb615c2630e608"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga3fb58bd0b88d37407ebb615c2630e608">pn_snd_settle_mode_t</a> { <a class="el" href="group__link.html#gga3fb58bd0b88d37407ebb615c2630e608a8bd9806d2f8d8c1724ed26bb0543bade">PN_SND_UNSETTLED</a>, +<a class="el" href="group__link.html#gga3fb58bd0b88d37407ebb615c2630e608ac159f0edca565961b554768a42e82bf0">PN_SND_SETTLED</a>, +<a class="el" href="group__link.html#gga3fb58bd0b88d37407ebb615c2630e608ac33a5700d0247976b465aeb7c1437fd1">PN_SND_MIXED</a> + }<tr class="memdesc:ga3fb58bd0b88d37407ebb615c2630e608"><td class="mdescLeft"> </td><td class="mdescRight">Describes the permitted/expected settlement behaviours of a sending link. <a href="group__link.html#ga3fb58bd0b88d37407ebb615c2630e608">More...</a><br /></td></tr> +</td></tr> +<tr class="separator:ga3fb58bd0b88d37407ebb615c2630e608"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gad1c2388cdae687be26222a5d66fd2d58"><td class="memItemLeft" align="right" valign="top">enum  </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gad1c2388cdae687be26222a5d66fd2d58">pn_rcv_settle_mode_t</a> { <a class="el" href="group__link.html#ggad1c2388cdae687be26222a5d66fd2d58ac22b82396bd686940dfcc861302a8262">PN_RCV_FIRST</a>, +<a class="el" href="group__link.html#ggad1c2388cdae687be26222a5d66fd2d58ac79dc7f63fce078a8f0fe268c81dcaf3">PN_RCV_SECOND</a> + }<tr class="memdesc:gad1c2388cdae687be26222a5d66fd2d58"><td class="mdescLeft"> </td><td class="mdescRight">Describes the permitted/expected settlement behaviours of a receiving link. <a href="group__link.html#gad1c2388cdae687be26222a5d66fd2d58">More...</a><br /></td></tr> +</td></tr> +<tr class="separator:gad1c2388cdae687be26222a5d66fd2d58"><td class="memSeparator" colspan="2"> </td></tr> +</table><table class="memberdecls"> +<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> +Functions</h2></td></tr> +<tr class="memitem:ga469bef2e81c53e85899ffbb277616a8c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga469bef2e81c53e85899ffbb277616a8c">pn_sender</a> (<a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">pn_session_t</a> *session, const char *name)</td></tr> +<tr class="memdesc:ga469bef2e81c53e85899ffbb277616a8c"><td class="mdescLeft"> </td><td class="mdescRight">Construct a new sender on a session. <a href="#ga469bef2e81c53e85899ffbb277616a8c">More...</a><br /></td></tr> +<tr class="separator:ga469bef2e81c53e85899ffbb277616a8c"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga5e314b3e07b48ebcffbac63f265fa69f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga5e314b3e07b48ebcffbac63f265fa69f">pn_receiver</a> (<a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">pn_session_t</a> *session, const char *name)</td></tr> +<tr class="memdesc:ga5e314b3e07b48ebcffbac63f265fa69f"><td class="mdescLeft"> </td><td class="mdescRight">Construct a new receiver on a session. <a href="#ga5e314b3e07b48ebcffbac63f265fa69f">More...</a><br /></td></tr> +<tr class="separator:ga5e314b3e07b48ebcffbac63f265fa69f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gadd3b8899fe023d3506fb88d228d6b1b7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gadd3b8899fe023d3506fb88d228d6b1b7">pn_link_free</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gadd3b8899fe023d3506fb88d228d6b1b7"><td class="mdescLeft"> </td><td class="mdescRight">Free a link object. <a href="#gadd3b8899fe023d3506fb88d228d6b1b7">More...</a><br /></td></tr> +<tr class="separator:gadd3b8899fe023d3506fb88d228d6b1b7"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga93e6b527743f433da2ff367c1b2c500a"><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga93e6b527743f433da2ff367c1b2c500a">pn_link_get_context</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga93e6b527743f433da2ff367c1b2c500a"><td class="mdescLeft"> </td><td class="mdescRight"><b>Deprecated</b> - Use <a class="el" href="group__link.html#ga8b19ffdb7934940fa7c5fd75c5fe2d69" title="Get the attachments that are associated with a link object. ">pn_link_attachments()</a>. <a href="#ga93e6b527743f433da2ff367c1b2c500a">More...</a><br /></td></tr> +<tr class="separator:ga93e6b527743f433da2ff367c1b2c500a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga376f2cc18bbd771d95aa8222586d19b2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga376f2cc18bbd771d95aa8222586d19b2">pn_link_set_context</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link, void *context)</td></tr> +<tr class="memdesc:ga376f2cc18bbd771d95aa8222586d19b2"><td class="mdescLeft"> </td><td class="mdescRight"><b>Deprecated</b> - Use <a class="el" href="group__link.html#ga8b19ffdb7934940fa7c5fd75c5fe2d69" title="Get the attachments that are associated with a link object. ">pn_link_attachments()</a>. <a href="#ga376f2cc18bbd771d95aa8222586d19b2">More...</a><br /></td></tr> +<tr class="separator:ga376f2cc18bbd771d95aa8222586d19b2"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga8b19ffdb7934940fa7c5fd75c5fe2d69"><td class="memItemLeft" align="right" valign="top">pn_record_t * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga8b19ffdb7934940fa7c5fd75c5fe2d69">pn_link_attachments</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga8b19ffdb7934940fa7c5fd75c5fe2d69"><td class="mdescLeft"> </td><td class="mdescRight">Get the attachments that are associated with a link object. <a href="#ga8b19ffdb7934940fa7c5fd75c5fe2d69">More...</a><br /></td></tr> +<tr class="separator:ga8b19ffdb7934940fa7c5fd75c5fe2d69"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaa44112980ebabbb5cbd002670073a751"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gaa44112980ebabbb5cbd002670073a751">pn_link_name</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gaa44112980ebabbb5cbd002670073a751"><td class="mdescLeft"> </td><td class="mdescRight">Get the name of a link. <a href="#gaa44112980ebabbb5cbd002670073a751">More...</a><br /></td></tr> +<tr class="separator:gaa44112980ebabbb5cbd002670073a751"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga7c48ef214568267839aea04ed337926b"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga7c48ef214568267839aea04ed337926b">pn_link_is_sender</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga7c48ef214568267839aea04ed337926b"><td class="mdescLeft"> </td><td class="mdescRight">Test if a link is a sender. <a href="#ga7c48ef214568267839aea04ed337926b">More...</a><br /></td></tr> +<tr class="separator:ga7c48ef214568267839aea04ed337926b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gae7045dd02f2c9450ff8737e005628d81"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gae7045dd02f2c9450ff8737e005628d81">pn_link_is_receiver</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gae7045dd02f2c9450ff8737e005628d81"><td class="mdescLeft"> </td><td class="mdescRight">Test if a link is a receiver. <a href="#gae7045dd02f2c9450ff8737e005628d81">More...</a><br /></td></tr> +<tr class="separator:gae7045dd02f2c9450ff8737e005628d81"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gad502b38bc184ad0bfaa86dede81f62c9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__connection.html#gaa83193a655e32bffc18624acc2c39233">pn_state_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gad502b38bc184ad0bfaa86dede81f62c9">pn_link_state</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gad502b38bc184ad0bfaa86dede81f62c9"><td class="mdescLeft"> </td><td class="mdescRight">Get the endpoint state flags for a link. <a href="#gad502b38bc184ad0bfaa86dede81f62c9">More...</a><br /></td></tr> +<tr class="separator:gad502b38bc184ad0bfaa86dede81f62c9"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaf6f11d778aa4622d8aa5db8962bb1f0a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__error.html#ga24a289d5b32c9bd8a775600a5af83d52">pn_error_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gaf6f11d778aa4622d8aa5db8962bb1f0a">pn_link_error</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gaf6f11d778aa4622d8aa5db8962bb1f0a"><td class="mdescLeft"> </td><td class="mdescRight"><b>Deprecated</b> <a href="#gaf6f11d778aa4622d8aa5db8962bb1f0a">More...</a><br /></td></tr> +<tr class="separator:gaf6f11d778aa4622d8aa5db8962bb1f0a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga52c99044eabb7712efa2f1098c760804"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga52c99044eabb7712efa2f1098c760804">pn_link_condition</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga52c99044eabb7712efa2f1098c760804"><td class="mdescLeft"> </td><td class="mdescRight">Get the local condition associated with a link endpoint. <a href="#ga52c99044eabb7712efa2f1098c760804">More...</a><br /></td></tr> +<tr class="separator:ga52c99044eabb7712efa2f1098c760804"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga97dc5133125c9b7e4afbb1b76e6efe7b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga97dc5133125c9b7e4afbb1b76e6efe7b">pn_link_remote_condition</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga97dc5133125c9b7e4afbb1b76e6efe7b"><td class="mdescLeft"> </td><td class="mdescRight">Get the remote condition associated with a link endpoint. <a href="#ga97dc5133125c9b7e4afbb1b76e6efe7b">More...</a><br /></td></tr> +<tr class="separator:ga97dc5133125c9b7e4afbb1b76e6efe7b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gac63e43305fb1a5e3b14399a9ddc8f24d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">pn_session_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gac63e43305fb1a5e3b14399a9ddc8f24d">pn_link_session</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gac63e43305fb1a5e3b14399a9ddc8f24d"><td class="mdescLeft"> </td><td class="mdescRight">Get the parent session for a link object. <a href="#gac63e43305fb1a5e3b14399a9ddc8f24d">More...</a><br /></td></tr> +<tr class="separator:gac63e43305fb1a5e3b14399a9ddc8f24d"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga7c9434c40eb653f007ff5721e2ebf73e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga7c9434c40eb653f007ff5721e2ebf73e">pn_link_head</a> (<a class="el" href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a> *connection, <a class="el" href="group__connection.html#gaa83193a655e32bffc18624acc2c39233">pn_state_t</a> state)</td></tr> +<tr class="memdesc:ga7c9434c40eb653f007ff5721e2ebf73e"><td class="mdescLeft"> </td><td class="mdescRight">Retrieve the first link that matches the given state mask. <a href="#ga7c9434c40eb653f007ff5721e2ebf73e">More...</a><br /></td></tr> +<tr class="separator:ga7c9434c40eb653f007ff5721e2ebf73e"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga9b2a9cfa00dfdae4e01bf75483433925"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga9b2a9cfa00dfdae4e01bf75483433925">pn_link_next</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link, <a class="el" href="group__connection.html#gaa83193a655e32bffc18624acc2c39233">pn_state_t</a> state)</td></tr> +<tr class="memdesc:ga9b2a9cfa00dfdae4e01bf75483433925"><td class="mdescLeft"> </td><td class="mdescRight">Retrieve the next link that matches the given state mask. <a href="#ga9b2a9cfa00dfdae4e01bf75483433925">More...</a><br /></td></tr> +<tr class="separator:ga9b2a9cfa00dfdae4e01bf75483433925"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaabaca3f5d03970a122240eebc588add6"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gaabaca3f5d03970a122240eebc588add6">pn_link_open</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gaabaca3f5d03970a122240eebc588add6"><td class="mdescLeft"> </td><td class="mdescRight">Open a link. <a href="#gaabaca3f5d03970a122240eebc588add6">More...</a><br /></td></tr> +<tr class="separator:gaabaca3f5d03970a122240eebc588add6"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga4851693eb6a16fd9ab61e2df6f00770d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga4851693eb6a16fd9ab61e2df6f00770d">pn_link_close</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga4851693eb6a16fd9ab61e2df6f00770d"><td class="mdescLeft"> </td><td class="mdescRight">Close a link. <a href="#ga4851693eb6a16fd9ab61e2df6f00770d">More...</a><br /></td></tr> +<tr class="separator:ga4851693eb6a16fd9ab61e2df6f00770d"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga1dc327c52ac24a0d65a17c88ce685b0b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga1dc327c52ac24a0d65a17c88ce685b0b">pn_link_detach</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga1dc327c52ac24a0d65a17c88ce685b0b"><td class="mdescLeft"> </td><td class="mdescRight">Detach a link. <a href="#ga1dc327c52ac24a0d65a17c88ce685b0b">More...</a><br /></td></tr> +<tr class="separator:ga1dc327c52ac24a0d65a17c88ce685b0b"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga2c8985a9d44a813ab1739a91ae3708a3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__terminus.html#gad202baf5c904d6991e13521b7c93fdc2">pn_terminus_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga2c8985a9d44a813ab1739a91ae3708a3">pn_link_source</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga2c8985a9d44a813ab1739a91ae3708a3"><td class="mdescLeft"> </td><td class="mdescRight">Access the locally defined source definition for a link. <a href="#ga2c8985a9d44a813ab1739a91ae3708a3">More...</a><br /></td></tr> +<tr class="separator:ga2c8985a9d44a813ab1739a91ae3708a3"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga997c85388b9fb30151ea3b40b946e958"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__terminus.html#gad202baf5c904d6991e13521b7c93fdc2">pn_terminus_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga997c85388b9fb30151ea3b40b946e958">pn_link_target</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga997c85388b9fb30151ea3b40b946e958"><td class="mdescLeft"> </td><td class="mdescRight">Access the locally defined target definition for a link. <a href="#ga997c85388b9fb30151ea3b40b946e958">More...</a><br /></td></tr> +<tr class="separator:ga997c85388b9fb30151ea3b40b946e958"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gadf6b8ff6223465f21a481e9287f60671"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__terminus.html#gad202baf5c904d6991e13521b7c93fdc2">pn_terminus_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gadf6b8ff6223465f21a481e9287f60671">pn_link_remote_source</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gadf6b8ff6223465f21a481e9287f60671"><td class="mdescLeft"> </td><td class="mdescRight">Access the remotely defined source definition for a link. <a href="#gadf6b8ff6223465f21a481e9287f60671">More...</a><br /></td></tr> +<tr class="separator:gadf6b8ff6223465f21a481e9287f60671"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gabf61668a66ae189dbb4820da6ee30d90"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__terminus.html#gad202baf5c904d6991e13521b7c93fdc2">pn_terminus_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gabf61668a66ae189dbb4820da6ee30d90">pn_link_remote_target</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gabf61668a66ae189dbb4820da6ee30d90"><td class="mdescLeft"> </td><td class="mdescRight">Access the remotely defined target definition for a link. <a href="#gabf61668a66ae189dbb4820da6ee30d90">More...</a><br /></td></tr> +<tr class="separator:gabf61668a66ae189dbb4820da6ee30d90"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gad7e426b0cc4759568b3fd2b4fb176260"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">pn_delivery_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gad7e426b0cc4759568b3fd2b4fb176260">pn_link_current</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gad7e426b0cc4759568b3fd2b4fb176260"><td class="mdescLeft"> </td><td class="mdescRight">Get the current delivery for a link. <a href="#gad7e426b0cc4759568b3fd2b4fb176260">More...</a><br /></td></tr> +<tr class="separator:gad7e426b0cc4759568b3fd2b4fb176260"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga93824a3859c37463e44458cd2f63d31f"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga93824a3859c37463e44458cd2f63d31f">pn_link_advance</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga93824a3859c37463e44458cd2f63d31f"><td class="mdescLeft"> </td><td class="mdescRight">Advance the current delivery of a link to the next delivery on the link. <a href="#ga93824a3859c37463e44458cd2f63d31f">More...</a><br /></td></tr> +<tr class="separator:ga93824a3859c37463e44458cd2f63d31f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga55428637f3b8c446efd5fea3f26c932d"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga55428637f3b8c446efd5fea3f26c932d">pn_link_credit</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga55428637f3b8c446efd5fea3f26c932d"><td class="mdescLeft"> </td><td class="mdescRight">Get the credit balance for a link. <a href="#ga55428637f3b8c446efd5fea3f26c932d">More...</a><br /></td></tr> +<tr class="separator:ga55428637f3b8c446efd5fea3f26c932d"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga57a00950e2eeef378fd6c0a3b3b5bfe9"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga57a00950e2eeef378fd6c0a3b3b5bfe9">pn_link_queued</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga57a00950e2eeef378fd6c0a3b3b5bfe9"><td class="mdescLeft"> </td><td class="mdescRight">Get the number of queued deliveries for a link. <a href="#ga57a00950e2eeef378fd6c0a3b3b5bfe9">More...</a><br /></td></tr> +<tr class="separator:ga57a00950e2eeef378fd6c0a3b3b5bfe9"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gab16f14d071548c5c9ab22924ee5b1ebb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gab16f14d071548c5c9ab22924ee5b1ebb">pn_link_remote_credit</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gab16f14d071548c5c9ab22924ee5b1ebb"><td class="mdescLeft"> </td><td class="mdescRight">Get the remote view of the credit for a link. <a href="#gab16f14d071548c5c9ab22924ee5b1ebb">More...</a><br /></td></tr> +<tr class="separator:gab16f14d071548c5c9ab22924ee5b1ebb"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga40dd26f3d035c54056e2649aeb78d8ac"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga40dd26f3d035c54056e2649aeb78d8ac">pn_link_get_drain</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga40dd26f3d035c54056e2649aeb78d8ac"><td class="mdescLeft"> </td><td class="mdescRight">Get the drain flag for a link. <a href="#ga40dd26f3d035c54056e2649aeb78d8ac">More...</a><br /></td></tr> +<tr class="separator:ga40dd26f3d035c54056e2649aeb78d8ac"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga95c4018a1f1fe0e7c2e7fd02fe062d23"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga95c4018a1f1fe0e7c2e7fd02fe062d23">pn_link_drained</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga95c4018a1f1fe0e7c2e7fd02fe062d23"><td class="mdescLeft"> </td><td class="mdescRight">Drain excess credit for a link. <a href="#ga95c4018a1f1fe0e7c2e7fd02fe062d23">More...</a><br /></td></tr> +<tr class="separator:ga95c4018a1f1fe0e7c2e7fd02fe062d23"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga7f1742528b32c3c9609b97a3ed449639"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga7f1742528b32c3c9609b97a3ed449639">pn_link_available</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga7f1742528b32c3c9609b97a3ed449639"><td class="mdescLeft"> </td><td class="mdescRight">Get the available deliveries hint for a link. <a href="#ga7f1742528b32c3c9609b97a3ed449639">More...</a><br /></td></tr> +<tr class="separator:ga7f1742528b32c3c9609b97a3ed449639"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gacef130ca5cc6eb3eec2dd48c8bf5c7e6"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#ga3fb58bd0b88d37407ebb615c2630e608">pn_snd_settle_mode_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gacef130ca5cc6eb3eec2dd48c8bf5c7e6">pn_link_snd_settle_mode</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gacef130ca5cc6eb3eec2dd48c8bf5c7e6"><td class="mdescLeft"> </td><td class="mdescRight">Get the local sender settle mode for a link. <a href="#gacef130ca5cc6eb3eec2dd48c8bf5c7e6">More...</a><br /></td></tr> +<tr class="separator:gacef130ca5cc6eb3eec2dd48c8bf5c7e6"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga0bc65ff494e2860e6227f68c72468101"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#gad1c2388cdae687be26222a5d66fd2d58">pn_rcv_settle_mode_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga0bc65ff494e2860e6227f68c72468101">pn_link_rcv_settle_mode</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga0bc65ff494e2860e6227f68c72468101"><td class="mdescLeft"> </td><td class="mdescRight">Get the local receiver settle mode for a link. <a href="#ga0bc65ff494e2860e6227f68c72468101">More...</a><br /></td></tr> +<tr class="separator:ga0bc65ff494e2860e6227f68c72468101"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga677c416a6365cedd23b43043dff0b89f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga677c416a6365cedd23b43043dff0b89f">pn_link_set_snd_settle_mode</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link, <a class="el" href="group__link.html#ga3fb58bd0b88d37407ebb615c2630e608">pn_snd_settle_mode_t</a> mode)</td></tr> +<tr class="memdesc:ga677c416a6365cedd23b43043dff0b89f"><td class="mdescLeft"> </td><td class="mdescRight">Set the local sender settle mode for a link. <a href="#ga677c416a6365cedd23b43043dff0b89f">More...</a><br /></td></tr> +<tr class="separator:ga677c416a6365cedd23b43043dff0b89f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gab6441a917c291e68984405057eb56ab8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gab6441a917c291e68984405057eb56ab8">pn_link_set_rcv_settle_mode</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link, <a class="el" href="group__link.html#gad1c2388cdae687be26222a5d66fd2d58">pn_rcv_settle_mode_t</a> mode)</td></tr> +<tr class="memdesc:gab6441a917c291e68984405057eb56ab8"><td class="mdescLeft"> </td><td class="mdescRight">Set the local receiver settle mode for a link. <a href="#gab6441a917c291e68984405057eb56ab8">More...</a><br /></td></tr> +<tr class="separator:gab6441a917c291e68984405057eb56ab8"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga92592155f2afcf6b9aabfb4fc64c140f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#ga3fb58bd0b88d37407ebb615c2630e608">pn_snd_settle_mode_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga92592155f2afcf6b9aabfb4fc64c140f">pn_link_remote_snd_settle_mode</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga92592155f2afcf6b9aabfb4fc64c140f"><td class="mdescLeft"> </td><td class="mdescRight">Get the remote sender settle mode for a link. <a href="#ga92592155f2afcf6b9aabfb4fc64c140f">More...</a><br /></td></tr> +<tr class="separator:ga92592155f2afcf6b9aabfb4fc64c140f"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga378e4bb5a0519a75c3c151c15809dda5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__link.html#gad1c2388cdae687be26222a5d66fd2d58">pn_rcv_settle_mode_t</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga378e4bb5a0519a75c3c151c15809dda5">pn_link_remote_rcv_settle_mode</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga378e4bb5a0519a75c3c151c15809dda5"><td class="mdescLeft"> </td><td class="mdescRight">Get the remote receiver settle mode for a link. <a href="#ga378e4bb5a0519a75c3c151c15809dda5">More...</a><br /></td></tr> +<tr class="separator:ga378e4bb5a0519a75c3c151c15809dda5"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gac7309a622f3f2296261ff8fa9bc33ba1"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gac7309a622f3f2296261ff8fa9bc33ba1">pn_link_unsettled</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gac7309a622f3f2296261ff8fa9bc33ba1"><td class="mdescLeft"> </td><td class="mdescRight">Get the number of unsettled deliveries for a link. <a href="#gac7309a622f3f2296261ff8fa9bc33ba1">More...</a><br /></td></tr> +<tr class="separator:gac7309a622f3f2296261ff8fa9bc33ba1"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga6206e3d4efe0ebe0491955006930fa18"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">pn_delivery_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga6206e3d4efe0ebe0491955006930fa18">pn_unsettled_head</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga6206e3d4efe0ebe0491955006930fa18"><td class="mdescLeft"> </td><td class="mdescRight">Get the first unsettled delivery for a link. <a href="#ga6206e3d4efe0ebe0491955006930fa18">More...</a><br /></td></tr> +<tr class="separator:ga6206e3d4efe0ebe0491955006930fa18"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga6dc9ad6d95d1cccd6f3d29b782269cce"><td class="memItemLeft" align="right" valign="top"><a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">pn_delivery_t</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga6dc9ad6d95d1cccd6f3d29b782269cce">pn_unsettled_next</a> (<a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340">pn_delivery_t</a> *delivery)</td></tr> +<tr class="memdesc:ga6dc9ad6d95d1cccd6f3d29b782269cce"><td class="mdescLeft"> </td><td class="mdescRight">Get the next unsettled delivery on a link. <a href="#ga6dc9ad6d95d1cccd6f3d29b782269cce">More...</a><br /></td></tr> +<tr class="separator:ga6dc9ad6d95d1cccd6f3d29b782269cce"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaef3f2e4bca87f9adc70e90dce7cd42b2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gaef3f2e4bca87f9adc70e90dce7cd42b2">pn_link_offered</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *sender, int credit)</td></tr> +<tr class="memdesc:gaef3f2e4bca87f9adc70e90dce7cd42b2"><td class="mdescLeft"> </td><td class="mdescRight">Signal the availability of deliveries for a link. <a href="#gaef3f2e4bca87f9adc70e90dce7cd42b2">More...</a><br /></td></tr> +<tr class="separator:gaef3f2e4bca87f9adc70e90dce7cd42b2"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaa825fac21730f3f9fff37d156e5f88e9"><td class="memItemLeft" align="right" valign="top">ssize_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gaa825fac21730f3f9fff37d156e5f88e9">pn_link_send</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *sender, const char *bytes, size_t n)</td></tr> +<tr class="memdesc:gaa825fac21730f3f9fff37d156e5f88e9"><td class="mdescLeft"> </td><td class="mdescRight">Send message data for the current delivery on a link. <a href="#gaa825fac21730f3f9fff37d156e5f88e9">More...</a><br /></td></tr> +<tr class="separator:gaa825fac21730f3f9fff37d156e5f88e9"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gafec44cf1c79ec03f3ac009e1879e71a9"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gafec44cf1c79ec03f3ac009e1879e71a9">pn_link_flow</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *receiver, int credit)</td></tr> +<tr class="memdesc:gafec44cf1c79ec03f3ac009e1879e71a9"><td class="mdescLeft"> </td><td class="mdescRight">Grant credit for incoming deliveries on a receiver. <a href="#gafec44cf1c79ec03f3ac009e1879e71a9">More...</a><br /></td></tr> +<tr class="separator:gafec44cf1c79ec03f3ac009e1879e71a9"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gad7ad9bc5c9ea7e8a21cd4fa472d2c8df"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gad7ad9bc5c9ea7e8a21cd4fa472d2c8df">pn_link_drain</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *receiver, int credit)</td></tr> +<tr class="memdesc:gad7ad9bc5c9ea7e8a21cd4fa472d2c8df"><td class="mdescLeft"> </td><td class="mdescRight">Grant credit for incoming deliveries on a receiver, and set drain mode to true. <a href="#gad7ad9bc5c9ea7e8a21cd4fa472d2c8df">More...</a><br /></td></tr> +<tr class="separator:gad7ad9bc5c9ea7e8a21cd4fa472d2c8df"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gaeb417e6b7e99c76f61549f5ed5519395"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gaeb417e6b7e99c76f61549f5ed5519395">pn_link_set_drain</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *receiver, bool drain)</td></tr> +<tr class="memdesc:gaeb417e6b7e99c76f61549f5ed5519395"><td class="mdescLeft"> </td><td class="mdescRight">Set the drain mode on a link. <a href="#gaeb417e6b7e99c76f61549f5ed5519395">More...</a><br /></td></tr> +<tr class="separator:gaeb417e6b7e99c76f61549f5ed5519395"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga06c97ce7396973dca0d311567f25f95a"><td class="memItemLeft" align="right" valign="top">ssize_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga06c97ce7396973dca0d311567f25f95a">pn_link_recv</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *receiver, char *bytes, size_t n)</td></tr> +<tr class="memdesc:ga06c97ce7396973dca0d311567f25f95a"><td class="mdescLeft"> </td><td class="mdescRight">Receive message data for the current delivery on a link. <a href="#ga06c97ce7396973dca0d311567f25f95a">More...</a><br /></td></tr> +<tr class="separator:ga06c97ce7396973dca0d311567f25f95a"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga4a821eaf6298b94522572fad73b8e2d1"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga4a821eaf6298b94522572fad73b8e2d1">pn_link_draining</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *receiver)</td></tr> +<tr class="memdesc:ga4a821eaf6298b94522572fad73b8e2d1"><td class="mdescLeft"> </td><td class="mdescRight">Check if a link is currently draining. <a href="#ga4a821eaf6298b94522572fad73b8e2d1">More...</a><br /></td></tr> +<tr class="separator:ga4a821eaf6298b94522572fad73b8e2d1"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:gac282341dacff892eba8e224eca5c5c52"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#gac282341dacff892eba8e224eca5c5c52">pn_link_max_message_size</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:gac282341dacff892eba8e224eca5c5c52"><td class="mdescLeft"> </td><td class="mdescRight"><b>Unsettled API</b> - Get the maximum message size for a link. <a href="#gac282341dacff892eba8e224eca5c5c52">More...</a><br /></td></tr> +<tr class="separator:gac282341dacff892eba8e224eca5c5c52"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga2421a9ddebba208338412dea365cf6ad"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga2421a9ddebba208338412dea365cf6ad">pn_link_set_max_message_size</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link, uint64_t size)</td></tr> +<tr class="memdesc:ga2421a9ddebba208338412dea365cf6ad"><td class="mdescLeft"> </td><td class="mdescRight"><b>Unsettled API</b> - Set the maximum message size for a link. <a href="#ga2421a9ddebba208338412dea365cf6ad">More...</a><br /></td></tr> +<tr class="separator:ga2421a9ddebba208338412dea365cf6ad"><td class="memSeparator" colspan="2"> </td></tr> +<tr class="memitem:ga9fc507fe3e207e84f2fc251cf9bd833d"><td class="memItemLeft" align="right" valign="top">uint64_t </td><td class="memItemRight" valign="bottom"><a class="el" href="group__link.html#ga9fc507fe3e207e84f2fc251cf9bd833d">pn_link_remote_max_message_size</a> (<a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> *link)</td></tr> +<tr class="memdesc:ga9fc507fe3e207e84f2fc251cf9bd833d"><td class="mdescLeft"> </td><td class="mdescRight"><b>Unsettled API</b> - Get the remote view of the maximum message size for a link. <a href="#ga9fc507fe3e207e84f2fc251cf9bd833d">More...</a><br /></td></tr> +<tr class="separator:ga9fc507fe3e207e84f2fc251cf9bd833d"><td class="memSeparator" colspan="2"> </td></tr> +</table> +<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> +<p>A channel for transferring messages. </p> +<h2 class="groupheader">Typedef Documentation</h2> +<a id="ga89dad3aa7934329a7ff467c636687bc0"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga89dad3aa7934329a7ff467c636687bc0">◆ </a></span>pn_link_t</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">typedef struct <a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> <a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>An AMQP Link object. </p> +<p>A pn_link_t object encapsulates all of the endpoint state associated with an AMQP Link. A pn_link_t object contains an ordered sequence of <a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340" title="An AMQP Delivery object. ">pn_delivery_t</a> objects representing in-flight deliveries. A pn_link_t may be either sender or a receiver but never both.</p> +<p>A pn_link_t object maintains a pointer to the <em>current</em> delivery within the ordered sequence of deliveries contained by the link (See <a class="el" href="group__link.html#gad7e426b0cc4759568b3fd2b4fb176260" title="Get the current delivery for a link. ">pn_link_current</a>). The <em>current</em> delivery is the target of a number of operations associated with the link, such as sending (<a class="el" href="group__link.html#gaa825fac21730f3f9fff37d156e5f88e9" title="Send message data for the current delivery on a link. ">pn_link_send</a>) and receiving (<a class="el" href="group__link.html#ga06c97ce7396973dca0d311567f25f95a" title="Receive message data for the current delivery on a link. ">pn_link_recv</a>) message data. </p> + +</div> +</div> +<h2 class="groupheader">Enumeration Type Documentation</h2> +<a id="ga3fb58bd0b88d37407ebb615c2630e608"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga3fb58bd0b88d37407ebb615c2630e608">◆ </a></span>pn_snd_settle_mode_t</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">enum <a class="el" href="group__link.html#ga3fb58bd0b88d37407ebb615c2630e608">pn_snd_settle_mode_t</a></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Describes the permitted/expected settlement behaviours of a sending link. </p> +<p>The sender settle mode describes the permitted and expected behaviour of a sending link with respect to settling of deliveries. See <a class="el" href="group__delivery.html#ga98c275fd7158e8b9d7d48d70503d68df" title="Settle a delivery. ">pn_delivery_settle</a> for more details. </p> +<table class="fieldtable"> +<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="gga3fb58bd0b88d37407ebb615c2630e608a8bd9806d2f8d8c1724ed26bb0543bade"></a>PN_SND_UNSETTLED </td><td class="fielddoc"><p>The sender will send all deliveries initially unsettled. </p> +</td></tr> +<tr><td class="fieldname"><a id="gga3fb58bd0b88d37407ebb615c2630e608ac159f0edca565961b554768a42e82bf0"></a>PN_SND_SETTLED </td><td class="fielddoc"><p>The sender will send all deliveries settled to the receiver. </p> +</td></tr> +<tr><td class="fieldname"><a id="gga3fb58bd0b88d37407ebb615c2630e608ac33a5700d0247976b465aeb7c1437fd1"></a>PN_SND_MIXED </td><td class="fielddoc"><p>The sender may send a mixture of settled and unsettled deliveries. </p> +</td></tr> +</table> + +</div> +</div> +<a id="gad1c2388cdae687be26222a5d66fd2d58"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gad1c2388cdae687be26222a5d66fd2d58">◆ </a></span>pn_rcv_settle_mode_t</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">enum <a class="el" href="group__link.html#gad1c2388cdae687be26222a5d66fd2d58">pn_rcv_settle_mode_t</a></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Describes the permitted/expected settlement behaviours of a receiving link. </p> +<p>The receiver settle mode describes the permitted and expected behaviour of a receiving link with respect to settling of deliveries. See <a class="el" href="group__delivery.html#ga98c275fd7158e8b9d7d48d70503d68df" title="Settle a delivery. ">pn_delivery_settle</a> for more details. </p> +<table class="fieldtable"> +<tr><th colspan="2">Enumerator</th></tr><tr><td class="fieldname"><a id="ggad1c2388cdae687be26222a5d66fd2d58ac22b82396bd686940dfcc861302a8262"></a>PN_RCV_FIRST </td><td class="fielddoc"><p>The receiver will settle deliveries regardless of what the sender does. </p> +</td></tr> +<tr><td class="fieldname"><a id="ggad1c2388cdae687be26222a5d66fd2d58ac79dc7f63fce078a8f0fe268c81dcaf3"></a>PN_RCV_SECOND </td><td class="fielddoc"><p>The receiver will only settle deliveries after the sender settles. </p> +</td></tr> +</table> + +</div> +</div> +<h2 class="groupheader">Function Documentation</h2> +<a id="ga469bef2e81c53e85899ffbb277616a8c"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga469bef2e81c53e85899ffbb277616a8c">◆ </a></span>pn_sender()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a>* pn_sender </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">pn_session_t</a> * </td> + <td class="paramname"><em>session</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const char * </td> + <td class="paramname"><em>name</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Construct a new sender on a session. </p> +<p>Each sending link between two AMQP containers must be uniquely named. Note that this uniqueness cannot be enforced at the API level, so some consideration should be taken in choosing link names.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">session</td><td>the session object </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>the name of the link </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>a newly constructed sender link or NULL on error </dd></dl> + +</div> +</div> +<a id="ga5e314b3e07b48ebcffbac63f265fa69f"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga5e314b3e07b48ebcffbac63f265fa69f">◆ </a></span>pn_receiver()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a>* pn_receiver </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9">pn_session_t</a> * </td> + <td class="paramname"><em>session</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">const char * </td> + <td class="paramname"><em>name</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Construct a new receiver on a session. </p> +<p>Each receiving link between two AMQP containers must be uniquely named. Note that this uniqueness cannot be enforced at the API level, so some consideration should be taken in choosing link names.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">session</td><td>the session object </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">name</td><td>the name of the link </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>a newly constructed receiver link or NULL on error </dd></dl> + +</div> +</div> +<a id="gadd3b8899fe023d3506fb88d228d6b1b7"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gadd3b8899fe023d3506fb88d228d6b1b7">◆ </a></span>pn_link_free()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void pn_link_free </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Free a link object. </p> +<p>When a link object is freed, all <a class="el" href="group__delivery.html#gacdfce854066c0a4ff4db9f9a0478f340" title="An AMQP Delivery object. ">pn_delivery_t</a> objects associated with the session are also freed. Freeing a link will settle any unsettled deliveries on the link.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object to free (or NULL) </td></tr> + </table> + </dd> +</dl> + +</div> +</div> +<a id="ga93e6b527743f433da2ff367c1b2c500a"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga93e6b527743f433da2ff367c1b2c500a">◆ </a></span>pn_link_get_context()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void* pn_link_get_context </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p><b>Deprecated</b> - Use <a class="el" href="group__link.html#ga8b19ffdb7934940fa7c5fd75c5fe2d69" title="Get the attachments that are associated with a link object. ">pn_link_attachments()</a>. </p> +<p>Get the application context that is associated with a link object.</p> +<p>The application context for a link may be set using <a class="el" href="group__link.html#ga376f2cc18bbd771d95aa8222586d19b2" title="Deprecated - Use pn_link_attachments(). ">pn_link_set_context</a>.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the link whose context is to be returned. </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>the application context for the link object </dd></dl> + +</div> +</div> +<a id="ga376f2cc18bbd771d95aa8222586d19b2"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga376f2cc18bbd771d95aa8222586d19b2">◆ </a></span>pn_link_set_context()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void pn_link_set_context </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype">void * </td> + <td class="paramname"><em>context</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p><b>Deprecated</b> - Use <a class="el" href="group__link.html#ga8b19ffdb7934940fa7c5fd75c5fe2d69" title="Get the attachments that are associated with a link object. ">pn_link_attachments()</a>. </p> +<p>Set a new application context for a link object.</p> +<p>The application context for a link object may be retrieved using <a class="el" href="group__link.html#ga93e6b527743f433da2ff367c1b2c500a" title="Deprecated - Use pn_link_attachments(). ">pn_link_get_context</a>.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the link object </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">context</td><td>the application context </td></tr> + </table> + </dd> +</dl> + +</div> +</div> +<a id="ga8b19ffdb7934940fa7c5fd75c5fe2d69"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga8b19ffdb7934940fa7c5fd75c5fe2d69">◆ </a></span>pn_link_attachments()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">pn_record_t* pn_link_attachments </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Get the attachments that are associated with a link object. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the link whose attachments are to be returned. </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>the attachments for the link object </dd></dl> + +</div> +</div> +<a id="gaa44112980ebabbb5cbd002670073a751"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gaa44112980ebabbb5cbd002670073a751">◆ </a></span>pn_link_name()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">const char* pn_link_name </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Get the name of a link. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>the name of the link </dd></dl> + +</div> +</div> +<a id="ga7c48ef214568267839aea04ed337926b"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga7c48ef214568267839aea04ed337926b">◆ </a></span>pn_link_is_sender()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">bool pn_link_is_sender </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Test if a link is a sender. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>true if and only if the link is a sender </dd></dl> + +</div> +</div> +<a id="gae7045dd02f2c9450ff8737e005628d81"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gae7045dd02f2c9450ff8737e005628d81">◆ </a></span>pn_link_is_receiver()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">bool pn_link_is_receiver </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Test if a link is a receiver. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>true if and only if the link is a receiver </dd></dl> + +</div> +</div> +<a id="gad502b38bc184ad0bfaa86dede81f62c9"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gad502b38bc184ad0bfaa86dede81f62c9">◆ </a></span>pn_link_state()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="group__connection.html#gaa83193a655e32bffc18624acc2c39233">pn_state_t</a> pn_link_state </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Get the endpoint state flags for a link. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the link </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>the link's state flags </dd></dl> + +</div> +</div> +<a id="gaf6f11d778aa4622d8aa5db8962bb1f0a"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gaf6f11d778aa4622d8aa5db8962bb1f0a">◆ </a></span>pn_link_error()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="group__error.html#ga24a289d5b32c9bd8a775600a5af83d52">pn_error_t</a>* pn_link_error </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p><b>Deprecated</b> </p> +<p>Get additional error information associated with the link.</p> +<p>Whenever a link operation fails (i.e. returns an error code), additional error details can be obtained using this function. The error object that is returned may also be used to clear the error condition.</p> +<p>The pointer returned by this operation is valid until the link object is freed.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>the link's error object </dd></dl> + +</div> +</div> +<a id="ga52c99044eabb7712efa2f1098c760804"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga52c99044eabb7712efa2f1098c760804">◆ </a></span>pn_link_condition()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a>* pn_link_condition </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Get the local condition associated with a link endpoint. </p> +<p>The <a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5" title="An AMQP Condition object. ">pn_condition_t</a> object retrieved may be modified prior to closing a link in order to indicate a particular condition exists when the link closes. This is normally used to communicate error conditions to the remote peer, however it may also be used in non error cases. See <a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5" title="An AMQP Condition object. ">pn_condition_t</a> for more details.</p> +<p>The pointer returned by this operation is valid until the link object is freed.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>the link's local condition object </dd></dl> + +</div> +</div> +<a id="ga97dc5133125c9b7e4afbb1b76e6efe7b"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga97dc5133125c9b7e4afbb1b76e6efe7b">◆ </a></span>pn_link_remote_condition()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a>* pn_link_remote_condition </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Get the remote condition associated with a link endpoint. </p> +<p>The <a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5" title="An AMQP Condition object. ">pn_condition_t</a> object retrieved may be examined in order to determine whether the remote peer was indicating some sort of exceptional condition when the remote link endpoint was closed. The <a class="el" href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5" title="An AMQP Condition object. ">pn_condition_t</a> object returned may not be modified.</p> +<p>The pointer returned by this operation is valid until the link object is freed.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>the link's remote condition object </dd></dl> + +</div> +</div> +<a id="gac63e43305fb1a5e3b14399a9ddc8f24d"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gac63e43305fb1a5e3b14399a9ddc8f24d">◆ </a></span>pn_link_session()</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_link_session </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Get the parent session for a link object. </p> +<p>This operation retrieves the parent <a class="el" href="group__session.html#ga38ccb93b8f5c2892adafce5d5f0fbcd9" title="An AMQP Session object. ">pn_session_t</a> object that contains the given <a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0" title="An AMQP Link object. ">pn_link_t</a> object.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>the parent session object </dd></dl> + +</div> +</div> +<a id="ga7c9434c40eb653f007ff5721e2ebf73e"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga7c9434c40eb653f007ff5721e2ebf73e">◆ </a></span>pn_link_head()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a>* pn_link_head </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a> * </td> + <td class="paramname"><em>connection</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="group__connection.html#gaa83193a655e32bffc18624acc2c39233">pn_state_t</a> </td> + <td class="paramname"><em>state</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieve the first link that matches the given state mask. </p> +<p>Examines the state of each link owned by the connection and returns the first link that matches the given state mask. If state contains both local and remote flags, then an exact match against those flags is performed. If state contains only local or only remote flags, then a match occurs if any of the local or remote flags are set respectively. state==0 matches all links.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">connection</td><td>to be searched for matching Links </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>mask to match </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>the first link owned by the connection that matches the mask, else NULL if no links match </dd></dl> + +</div> +</div> +<a id="ga9b2a9cfa00dfdae4e01bf75483433925"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga9b2a9cfa00dfdae4e01bf75483433925">◆ </a></span>pn_link_next()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a>* pn_link_next </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em>, </td> + </tr> + <tr> + <td class="paramkey"></td> + <td></td> + <td class="paramtype"><a class="el" href="group__connection.html#gaa83193a655e32bffc18624acc2c39233">pn_state_t</a> </td> + <td class="paramname"><em>state</em> </td> + </tr> + <tr> + <td></td> + <td>)</td> + <td></td><td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Retrieve the next link that matches the given state mask. </p> +<p>When used with pn_link_head, the application can access all links on the connection that match the given state. See pn_link_head for description of match behavior.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>the previous link obtained from pn_link_head or pn_link_next </td></tr> + <tr><td class="paramdir">[in]</td><td class="paramname">state</td><td>mask to match </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>the next session owned by the connection that matches the mask, else NULL if no sessions match </dd></dl> + +</div> +</div> +<a id="gaabaca3f5d03970a122240eebc588add6"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gaabaca3f5d03970a122240eebc588add6">◆ </a></span>pn_link_open()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void pn_link_open </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Open a link. </p> +<p>Once this operation has completed, the PN_LOCAL_ACTIVE state flag will be set.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> + +</div> +</div> +<a id="ga4851693eb6a16fd9ab61e2df6f00770d"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga4851693eb6a16fd9ab61e2df6f00770d">◆ </a></span>pn_link_close()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void pn_link_close </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Close a link. </p> +<p>Once this operation has completed, the PN_LOCAL_CLOSED state flag will be set. This may be called without calling <a class="el" href="group__link.html#gaabaca3f5d03970a122240eebc588add6" title="Open a link. ">pn_link_open</a>, in this case it is equivalent to calling <a class="el" href="group__link.html#gaabaca3f5d03970a122240eebc588add6" title="Open a link. ">pn_link_open</a> followed by <a class="el" href="group__link.html#ga4851693eb6a16fd9ab61e2df6f00770d" title="Close a link. ">pn_link_close</a>.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> + +</div> +</div> +<a id="ga1dc327c52ac24a0d65a17c88ce685b0b"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga1dc327c52ac24a0d65a17c88ce685b0b">◆ </a></span>pn_link_detach()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">void pn_link_detach </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Detach a link. </p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> + +</div> +</div> +<a id="ga2c8985a9d44a813ab1739a91ae3708a3"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga2c8985a9d44a813ab1739a91ae3708a3">◆ </a></span>pn_link_source()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="group__terminus.html#gad202baf5c904d6991e13521b7c93fdc2">pn_terminus_t</a>* pn_link_source </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Access the locally defined source definition for a link. </p> +<p>The pointer returned by this operation is valid until the link object is freed.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>a pointer to a source terminus </dd></dl> + +</div> +</div> +<a id="ga997c85388b9fb30151ea3b40b946e958"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga997c85388b9fb30151ea3b40b946e958">◆ </a></span>pn_link_target()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="group__terminus.html#gad202baf5c904d6991e13521b7c93fdc2">pn_terminus_t</a>* pn_link_target </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Access the locally defined target definition for a link. </p> +<p>The pointer returned by this operation is valid until the link object is freed.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>a pointer to a target terminus </dd></dl> + +</div> +</div> +<a id="gadf6b8ff6223465f21a481e9287f60671"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gadf6b8ff6223465f21a481e9287f60671">◆ </a></span>pn_link_remote_source()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="group__terminus.html#gad202baf5c904d6991e13521b7c93fdc2">pn_terminus_t</a>* pn_link_remote_source </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Access the remotely defined source definition for a link. </p> +<p>The pointer returned by this operation is valid until the link object is freed. The remotely defined terminus will be empty until the link is remotely opened as indicated by the PN_REMOTE_ACTIVE flag.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>a pointer to the remotely defined source terminus </dd></dl> + +</div> +</div> +<a id="gabf61668a66ae189dbb4820da6ee30d90"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gabf61668a66ae189dbb4820da6ee30d90">◆ </a></span>pn_link_remote_target()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname"><a class="el" href="group__terminus.html#gad202baf5c904d6991e13521b7c93fdc2">pn_terminus_t</a>* pn_link_remote_target </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Access the remotely defined target definition for a link. </p> +<p>The pointer returned by this operation is valid until the link object is freed. The remotely defined terminus will be empty until the link is remotely opened as indicated by the PN_REMOTE_ACTIVE flag.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>a pointer to the remotely defined target terminus </dd></dl> + +</div> +</div> +<a id="gad7e426b0cc4759568b3fd2b4fb176260"></a> +<h2 class="memtitle"><span class="permalink"><a href="#gad7e426b0cc4759568b3fd2b4fb176260">◆ </a></span>pn_link_current()</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_link_current </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Get the current delivery for a link. </p> +<p>Each link maintains a sequence of deliveries in the order they were created, along with a pointer to the <em>current</em> delivery. All send/recv operations on a link take place on the <em>current</em> delivery. If a link has no current delivery, the current delivery is automatically initialized to the next delivery created on the link. Once initialized, the current delivery remains the same until it is changed through use of <a class="el" href="group__link.html#ga93824a3859c37463e44458cd2f63d31f" title="Advance the current delivery of a link to the next delivery on the link. ">pn_link_advance</a> or until it is settled via <a class="el" href="group__delivery.html#ga98c275fd7158e8b9d7d48d70503d68df" title="Settle a delivery. ">pn_delivery_settle</a>.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>the current delivery for the link, or NULL if there is none </dd></dl> + +</div> +</div> +<a id="ga93824a3859c37463e44458cd2f63d31f"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga93824a3859c37463e44458cd2f63d31f">◆ </a></span>pn_link_advance()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">bool pn_link_advance </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Advance the current delivery of a link to the next delivery on the link. </p> +<p>For sending links this operation is used to finish sending message data for the current outgoing delivery and move on to the next outgoing delivery (if any).</p> +<p>For receiving links, this operation is used to finish accessing message data from the current incoming delivery and move on to the next incoming delivery (if any).</p> +<p>Each link maintains a sequence of deliveries in the order they were created, along with a pointer to the <em>current</em> delivery. The pn_link_advance operation will modify the <em>current</em> delivery on the link to point to the next delivery in the sequence. If there is no next delivery in the sequence, the current delivery will be set to NULL. This operation will return true if invoking it caused the value of the current delivery to change, even if it was set to NULL.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>true if the current delivery was changed </dd></dl> + +</div> +</div> +<a id="ga55428637f3b8c446efd5fea3f26c932d"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga55428637f3b8c446efd5fea3f26c932d">◆ </a></span>pn_link_credit()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">int pn_link_credit </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Get the credit balance for a link. </p> +<p>Links use a credit based flow control scheme. Every receiver maintains a credit balance that corresponds to the number of deliveries that the receiver can accept at any given moment. As more capacity becomes available at the receiver (see <a class="el" href="group__link.html#gafec44cf1c79ec03f3ac009e1879e71a9" title="Grant credit for incoming deliveries on a receiver. ">pn_link_flow</a>), it adds credit to this balance and communicates the new balance to the sender. Whenever a delivery is sent/received, the credit balance maintained by the link is decremented by one. Once the credit balance at the sender reaches zero, the sender must pause sending until more credit is obtained from the receiver.</p> +<p>Note that a sending link may still be used to send deliveries even if pn_link_credit reaches zero, however those deliveries will end up being buffered by the link until enough credit is obtained from the receiver to send them over the wire. In this case the balance reported by <a class="el" href="group__link.html#ga55428637f3b8c446efd5fea3f26c932d" title="Get the credit balance for a link. ">pn_link_credit</a> will go negative.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> +<dl class="section return"><dt>Returns</dt><dd>the credit balance for the link </dd></dl> + +</div> +</div> +<a id="ga57a00950e2eeef378fd6c0a3b3b5bfe9"></a> +<h2 class="memtitle"><span class="permalink"><a href="#ga57a00950e2eeef378fd6c0a3b3b5bfe9">◆ </a></span>pn_link_queued()</h2> + +<div class="memitem"> +<div class="memproto"> + <table class="memname"> + <tr> + <td class="memname">int pn_link_queued </td> + <td>(</td> + <td class="paramtype"><a class="el" href="group__link.html#ga89dad3aa7934329a7ff467c636687bc0">pn_link_t</a> * </td> + <td class="paramname"><em>link</em></td><td>)</td> + <td></td> + </tr> + </table> +</div><div class="memdoc"> + +<p>Get the number of queued deliveries for a link. </p> +<p>Links may queue deliveries for a number of reasons, for example there may be insufficient credit to send them to the receiver (see <a class="el" href="group__link.html#ga55428637f3b8c446efd5fea3f26c932d" title="Get the credit balance for a link. ">pn_link_credit</a>), or they simply may not have yet had a chance to be written to the wire. This operation will return the number of queued deliveries on a link.</p> +<dl class="params"><dt>Parameters</dt><dd> + <table class="params"> + <tr><td class="paramdir">[in]</td><td class="paramname">link</td><td>a link object </td></tr> + </table> + </dd> +</dl> +<dl class
<TRUNCATED> --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org