http://git-wip-us.apache.org/repos/asf/qpid-site/blob/de3c3488/content/releases/qpid-proton-0.15.0/proton/c/api/group__connection__engine.html
----------------------------------------------------------------------
diff --git 
a/content/releases/qpid-proton-0.15.0/proton/c/api/group__connection__engine.html
 
b/content/releases/qpid-proton-0.15.0/proton/c/api/group__connection__engine.html
new file mode 100755
index 0000000..ef25c93
--- /dev/null
+++ 
b/content/releases/qpid-proton-0.15.0/proton/c/api/group__connection__engine.html
@@ -0,0 +1,411 @@
+<!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.3.1"/>
+<title>Qpid Proton C API: The Connection Engine</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="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/search.js"></script>
+<script type="text/javascript">
+  $(document).ready(function() { searchBox.OnSelectItem(0); });
+</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 style="padding-left: 0.5em;">
+   <div id="projectname">Qpid Proton C API
+   &#160;<span id="projectnumber">0.15.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.3.1 -->
+<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__connection__engine.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)">
+<a class="SelectItem" href="javascript:void(0)" 
onclick="searchBox.OnSelectItem(0)"><span 
class="SelectionMark">&#160;</span>All</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span 
class="SelectionMark">&#160;</span>Classes</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span 
class="SelectionMark">&#160;</span>Files</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span 
class="SelectionMark">&#160;</span>Functions</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span 
class="SelectionMark">&#160;</span>Variables</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span 
class="SelectionMark">&#160;</span>Typedefs</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span 
class="SelectionMark">&#160;</span>Enumerations</a><a class="SelectItem" 
href="javascript:vo
 id(0)" onclick="searchBox.OnSelectItem(7)"><span 
class="SelectionMark">&#160;</span>Enumerator</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span 
class="SelectionMark">&#160;</span>Groups</a><a class="SelectItem" 
href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span 
class="SelectionMark">&#160;</span>Pages</a></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="#nested-classes">Classes</a> &#124;
+<a href="#typedef-members">Typedefs</a> &#124;
+<a href="#func-members">Functions</a>  </div>
+  <div class="headertitle">
+<div class="title">The Connection Engine</div>  </div>
+</div><!--header-->
+<div class="contents">
+<table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="nested-classes"></a>
+Classes</h2></td></tr>
+<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct 
&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a></td></tr>
+<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a 
name="typedef-members"></a>
+Typedefs</h2></td></tr>
+<tr class="memitem:gaa72fd40bd99d6702cedd5f33d325e945"><td class="memItemLeft" 
align="right" valign="top">typedef struct <br class="typebreak"/>
+<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a>&#160;</td><td
 class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__engine.html#gaa72fd40bd99d6702cedd5f33d325e945">pn_connection_engine_t</a></td></tr>
