blob: e7253a330bd3472688f8a4d7eb85dbf11552cc91 [file] [log] [blame]
<!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.6"/>
<title>GRPC Core: grpc_chttp2_transport Struct Reference</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="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">GRPC Core
&#160;<span id="projectnumber">0.10.0.0</span>
</div>
</td>
</tr>
</tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.6 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
<div id="navrow1" class="tabs">
<ul class="tablist">
<li><a href="index.html"><span>Main&#160;Page</span></a></li>
<li class="current"><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li><a href="files.html"><span>Files</span></a></li>
<li>
<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>
</li>
</ul>
</div>
<div id="navrow2" class="tabs2">
<ul class="tablist">
<li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
<li><a href="classes.html"><span>Data&#160;Structure&#160;Index</span></a></li>
<li><a href="functions.html"><span>Data&#160;Fields</span></a></li>
</ul>
</div>
<!-- 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>Data Structures</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:void(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>Macros</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><!-- top -->
<div class="header">
<div class="summary">
<a href="#pub-attribs">Data Fields</a> </div>
<div class="headertitle">
<div class="title">grpc_chttp2_transport Struct Reference</div> </div>
</div><!--header-->
<div class="contents">
<p><code>#include &lt;<a class="el" href="internal_8h_source.html">internal.h</a>&gt;</code></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-attribs"></a>
Data Fields</h2></td></tr>
<tr class="memitem:aafdcf31c8c77411e25dfa9b94eeb283f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__transport.html">grpc_transport</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#aafdcf31c8c77411e25dfa9b94eeb283f">base</a></td></tr>
<tr class="separator:aafdcf31c8c77411e25dfa9b94eeb283f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa15d7fee63a356880346a9f961b9bdff"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#aa15d7fee63a356880346a9f961b9bdff">ep</a></td></tr>
<tr class="separator:aa15d7fee63a356880346a9f961b9bdff"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6ef8d064cc295865edf61d27ea8b71a2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a6ef8d064cc295865edf61d27ea8b71a2">metadata_context</a></td></tr>
<tr class="separator:a6ef8d064cc295865edf61d27ea8b71a2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a90319aafb59fb5c00ee8ae113e9a3d69"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__refcount.html">gpr_refcount</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a90319aafb59fb5c00ee8ae113e9a3d69">refs</a></td></tr>
<tr class="separator:a90319aafb59fb5c00ee8ae113e9a3d69"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a05c91e8c28afe70631f28384957044d7"><td class="memItemLeft" align="right" valign="top">char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a05c91e8c28afe70631f28384957044d7">peer_string</a></td></tr>
<tr class="separator:a05c91e8c28afe70631f28384957044d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab31ca67e25cd2f326a2e72cdfb67254e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgpr__mu.html">gpr_mu</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#ab31ca67e25cd2f326a2e72cdfb67254e">mu</a></td></tr>
<tr class="separator:ab31ca67e25cd2f326a2e72cdfb67254e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac604ea7777d5d1c6d1ca243bd4caef0f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#ac604ea7777d5d1c6d1ca243bd4caef0f">destroying</a></td></tr>
<tr class="memdesc:ac604ea7777d5d1c6d1ca243bd4caef0f"><td class="mdescLeft">&#160;</td><td class="mdescRight">is the transport destroying itself? <a href="#ac604ea7777d5d1c6d1ca243bd4caef0f">More...</a><br/></td></tr>
<tr class="separator:ac604ea7777d5d1c6d1ca243bd4caef0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a727a1168723b305b97a5dc2c25bd2405"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a727a1168723b305b97a5dc2c25bd2405">closed</a></td></tr>
<tr class="memdesc:a727a1168723b305b97a5dc2c25bd2405"><td class="mdescLeft">&#160;</td><td class="mdescRight">has the upper layer closed the transport? <a href="#a727a1168723b305b97a5dc2c25bd2405">More...</a><br/></td></tr>
<tr class="separator:a727a1168723b305b97a5dc2c25bd2405"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2e550b67b429a603f37decfc8b29449b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a2e550b67b429a603f37decfc8b29449b">writing_active</a></td></tr>
<tr class="memdesc:a2e550b67b429a603f37decfc8b29449b"><td class="mdescLeft">&#160;</td><td class="mdescRight">is a thread currently writing <a href="#a2e550b67b429a603f37decfc8b29449b">More...</a><br/></td></tr>
<tr class="separator:a2e550b67b429a603f37decfc8b29449b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab922e6a980797f432ade63042db8a1a3"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#ab922e6a980797f432ade63042db8a1a3">parsing_active</a></td></tr>
<tr class="memdesc:ab922e6a980797f432ade63042db8a1a3"><td class="mdescLeft">&#160;</td><td class="mdescRight">is a thread currently parsing <a href="#ab922e6a980797f432ade63042db8a1a3">More...</a><br/></td></tr>
<tr class="separator:ab922e6a980797f432ade63042db8a1a3"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2011b2483741ec634614fc4240b26905"><td class="memItemLeft" align="right" valign="top"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a2011b2483741ec634614fc4240b26905">endpoint_reading</a></td></tr>
<tr class="memdesc:a2011b2483741ec634614fc4240b26905"><td class="mdescLeft">&#160;</td><td class="mdescRight">is there a read request to the endpoint outstanding? <a href="#a2011b2483741ec634614fc4240b26905">More...</a><br/></td></tr>
<tr class="separator:a2011b2483741ec634614fc4240b26905"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a70d937138945c07b53f7be848fb1cc4a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__list.html">grpc_chttp2_stream_list</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a70d937138945c07b53f7be848fb1cc4a">lists</a> [<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a>]</td></tr>
<tr class="memdesc:a70d937138945c07b53f7be848fb1cc4a"><td class="mdescLeft">&#160;</td><td class="mdescRight">various lists of streams <a href="#a70d937138945c07b53f7be848fb1cc4a">More...</a><br/></td></tr>
<tr class="separator:a70d937138945c07b53f7be848fb1cc4a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9bd7506a4e310f2ebc1969250b3c7694"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a9bd7506a4e310f2ebc1969250b3c7694">global</a></td></tr>
<tr class="memdesc:a9bd7506a4e310f2ebc1969250b3c7694"><td class="mdescLeft">&#160;</td><td class="mdescRight">global state for reading/writing <a href="#a9bd7506a4e310f2ebc1969250b3c7694">More...</a><br/></td></tr>
<tr class="separator:a9bd7506a4e310f2ebc1969250b3c7694"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42e022f4775a11184006e08ba9c1afbf"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a42e022f4775a11184006e08ba9c1afbf">writing</a></td></tr>
<tr class="memdesc:a42e022f4775a11184006e08ba9c1afbf"><td class="mdescLeft">&#160;</td><td class="mdescRight">state only accessible by the chain of execution that set writing_active=1 <a href="#a42e022f4775a11184006e08ba9c1afbf">More...</a><br/></td></tr>
<tr class="separator:a42e022f4775a11184006e08ba9c1afbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae8dc6706fb9f342cca10ee7625630b2c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#ae8dc6706fb9f342cca10ee7625630b2c">parsing</a></td></tr>
<tr class="memdesc:ae8dc6706fb9f342cca10ee7625630b2c"><td class="mdescLeft">&#160;</td><td class="mdescRight">state only accessible by the chain of execution that set parsing_active=1 <a href="#ae8dc6706fb9f342cca10ee7625630b2c">More...</a><br/></td></tr>
<tr class="separator:ae8dc6706fb9f342cca10ee7625630b2c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af9836b789695d32031897da007fc3937"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#af9836b789695d32031897da007fc3937">parsing_stream_map</a></td></tr>
<tr class="memdesc:af9836b789695d32031897da007fc3937"><td class="mdescLeft">&#160;</td><td class="mdescRight">maps stream id to <a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> objects; owned by the parsing thread when parsing <a href="#af9836b789695d32031897da007fc3937">More...</a><br/></td></tr>
<tr class="separator:af9836b789695d32031897da007fc3937"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f38d1bd29aad2855ebf9d15bdcaaeca"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a8f38d1bd29aad2855ebf9d15bdcaaeca">new_stream_map</a></td></tr>
<tr class="memdesc:a8f38d1bd29aad2855ebf9d15bdcaaeca"><td class="mdescLeft">&#160;</td><td class="mdescRight">streams created by the client (possibly during parsing); merged with parsing_stream_map during unlock when no parsing is occurring <a href="#a8f38d1bd29aad2855ebf9d15bdcaaeca">More...</a><br/></td></tr>
<tr class="separator:a8f38d1bd29aad2855ebf9d15bdcaaeca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18d7c2fe14df07bc43840698aa5a3224"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a18d7c2fe14df07bc43840698aa5a3224">writing_action</a></td></tr>
<tr class="memdesc:a18d7c2fe14df07bc43840698aa5a3224"><td class="mdescLeft">&#160;</td><td class="mdescRight">closure to execute writing <a href="#a18d7c2fe14df07bc43840698aa5a3224">More...</a><br/></td></tr>
<tr class="separator:a18d7c2fe14df07bc43840698aa5a3224"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab53eb8ec23d323a389f1a5456d3f1885"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#ab53eb8ec23d323a389f1a5456d3f1885">reading_action</a></td></tr>
<tr class="memdesc:ab53eb8ec23d323a389f1a5456d3f1885"><td class="mdescLeft">&#160;</td><td class="mdescRight">closure to start reading from the endpoint <a href="#ab53eb8ec23d323a389f1a5456d3f1885">More...</a><br/></td></tr>
<tr class="separator:ab53eb8ec23d323a389f1a5456d3f1885"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a480ae47b5ab8e7f2926cb83b79952c7e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> **&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a480ae47b5ab8e7f2926cb83b79952c7e">accepting_stream</a></td></tr>
<tr class="memdesc:a480ae47b5ab8e7f2926cb83b79952c7e"><td class="mdescLeft">&#160;</td><td class="mdescRight">address to place a newly accepted stream - set and unset by grpc_chttp2_parsing_accept_stream; used by init_stream to publish the accepted server stream <a href="#a480ae47b5ab8e7f2926cb83b79952c7e">More...</a><br/></td></tr>
<tr class="separator:a480ae47b5ab8e7f2926cb83b79952c7e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8dc1af0f203166b32f22634edb3b47bb"><td class="memItemLeft" >struct {</td></tr>
<tr class="memitem:acb9f71a10cf469cfa6272458eab082f7"><td class="memItemLeft" >&#160;&#160;&#160;void(*&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__transport.html#a563b98e58df202ea2654dcada575ff2a">accept_stream</a> )(void *user_data, <br class="typebreak"/>
&#160;&#160;&#160;&#160;&#160;&#160;<a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, <br class="typebreak"/>
&#160;&#160;&#160;&#160;&#160;&#160;const void *server_data)</td></tr>
<tr class="separator:acb9f71a10cf469cfa6272458eab082f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a356cb0fb754cb53428769f8577047021"><td class="memItemLeft" >&#160;&#160;&#160;void *&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__transport.html#a039e50d9c69f5c8ea2faa685f41d4c8f">accept_stream_user_data</a></td></tr>
<tr class="separator:a356cb0fb754cb53428769f8577047021"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa82c411fc2ed48a783afc7481f2bde49"><td class="memItemLeft" >&#160;&#160;&#160;<a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a>&#160;&#160;&#160;<a class="el" href="structgrpc__chttp2__transport.html#a1808fd9ed1150b5397b26461d4de7857">state_tracker</a></td></tr>
<tr class="memdesc:aa82c411fc2ed48a783afc7481f2bde49"><td class="mdescLeft">&#160;</td><td class="mdescRight">connectivity tracking <a href="#aa82c411fc2ed48a783afc7481f2bde49">More...</a><br/></td></tr>
<tr class="separator:aa82c411fc2ed48a783afc7481f2bde49"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8dc1af0f203166b32f22634edb3b47bb"><td class="memItemLeft" valign="top">}&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="structgrpc__chttp2__transport.html#a8dc1af0f203166b32f22634edb3b47bb">channel_callback</a></td></tr>
<tr class="separator:a8dc1af0f203166b32f22634edb3b47bb"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">Field Documentation</h2>
<a class="anchor" id="a563b98e58df202ea2654dcada575ff2a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void(* grpc_chttp2_transport::accept_stream)(void *user_data, <a class="el" href="structgrpc__transport.html">grpc_transport</a> *transport, const void *server_data)</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a039e50d9c69f5c8ea2faa685f41d4c8f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">void* grpc_chttp2_transport::accept_stream_user_data</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a480ae47b5ab8e7f2926cb83b79952c7e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a>** grpc_chttp2_transport::accepting_stream</td>
</tr>
</table>
</div><div class="memdoc">
<p>address to place a newly accepted stream - set and unset by grpc_chttp2_parsing_accept_stream; used by init_stream to publish the accepted server stream </p>
</div>
</div>
<a class="anchor" id="aafdcf31c8c77411e25dfa9b94eeb283f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__transport.html">grpc_transport</a> grpc_chttp2_transport::base</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a8dc1af0f203166b32f22634edb3b47bb"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">struct { ... } grpc_chttp2_transport::channel_callback</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a727a1168723b305b97a5dc2c25bd2405"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport::closed</td>
</tr>
</table>
</div><div class="memdoc">
<p>has the upper layer closed the transport? </p>
</div>
</div>
<a class="anchor" id="ac604ea7777d5d1c6d1ca243bd4caef0f"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport::destroying</td>
</tr>
</table>
</div><div class="memdoc">
<p>is the transport destroying itself? </p>
</div>
</div>
<a class="anchor" id="a2011b2483741ec634614fc4240b26905"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport::endpoint_reading</td>
</tr>
</table>
</div><div class="memdoc">
<p>is there a read request to the endpoint outstanding? </p>
</div>
</div>
<a class="anchor" id="aa15d7fee63a356880346a9f961b9bdff"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__endpoint.html">grpc_endpoint</a>* grpc_chttp2_transport::ep</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a9bd7506a4e310f2ebc1969250b3c7694"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__chttp2__transport__global.html">grpc_chttp2_transport_global</a> grpc_chttp2_transport::global</td>
</tr>
</table>
</div><div class="memdoc">
<p>global state for reading/writing </p>
</div>
</div>
<a class="anchor" id="a70d937138945c07b53f7be848fb1cc4a"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__chttp2__stream__list.html">grpc_chttp2_stream_list</a> grpc_chttp2_transport::lists[<a class="el" href="internal_8h.html#abddcdf3ebb4034fd86a102d86aff5539adbd786741979d2b2106768372bfd90a5">STREAM_LIST_COUNT</a>]</td>
</tr>
</table>
</div><div class="memdoc">
<p>various lists of streams </p>
</div>
</div>
<a class="anchor" id="a6ef8d064cc295865edf61d27ea8b71a2"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__mdctx.html">grpc_mdctx</a>* grpc_chttp2_transport::metadata_context</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ab31ca67e25cd2f326a2e72cdfb67254e"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgpr__mu.html">gpr_mu</a> grpc_chttp2_transport::mu</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a8f38d1bd29aad2855ebf9d15bdcaaeca"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> grpc_chttp2_transport::new_stream_map</td>
</tr>
</table>
</div><div class="memdoc">
<p>streams created by the client (possibly during parsing); merged with parsing_stream_map during unlock when no parsing is occurring </p>
</div>
</div>
<a class="anchor" id="ae8dc6706fb9f342cca10ee7625630b2c"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__chttp2__transport__parsing.html">grpc_chttp2_transport_parsing</a> grpc_chttp2_transport::parsing</td>
</tr>
</table>
</div><div class="memdoc">
<p>state only accessible by the chain of execution that set parsing_active=1 </p>
</div>
</div>
<a class="anchor" id="ab922e6a980797f432ade63042db8a1a3"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport::parsing_active</td>
</tr>
</table>
</div><div class="memdoc">
<p>is a thread currently parsing </p>
</div>
</div>
<a class="anchor" id="af9836b789695d32031897da007fc3937"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__chttp2__stream__map.html">grpc_chttp2_stream_map</a> grpc_chttp2_transport::parsing_stream_map</td>
</tr>
</table>
</div><div class="memdoc">
<p>maps stream id to <a class="el" href="structgrpc__chttp2__stream.html">grpc_chttp2_stream</a> objects; owned by the parsing thread when parsing </p>
</div>
</div>
<a class="anchor" id="a05c91e8c28afe70631f28384957044d7"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname">char* grpc_chttp2_transport::peer_string</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="ab53eb8ec23d323a389f1a5456d3f1885"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> grpc_chttp2_transport::reading_action</td>
</tr>
</table>
</div><div class="memdoc">
<p>closure to start reading from the endpoint </p>
</div>
</div>
<a class="anchor" id="a90319aafb59fb5c00ee8ae113e9a3d69"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgpr__refcount.html">gpr_refcount</a> grpc_chttp2_transport::refs</td>
</tr>
</table>
</div><div class="memdoc">
</div>
</div>
<a class="anchor" id="a1808fd9ed1150b5397b26461d4de7857"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__connectivity__state__tracker.html">grpc_connectivity_state_tracker</a> grpc_chttp2_transport::state_tracker</td>
</tr>
</table>
</div><div class="memdoc">
<p>connectivity tracking </p>
</div>
</div>
<a class="anchor" id="a42e022f4775a11184006e08ba9c1afbf"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__chttp2__transport__writing.html">grpc_chttp2_transport_writing</a> grpc_chttp2_transport::writing</td>
</tr>
</table>
</div><div class="memdoc">
<p>state only accessible by the chain of execution that set writing_active=1 </p>
</div>
</div>
<a class="anchor" id="a18d7c2fe14df07bc43840698aa5a3224"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="structgrpc__iomgr__closure.html">grpc_iomgr_closure</a> grpc_chttp2_transport::writing_action</td>
</tr>
</table>
</div><div class="memdoc">
<p>closure to execute writing </p>
</div>
</div>
<a class="anchor" id="a2e550b67b429a603f37decfc8b29449b"></a>
<div class="memitem">
<div class="memproto">
<table class="memname">
<tr>
<td class="memname"><a class="el" href="port__platform_8h.html#aeeb41e29e7c7a916a4e0fb6cfb9f92e0">gpr_uint8</a> grpc_chttp2_transport::writing_active</td>
</tr>
</table>
</div><div class="memdoc">
<p>is a thread currently writing </p>
</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>src/core/transport/chttp2/<a class="el" href="internal_8h_source.html">internal.h</a></li>
</ul>
</div><!-- contents -->
<!-- start footer part -->
<hr class="footer"/><address class="footer"><small>
Generated on Wed Aug 5 2015 08:17:07 for GRPC Core by &#160;<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/>
</a> 1.8.6
</small></address>
</body>
</html>