+<tr class="separator:gaa72fd40bd99d6702cedd5f33d325e945"><td 
class="memSeparator" colspan="2">&#160;</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:gaf63012d048980969964b277d2a11fa59"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN int&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__engine.html#gaf63012d048980969964b277d2a11fa59">pn_connection_engine_init</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*engine)</td></tr>
+<tr class="separator:gaf63012d048980969964b277d2a11fa59"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gafc5a463aa5f666f0b53a3d6115b44043"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="gafc5a463aa5f666f0b53a3d6115b44043"></a>
+PN_EXTERN void&#160;</td><td class="memItemRight" valign="bottom"><a 
class="el" 
href="group__connection__engine.html#gafc5a463aa5f666f0b53a3d6115b44043">pn_connection_engine_start</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*engine)</td></tr>
+<tr class="memdesc:gafc5a463aa5f666f0b53a3d6115b44043"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Start the engine, call 
after setting security and host properties. <br/></td></tr>
+<tr class="separator:gafc5a463aa5f666f0b53a3d6115b44043"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga0bfd3ac3afbcb665cb53116747e30b6b"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__engine.html#ga0bfd3ac3afbcb665cb53116747e30b6b">pn_connection_engine_final</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*engine)</td></tr>
+<tr class="separator:ga0bfd3ac3afbcb665cb53116747e30b6b"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gad0f842890b565cfd616b91e87111afa8"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN <a class="el" 
href="structpn__rwbytes__t.html">pn_rwbytes_t</a>&#160;</td><td 
class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__engine.html#gad0f842890b565cfd616b91e87111afa8">pn_connection_engine_read_buffer</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*)</td></tr>
+<tr class="separator:gad0f842890b565cfd616b91e87111afa8"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga709193ccc0ef9b69d9258187848ee5b2"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__engine.html#ga709193ccc0ef9b69d9258187848ee5b2">pn_connection_engine_read_done</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> *, 
size_t n)</td></tr>
+<tr class="separator:ga709193ccc0ef9b69d9258187848ee5b2"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaace5db39fa0ff863537f4a1b28f26bfa"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__engine.html#gaace5db39fa0ff863537f4a1b28f26bfa">pn_connection_engine_read_close</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*)</td></tr>
+<tr class="separator:gaace5db39fa0ff863537f4a1b28f26bfa"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga7b7241e576b8cc5157d7f95a73aacbcd"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN <a class="el" 
href="structpn__bytes__t.html">pn_bytes_t</a>&#160;</td><td 
class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__engine.html#ga7b7241e576b8cc5157d7f95a73aacbcd">pn_connection_engine_write_buffer</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*)</td></tr>
+<tr class="separator:ga7b7241e576b8cc5157d7f95a73aacbcd"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gafb4a17a83b65e129e6045fe09a80a328"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__engine.html#gafb4a17a83b65e129e6045fe09a80a328">pn_connection_engine_write_done</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> *, 
size_t n)</td></tr>
+<tr class="separator:gafb4a17a83b65e129e6045fe09a80a328"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga0fec7f4c27337722b67a8ebe5d5e3857"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__engine.html#ga0fec7f4c27337722b67a8ebe5d5e3857">pn_connection_engine_write_close</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*)</td></tr>
+<tr class="separator:ga0fec7f4c27337722b67a8ebe5d5e3857"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga0523c0805aa37468414f22421f849f50"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN void&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__engine.html#ga0523c0805aa37468414f22421f849f50">pn_connection_engine_disconnected</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*)</td></tr>
+<tr class="separator:ga0523c0805aa37468414f22421f849f50"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gaf8274e2ece108708422d10e19565765a"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN <a class="el" 
href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a> 
*&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__engine.html#gaf8274e2ece108708422d10e19565765a">pn_connection_engine_dispatch</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*)</td></tr>
+<tr class="separator:gaf8274e2ece108708422d10e19565765a"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga71879bf76e1cce4121d8ecd56d28ea06"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN bool&#160;</td><td class="memItemRight" 
valign="bottom"><a class="el" 
href="group__connection__engine.html#ga71879bf76e1cce4121d8ecd56d28ea06">pn_connection_engine_finished</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*)</td></tr>
+<tr class="separator:ga71879bf76e1cce4121d8ecd56d28ea06"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga63f5022e371f90971e8b5c4c46a4c9ea"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ga63f5022e371f90971e8b5c4c46a4c9ea"></a>
+PN_EXTERN <a class="el" 
href="group__connection.html#ga886351d81ff3a977a284a206526c5aff">pn_connection_t</a>
 *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__engine.html#ga63f5022e371f90971e8b5c4c46a4c9ea">pn_connection_engine_connection</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*)</td></tr>
+<tr class="memdesc:ga63f5022e371f90971e8b5c4c46a4c9ea"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Get the AMQP connection, 
owned by the <a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a>. 
<br/></td></tr>
+<tr class="separator:ga63f5022e371f90971e8b5c4c46a4c9ea"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ga646b6151d3dc729300285868fabad11d"><td class="memItemLeft" 
align="right" valign="top"><a class="anchor" 
id="ga646b6151d3dc729300285868fabad11d"></a>
+PN_EXTERN <a class="el" 
href="group__transport.html#gac26eda05f649bbf0399f3d8d78d12fa8">pn_transport_t</a>
 *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__engine.html#ga646b6151d3dc729300285868fabad11d">pn_connection_engine_transport</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*)</td></tr>
+<tr class="memdesc:ga646b6151d3dc729300285868fabad11d"><td 
class="mdescLeft">&#160;</td><td class="mdescRight">Get the proton transport, 
owned by the <a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a>. 
<br/></td></tr>
+<tr class="separator:ga646b6151d3dc729300285868fabad11d"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:gab6b02e7480270a9ff64e71b391a6cd0f"><td class="memItemLeft" 
align="right" valign="top">PN_EXTERN <a class="el" 
href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a>
 *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" 
href="group__connection__engine.html#gab6b02e7480270a9ff64e71b391a6cd0f">pn_connection_engine_condition</a>
 (<a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*)</td></tr>
+<tr class="separator:gab6b02e7480270a9ff64e71b391a6cd0f"><td 
class="memSeparator" colspan="2">&#160;</td></tr>
+</table>
+<a name="details" id="details"></a><h2 class="groupheader">Detailed 
Description</h2>
+<h2 class="groupheader">Typedef Documentation</h2>
+<a class="anchor" id="gaa72fd40bd99d6702cedd5f33d325e945"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">typedef struct <a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a>  <a 
class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>A connection engine is a trio of pn_connection_t, pn_transport_t and 
pn_collector_t. Use the pn_connection_engine_*() functions to operate on it. It 
is a plain struct, not a proton object. Use pn_connection_engine_init to set up 
the initial objects and pn_connection_engine_final to release them. </p>
+
+</div>
+</div>
+<h2 class="groupheader">Function Documentation</h2>
+<a class="anchor" id="gab6b02e7480270a9ff64e71b391a6cd0f"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN <a class="el" 
href="group__condition.html#ga11eb7db7d2c205169fe3d47c996a95a5">pn_condition_t</a>*
 pn_connection_engine_condition </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get the condition object for the engine's transport.</p>
+<p>Note that IO errors should be set on this, the transport condition, not on 
the pn_connection_t condition. The connection's condition is for errors 
received via the AMQP protocol, the transport condition is for errors in the 
the IO layer such as a socket read or disconnect errors. </p>
+
+</div>
+</div>
+<a class="anchor" id="ga0523c0805aa37468414f22421f849f50"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_connection_engine_disconnected 
</td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Close both sides of the transport, equivalent to <a class="el" 
href="group__connection__engine.html#gaace5db39fa0ff863537f4a1b28f26bfa">pn_connection_engine_read_close()</a>;
 <a class="el" 
href="group__connection__engine.html#ga0fec7f4c27337722b67a8ebe5d5e3857">pn_connection_engine_write_close()</a></p>
+<p>You must still call <a class="el" 
href="group__connection__engine.html#gaf8274e2ece108708422d10e19565765a">pn_connection_engine_dispatch()</a>
 to process final events.</p>
+<p>To provide transport error information to the handler, set it on <a 
class="el" 
href="group__connection__engine.html#gab6b02e7480270a9ff64e71b391a6cd0f">pn_connection_engine_condition()</a>
 <em>before</em> calling <a class="el" 
href="group__connection__engine.html#ga0523c0805aa37468414f22421f849f50">pn_connection_engine_disconnected()</a>.
 This sets the error on the pn_transport_t object.</p>
+<p>Note this does <em>not</em> modify the pn_connection_t, so you can 
distinguish between a connection close error sent by the remote peer (which 
will set the connection condition) and a transport error (which sets the 
transport condition.) </p>
+
+</div>
+</div>
+<a class="anchor" id="gaf8274e2ece108708422d10e19565765a"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN <a class="el" 
href="group__event.html#ga87f3028b4888632bbd56fb71ac737ae8">pn_event_t</a>* 
pn_connection_engine_dispatch </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get the next available event. Call in a loop until it returns NULL to 
dispatch all available events. Note this call may modify the read and write 
buffers.</p>
+<dl class="section return"><dt>Returns</dt><dd>Pointer to the next event, or 
NULL if there are none available. </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="ga0bfd3ac3afbcb665cb53116747e30b6b"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_connection_engine_final </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*&#160;</td>
+          <td class="paramname"><em>engine</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Free resources used by the engine, set the connection and transport 
pointers to NULL. </p>
+
+</div>
+</div>
+<a class="anchor" id="ga71879bf76e1cce4121d8ecd56d28ea06"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN bool pn_connection_engine_finished 
</td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Return true if the engine is finished - all data has been written, all 
events have been handled and the transport is closed. </p>
+
+</div>
+</div>
+<a class="anchor" id="gaf63012d048980969964b277d2a11fa59"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN int pn_connection_engine_init </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*&#160;</td>
+          <td class="paramname"><em>engine</em></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Initialize a <a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> struct 
with a new connection and transport.</p>
+<p>Configure connection properties and call connection_engine_start() before 
using the engine.</p>
+<p>Call pn_connection_engine_final to free resources when you are done.</p>
+<dl class="section return"><dt>Returns</dt><dd>0 on success, a proton error 
code on failure (</dd></dl>
+<dl class="section see"><dt>See Also</dt><dd><a class="el" 
href="error_8h_source.html">error.h</a>) </dd></dl>
+
+</div>
+</div>
+<a class="anchor" id="gad0f842890b565cfd616b91e87111afa8"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN <a class="el" 
href="structpn__rwbytes__t.html">pn_rwbytes_t</a> 
pn_connection_engine_read_buffer </td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get the engine's read buffer. Read data from your IO source to buf.start, 
up to a max of buf.size. Then call <a class="el" 
href="group__connection__engine.html#ga709193ccc0ef9b69d9258187848ee5b2">pn_connection_engine_read_done()</a>.</p>
+<p>buf.size==0 means the engine cannot read presently, calling <a class="el" 
href="group__connection__engine.html#gaf8274e2ece108708422d10e19565765a">pn_connection_engine_dispatch()</a>
 may create more buffer space. </p>
+
+</div>
+</div>
+<a class="anchor" id="gaace5db39fa0ff863537f4a1b28f26bfa"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_connection_engine_read_close 
</td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Close the read side of the transport when no more data is available. Note 
there may still be events for <a class="el" 
href="group__connection__engine.html#gaf8274e2ece108708422d10e19565765a">pn_connection_engine_dispatch()</a>
 or data in <a class="el" 
href="group__connection__engine.html#ga7b7241e576b8cc5157d7f95a73aacbcd">pn_connection_engine_write_buffer()</a>
 </p>
+
+</div>
+</div>
+<a class="anchor" id="ga709193ccc0ef9b69d9258187848ee5b2"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_connection_engine_read_done 
</td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*&#160;</td>
+          <td class="paramname">, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>n</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Consume the first n bytes of data in <a class="el" 
href="group__connection__engine.html#gad0f842890b565cfd616b91e87111afa8">pn_connection_engine_read_buffer()</a>
 and update the buffer. </p>
+
+</div>
+</div>
+<a class="anchor" id="ga7b7241e576b8cc5157d7f95a73aacbcd"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN <a class="el" 
href="structpn__bytes__t.html">pn_bytes_t</a> pn_connection_engine_write_buffer 
</td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Get the engine's write buffer. Write data from buf.start to your IO 
destination, up to a max of buf.size. Then call <a class="el" 
href="group__connection__engine.html#gafb4a17a83b65e129e6045fe09a80a328">pn_connection_engine_write_done()</a>.</p>
+<p>buf.size==0 means the engine has nothing to write presently. Calling <a 
class="el" 
href="group__connection__engine.html#gaf8274e2ece108708422d10e19565765a">pn_connection_engine_dispatch()</a>
 may generate more data. </p>
+
+</div>
+</div>
+<a class="anchor" id="ga0fec7f4c27337722b67a8ebe5d5e3857"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_connection_engine_write_close 
</td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*&#160;</td>
+          <td class="paramname"></td><td>)</td>
+          <td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Call when the write side of IO has closed and no more data can be written. 
Note that there may still be events for <a class="el" 
href="group__connection__engine.html#gaf8274e2ece108708422d10e19565765a">pn_connection_engine_dispatch()</a>
 or data to read into <a class="el" 
href="group__connection__engine.html#gad0f842890b565cfd616b91e87111afa8">pn_connection_engine_read_buffer()</a>.
 </p>
+
+</div>
+</div>
+<a class="anchor" id="gafb4a17a83b65e129e6045fe09a80a328"></a>
+<div class="memitem">
+<div class="memproto">
+      <table class="memname">
+        <tr>
+          <td class="memname">PN_EXTERN void pn_connection_engine_write_done 
</td>
+          <td>(</td>
+          <td class="paramtype"><a class="el" 
href="structpn__connection__engine__t.html">pn_connection_engine_t</a> 
*&#160;</td>
+          <td class="paramname">, </td>
+        </tr>
+        <tr>
+          <td class="paramkey"></td>
+          <td></td>
+          <td class="paramtype">size_t&#160;</td>
+          <td class="paramname"><em>n</em>&#160;</td>
+        </tr>
+        <tr>
+          <td></td>
+          <td>)</td>
+          <td></td><td></td>
+        </tr>
+      </table>
+</div><div class="memdoc">
+<p>Call when the first n bytes of <a class="el" 
href="group__connection__engine.html#ga7b7241e576b8cc5157d7f95a73aacbcd">pn_connection_engine_write_buffer()</a>
 have been written to IO and can be re-used for new data. Updates the buffer. 
</p>
+
+</div>
+</div>
+</div><!-- contents -->
+</div><!-- doc-content -->
+<!-- start footer part -->
+<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
+  <ul>
+    <li class="footer">Generated by
+    <a href="http://www.doxygen.org/index.html";>
+    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.3.1 </li>
+  </ul>
+</div>
+</body>
+</html>

http://git-wip-us.apache.org/repos/asf/qpid-site/blob/de3c3488/content/releases/qpid-proton-0.15.0/proton/c/api/group__connection__engine.js
----------------------------------------------------------------------
diff --git 
a/content/releases/qpid-proton-0.15.0/proton/c/api/group__connection__engine.js 
b/content/releases/qpid-proton-0.15.0/proton/c/api/group__connection__engine.js
new file mode 100755
index 0000000..77fc2b9
--- /dev/null
+++ 
b/content/releases/qpid-proton-0.15.0/proton/c/api/group__connection__engine.js
@@ -0,0 +1,25 @@
+var group__connection__engine =
+[
+    [ "pn_connection_engine_t", "structpn__connection__engine__t.html", [
+      [ "collector", 
"structpn__connection__engine__t.html#aa8b404ea362613a1efe37d6ccd3b20f9", null 
],
+      [ "connection", 
"structpn__connection__engine__t.html#a711d5119f9e3e896afad907cb32bee60", null 
],
+      [ "event", 
"structpn__connection__engine__t.html#ad8be1ce72f03c6330a2302bbed8196b9", null 
],
+      [ "transport", 
"structpn__connection__engine__t.html#a42051c640bfd941d5b68cb3a8a70711b", null ]
+    ] ],
+    [ "pn_connection_engine_t", 
"group__connection__engine.html#gaa72fd40bd99d6702cedd5f33d325e945", null ],
+    [ "pn_connection_engine_condition", 
"group__connection__engine.html#gab6b02e7480270a9ff64e71b391a6cd0f", null ],
+    [ "pn_connection_engine_connection", 
"group__connection__engine.html#ga63f5022e371f90971e8b5c4c46a4c9ea", null ],
+    [ "pn_connection_engine_disconnected", 
"group__connection__engine.html#ga0523c0805aa37468414f22421f849f50", null ],
+    [ "pn_connection_engine_dispatch", 
"group__connection__engine.html#gaf8274e2ece108708422d10e19565765a", null ],
+    [ "pn_connection_engine_final", 
"group__connection__engine.html#ga0bfd3ac3afbcb665cb53116747e30b6b", null ],
+    [ "pn_connection_engine_finished", 
"group__connection__engine.html#ga71879bf76e1cce4121d8ecd56d28ea06", null ],
+    [ "pn_connection_engine_init", 
"group__connection__engine.html#gaf63012d048980969964b277d2a11fa59", null ],
+    [ "pn_connection_engine_read_buffer", 
"group__connection__engine.html#gad0f842890b565cfd616b91e87111afa8", null ],
+    [ "pn_connection_engine_read_close", 
"group__connection__engine.html#gaace5db39fa0ff863537f4a1b28f26bfa", null ],
+    [ "pn_connection_engine_read_done", 
"group__connection__engine.html#ga709193ccc0ef9b69d9258187848ee5b2", null ],
+    [ "pn_connection_engine_start", 
"group__connection__engine.html#gafc5a463aa5f666f0b53a3d6115b44043", null ],
+    [ "pn_connection_engine_transport", 
"group__connection__engine.html#ga646b6151d3dc729300285868fabad11d", null ],
+    [ "pn_connection_engine_write_buffer", 
"group__connection__engine.html#ga7b7241e576b8cc5157d7f95a73aacbcd", null ],
+    [ "pn_connection_engine_write_close", 
"group__connection__engine.html#ga0fec7f4c27337722b67a8ebe5d5e3857", null ],
+    [ "pn_connection_engine_write_done", 
"group__connection__engine.html#gafb4a17a83b65e129e6045fe09a80a328", null ]
+];
\ No newline at end of file


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

Reply via email to