grpc_8h_source.html 75 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml">
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
  5. <meta http-equiv="X-UA-Compatible" content="IE=9"/>
  6. <meta name="generator" content="Doxygen 1.8.11"/>
  7. <title>GRPC C++: include/grpc/grpc.h Source File</title>
  8. <link href="tabs.css" rel="stylesheet" type="text/css"/>
  9. <script type="text/javascript" src="jquery.js"></script>
  10. <script type="text/javascript" src="dynsections.js"></script>
  11. <link href="search/search.css" rel="stylesheet" type="text/css"/>
  12. <script type="text/javascript" src="search/searchdata.js"></script>
  13. <script type="text/javascript" src="search/search.js"></script>
  14. <script type="text/javascript">
  15. $(document).ready(function() { init_search(); });
  16. </script>
  17. <link href="doxygen.css" rel="stylesheet" type="text/css" />
  18. </head>
  19. <body>
  20. <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
  21. <div id="titlearea">
  22. <table cellspacing="0" cellpadding="0">
  23. <tbody>
  24. <tr style="height: 56px;">
  25. <td id="projectalign" style="padding-left: 0.5em;">
  26. <div id="projectname">GRPC C++
  27. &#160;<span id="projectnumber">1.0.0</span>
  28. </div>
  29. </td>
  30. </tr>
  31. </tbody>
  32. </table>
  33. </div>
  34. <!-- end header part -->
  35. <!-- Generated by Doxygen 1.8.11 -->
  36. <script type="text/javascript">
  37. var searchBox = new SearchBox("searchBox", "search",false,'Search');
  38. </script>
  39. <div id="navrow1" class="tabs">
  40. <ul class="tablist">
  41. <li><a href="index.html"><span>Main&#160;Page</span></a></li>
  42. <li><a href="modules.html"><span>Modules</span></a></li>
  43. <li><a href="namespaces.html"><span>Namespaces</span></a></li>
  44. <li><a href="annotated.html"><span>Data&#160;Structures</span></a></li>
  45. <li class="current"><a href="files.html"><span>Files</span></a></li>
  46. <li>
  47. <div id="MSearchBox" class="MSearchBoxInactive">
  48. <span class="left">
  49. <img id="MSearchSelect" src="search/mag_sel.png"
  50. onmouseover="return searchBox.OnSearchSelectShow()"
  51. onmouseout="return searchBox.OnSearchSelectHide()"
  52. alt=""/>
  53. <input type="text" id="MSearchField" value="Search" accesskey="S"
  54. onfocus="searchBox.OnSearchFieldFocus(true)"
  55. onblur="searchBox.OnSearchFieldFocus(false)"
  56. onkeyup="searchBox.OnSearchFieldChange(event)"/>
  57. </span><span class="right">
  58. <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
  59. </span>
  60. </div>
  61. </li>
  62. </ul>
  63. </div>
  64. <div id="navrow2" class="tabs2">
  65. <ul class="tablist">
  66. <li><a href="files.html"><span>File&#160;List</span></a></li>
  67. <li><a href="globals.html"><span>Globals</span></a></li>
  68. </ul>
  69. </div>
  70. <!-- window showing the filter options -->
  71. <div id="MSearchSelectWindow"
  72. onmouseover="return searchBox.OnSearchSelectShow()"
  73. onmouseout="return searchBox.OnSearchSelectHide()"
  74. onkeydown="return searchBox.OnSearchSelectKey(event)">
  75. </div>
  76. <!-- iframe showing the search results (closed by default) -->
  77. <div id="MSearchResultsWindow">
  78. <iframe src="javascript:void(0)" frameborder="0"
  79. name="MSearchResults" id="MSearchResults">
  80. </iframe>
  81. </div>
  82. <div id="nav-path" class="navpath">
  83. <ul>
  84. <li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_9d7a14d6d9adcbe4c35dbdb88d867e2e.html">grpc</a></li> </ul>
  85. </div>
  86. </div><!-- top -->
  87. <div class="header">
  88. <div class="headertitle">
  89. <div class="title">grpc.h</div> </div>
  90. </div><!--header-->
  91. <div class="contents">
  92. <a href="grpc_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span>&#160;<span class="comment">/*</span></div><div class="line"><a name="l00002"></a><span class="lineno"> 2</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00003"></a><span class="lineno"> 3</span>&#160;<span class="comment"> * Copyright 2015-2016, Google Inc.</span></div><div class="line"><a name="l00004"></a><span class="lineno"> 4</span>&#160;<span class="comment"> * All rights reserved.</span></div><div class="line"><a name="l00005"></a><span class="lineno"> 5</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00006"></a><span class="lineno"> 6</span>&#160;<span class="comment"> * Redistribution and use in source and binary forms, with or without</span></div><div class="line"><a name="l00007"></a><span class="lineno"> 7</span>&#160;<span class="comment"> * modification, are permitted provided that the following conditions are</span></div><div class="line"><a name="l00008"></a><span class="lineno"> 8</span>&#160;<span class="comment"> * met:</span></div><div class="line"><a name="l00009"></a><span class="lineno"> 9</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00010"></a><span class="lineno"> 10</span>&#160;<span class="comment"> * * Redistributions of source code must retain the above copyright</span></div><div class="line"><a name="l00011"></a><span class="lineno"> 11</span>&#160;<span class="comment"> * notice, this list of conditions and the following disclaimer.</span></div><div class="line"><a name="l00012"></a><span class="lineno"> 12</span>&#160;<span class="comment"> * * Redistributions in binary form must reproduce the above</span></div><div class="line"><a name="l00013"></a><span class="lineno"> 13</span>&#160;<span class="comment"> * copyright notice, this list of conditions and the following disclaimer</span></div><div class="line"><a name="l00014"></a><span class="lineno"> 14</span>&#160;<span class="comment"> * in the documentation and/or other materials provided with the</span></div><div class="line"><a name="l00015"></a><span class="lineno"> 15</span>&#160;<span class="comment"> * distribution.</span></div><div class="line"><a name="l00016"></a><span class="lineno"> 16</span>&#160;<span class="comment"> * * Neither the name of Google Inc. nor the names of its</span></div><div class="line"><a name="l00017"></a><span class="lineno"> 17</span>&#160;<span class="comment"> * contributors may be used to endorse or promote products derived from</span></div><div class="line"><a name="l00018"></a><span class="lineno"> 18</span>&#160;<span class="comment"> * this software without specific prior written permission.</span></div><div class="line"><a name="l00019"></a><span class="lineno"> 19</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00020"></a><span class="lineno"> 20</span>&#160;<span class="comment"> * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS</span></div><div class="line"><a name="l00021"></a><span class="lineno"> 21</span>&#160;<span class="comment"> * &quot;AS IS&quot; AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT</span></div><div class="line"><a name="l00022"></a><span class="lineno"> 22</span>&#160;<span class="comment"> * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR</span></div><div class="line"><a name="l00023"></a><span class="lineno"> 23</span>&#160;<span class="comment"> * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT</span></div><div class="line"><a name="l00024"></a><span class="lineno"> 24</span>&#160;<span class="comment"> * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,</span></div><div class="line"><a name="l00025"></a><span class="lineno"> 25</span>&#160;<span class="comment"> * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT</span></div><div class="line"><a name="l00026"></a><span class="lineno"> 26</span>&#160;<span class="comment"> * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,</span></div><div class="line"><a name="l00027"></a><span class="lineno"> 27</span>&#160;<span class="comment"> * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY</span></div><div class="line"><a name="l00028"></a><span class="lineno"> 28</span>&#160;<span class="comment"> * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT</span></div><div class="line"><a name="l00029"></a><span class="lineno"> 29</span>&#160;<span class="comment"> * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE</span></div><div class="line"><a name="l00030"></a><span class="lineno"> 30</span>&#160;<span class="comment"> * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.</span></div><div class="line"><a name="l00031"></a><span class="lineno"> 31</span>&#160;<span class="comment"> *</span></div><div class="line"><a name="l00032"></a><span class="lineno"> 32</span>&#160;<span class="comment"> */</span></div><div class="line"><a name="l00033"></a><span class="lineno"> 33</span>&#160;</div><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>&#160;<span class="preprocessor">#ifndef GRPC_GRPC_H</span></div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span>&#160;<span class="preprocessor">#define GRPC_GRPC_H</span></div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>&#160;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_2status_8h.html">grpc/status.h</a>&gt;</span></div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>&#160;</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc_2byte__buffer_8h.html">grpc/byte_buffer.h</a>&gt;</span></div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="connectivity__state_8h.html">grpc/impl/codegen/connectivity_state.h</a>&gt;</span></div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="grpc__types_8h.html">grpc/impl/codegen/grpc_types.h</a>&gt;</span></div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span>&#160;<span class="preprocessor">#include &lt;<a class="code" href="propagation__bits_8h.html">grpc/impl/codegen/propagation_bits.h</a>&gt;</span></div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>&#160;<span class="preprocessor">#include &lt;grpc/support/slice.h&gt;</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>&#160;<span class="preprocessor">#include &lt;grpc/support/time.h&gt;</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>&#160;<span class="preprocessor">#include &lt;stddef.h&gt;</span></div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>&#160;</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>&#160;<span class="keyword">extern</span> <span class="stringliteral">&quot;C&quot;</span> {</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>&#160;</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a0c8d5a1d0d3b3e862c3a71fbb78e9b50">grpc_metadata_array_init</a>(<a class="code" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *array);</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a60d82644a7c9d97ada453796b4b2f711">grpc_metadata_array_destroy</a>(<a class="code" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *array);</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>&#160;</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#afd22cfbc549db65ee265335c3264a57b">grpc_call_details_init</a>(<a class="code" href="structgrpc__call__details.html">grpc_call_details</a> *details);</div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#ad18a001bb19d54c4355875062777d21f">grpc_call_details_destroy</a>(<a class="code" href="structgrpc__call__details.html">grpc_call_details</a> *details);</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>&#160;</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#afb2c29a4f1805be6903261d6f4cfefd0">grpc_register_plugin</a>(<span class="keywordtype">void</span> (*init)(<span class="keywordtype">void</span>), <span class="keywordtype">void</span> (*destroy)(<span class="keywordtype">void</span>));</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>&#160;</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a573aed8e200997856a227c7eb798a185">grpc_init</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>&#160;</div><div class="line"><a name="l00088"></a><span class="lineno"> 88</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a35f55253e80714c17f4f3a0657e06f1b">grpc_shutdown</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00089"></a><span class="lineno"> 89</span>&#160;</div><div class="line"><a name="l00091"></a><span class="lineno"> 91</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="grpc_8h.html#a8bf40c680565d2d3b29b85e8a9e661f3">grpc_version_string</a>(<span class="keywordtype">void</span>);</div><div class="line"><a name="l00092"></a><span class="lineno"> 92</span>&#160;</div><div class="line"><a name="l00094"></a><span class="lineno"> 94</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *<a class="code" href="grpc_8h.html#ae1dc1e6cbb21d67a62db56ab8ef8c787">grpc_completion_queue_create</a>(<span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00095"></a><span class="lineno"> 95</span>&#160;</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="structgrpc__event.html">grpc_event</a> <a class="code" href="grpc_8h.html#ab43d55077bcbeb324044d3dcd26a5c80">grpc_completion_queue_next</a>(<a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *cq,</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline,</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span>&#160; <span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00107"></a><span class="lineno"> 107</span>&#160;</div><div class="line"><a name="l00119"></a><span class="lineno"> 119</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="structgrpc__event.html">grpc_event</a> <a class="code" href="grpc_8h.html#a0292bf7a0c794771cd66766dc4b8276c">grpc_completion_queue_pluck</a>(<a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *cq,</div><div class="line"><a name="l00120"></a><span class="lineno"> 120</span>&#160; <span class="keywordtype">void</span> *tag, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline,</div><div class="line"><a name="l00121"></a><span class="lineno"> 121</span>&#160; <span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00122"></a><span class="lineno"> 122</span>&#160;</div><div class="line"><a name="l00125"></a><span class="lineno"><a class="line" href="grpc_8h.html#a7fa47963513b9ce50ca4006b9db94c5e"> 125</a></span>&#160;<span class="preprocessor">#define GRPC_MAX_COMPLETION_QUEUE_PLUCKERS 6</span></div><div class="line"><a name="l00126"></a><span class="lineno"> 126</span>&#160;</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a3e1097e9c970519e357eb556777315ec">grpc_completion_queue_shutdown</a>(<a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *cq);</div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>&#160;</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#af77734d6350953db5d730f7213aac639">grpc_completion_queue_destroy</a>(<a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *cq);</div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>&#160;</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="grpc__types_8h.html#a09ce3d7fa6473ac1cb39692adf257a13">grpc_alarm</a> *<a class="code" href="grpc_8h.html#a74505bb522ecd43c21cb51651788c621">grpc_alarm_create</a>(<a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *cq,</div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline, <span class="keywordtype">void</span> *tag);</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>&#160;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#aaaf4d5c77eea32e58481b81d07561ba3">grpc_alarm_cancel</a>(<a class="code" href="grpc__types_8h.html#a09ce3d7fa6473ac1cb39692adf257a13">grpc_alarm</a> *alarm);</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>&#160;</div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a44294a352d5e6c2d23a213668e2a11cb">grpc_alarm_destroy</a>(<a class="code" href="grpc__types_8h.html#a09ce3d7fa6473ac1cb39692adf257a13">grpc_alarm</a> *alarm);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>&#160;</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="connectivity__state_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> <a class="code" href="grpc_8h.html#a783c4ef542c9899f3c2e02c2a956fd6d">grpc_channel_check_connectivity_state</a>(</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>&#160; <a class="code" href="grpc__types_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc_channel</a> *channel, <span class="keywordtype">int</span> try_to_connect);</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>&#160;</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a568bac9fe4004c1dd790e6569b918d2f">grpc_channel_watch_connectivity_state</a>(</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span>&#160; <a class="code" href="grpc__types_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc_channel</a> *channel, <a class="code" href="connectivity__state_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a> last_observed_state,</div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline, <a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *cq, <span class="keywordtype">void</span> *tag);</div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>&#160;</div><div class="line"><a name="l00175"></a><span class="lineno"> 175</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> *<a class="code" href="grpc_8h.html#a96f66c3534c45671dcaec484d2c97a90">grpc_channel_create_call</a>(</div><div class="line"><a name="l00176"></a><span class="lineno"> 176</span>&#160; <a class="code" href="grpc__types_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc_channel</a> *channel, <a class="code" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> *parent_call, uint32_t propagation_mask,</div><div class="line"><a name="l00177"></a><span class="lineno"> 177</span>&#160; <a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *completion_queue, <span class="keyword">const</span> <span class="keywordtype">char</span> *method,</div><div class="line"><a name="l00178"></a><span class="lineno"> 178</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *host, <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline, <span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00179"></a><span class="lineno"> 179</span>&#160;</div><div class="line"><a name="l00182"></a><span class="lineno"> 182</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#acad1b47029ebf10f80e0db9423401c87">grpc_channel_ping</a>(<a class="code" href="grpc__types_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc_channel</a> *channel, <a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *cq,</div><div class="line"><a name="l00183"></a><span class="lineno"> 183</span>&#160; <span class="keywordtype">void</span> *tag, <span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00184"></a><span class="lineno"> 184</span>&#160;</div><div class="line"><a name="l00186"></a><span class="lineno"> 186</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> *<a class="code" href="grpc_8h.html#af09cbd24340547542b6ec3300e973d62">grpc_channel_register_call</a>(<a class="code" href="grpc__types_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc_channel</a> *channel,</div><div class="line"><a name="l00187"></a><span class="lineno"> 187</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *method, <span class="keyword">const</span> <span class="keywordtype">char</span> *host,</div><div class="line"><a name="l00188"></a><span class="lineno"> 188</span>&#160; <span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00189"></a><span class="lineno"> 189</span>&#160;</div><div class="line"><a name="l00191"></a><span class="lineno"> 191</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> *<a class="code" href="grpc_8h.html#ae97cac8dcbadf3b71c6ccb49fa938d8a">grpc_channel_create_registered_call</a>(</div><div class="line"><a name="l00192"></a><span class="lineno"> 192</span>&#160; <a class="code" href="grpc__types_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc_channel</a> *channel, <a class="code" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> *parent_call, uint32_t propagation_mask,</div><div class="line"><a name="l00193"></a><span class="lineno"> 193</span>&#160; <a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *completion_queue, <span class="keywordtype">void</span> *registered_call_handle,</div><div class="line"><a name="l00194"></a><span class="lineno"> 194</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> deadline, <span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00195"></a><span class="lineno"> 195</span>&#160;</div><div class="line"><a name="l00207"></a><span class="lineno"> 207</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="grpc__types_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> <a class="code" href="grpc_8h.html#a693db1327a74ba933ad5e2d26e410622">grpc_call_start_batch</a>(<a class="code" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> *call,</div><div class="line"><a name="l00208"></a><span class="lineno"> 208</span>&#160; <span class="keyword">const</span> <a class="code" href="structgrpc__op.html">grpc_op</a> *ops, <span class="keywordtype">size_t</span> nops,</div><div class="line"><a name="l00209"></a><span class="lineno"> 209</span>&#160; <span class="keywordtype">void</span> *tag, <span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00210"></a><span class="lineno"> 210</span>&#160;</div><div class="line"><a name="l00219"></a><span class="lineno"> 219</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">char</span> *<a class="code" href="grpc_8h.html#a96bc6ab4dac03f512a04ea6c19733289">grpc_call_get_peer</a>(<a class="code" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> *call);</div><div class="line"><a name="l00220"></a><span class="lineno"> 220</span>&#160;</div><div class="line"><a name="l00221"></a><span class="lineno"> 221</span>&#160;<span class="keyword">struct </span>census_context;</div><div class="line"><a name="l00222"></a><span class="lineno"> 222</span>&#160;</div><div class="line"><a name="l00223"></a><span class="lineno"> 223</span>&#160;<span class="comment">/* Set census context for a call; Must be called before first call to</span></div><div class="line"><a name="l00224"></a><span class="lineno"> 224</span>&#160;<span class="comment"> grpc_call_start_batch(). */</span></div><div class="line"><a name="l00225"></a><span class="lineno"> 225</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#afacf7bcca0bd15d1ae07fa1ff7b94dce">grpc_census_call_set_context</a>(<a class="code" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> *call,</div><div class="line"><a name="l00226"></a><span class="lineno"> 226</span>&#160; <span class="keyword">struct</span> census_context *context);</div><div class="line"><a name="l00227"></a><span class="lineno"> 227</span>&#160;</div><div class="line"><a name="l00228"></a><span class="lineno"> 228</span>&#160;<span class="comment">/* Retrieve the calls current census context. */</span></div><div class="line"><a name="l00229"></a><span class="lineno"> 229</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keyword">struct </span>census_context *<a class="code" href="grpc_8h.html#aad6d8b3df48a43605558f86f1ad5c4fd">grpc_census_call_get_context</a>(<a class="code" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> *call);</div><div class="line"><a name="l00230"></a><span class="lineno"> 230</span>&#160;</div><div class="line"><a name="l00233"></a><span class="lineno"> 233</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">char</span> *<a class="code" href="grpc_8h.html#aaa25111c739e1c01ae2d195a23079afd">grpc_channel_get_target</a>(<a class="code" href="grpc__types_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc_channel</a> *channel);</div><div class="line"><a name="l00234"></a><span class="lineno"> 234</span>&#160;</div><div class="line"><a name="l00240"></a><span class="lineno"> 240</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="grpc__types_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc_channel</a> *<a class="code" href="grpc_8h.html#af41ff1c02a6c4bcf59d6b38daa95d5e4">grpc_insecure_channel_create</a>(</div><div class="line"><a name="l00241"></a><span class="lineno"> 241</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *target, <span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args, <span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00242"></a><span class="lineno"> 242</span>&#160;</div><div class="line"><a name="l00244"></a><span class="lineno"> 244</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="grpc__types_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc_channel</a> *<a class="code" href="grpc_8h.html#ab70a06437661ce737e0c4823cbbd73f3">grpc_lame_client_channel_create</a>(</div><div class="line"><a name="l00245"></a><span class="lineno"> 245</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *target, <a class="code" href="grpc_2impl_2codegen_2status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> error_code, <span class="keyword">const</span> <span class="keywordtype">char</span> *error_message);</div><div class="line"><a name="l00246"></a><span class="lineno"> 246</span>&#160;</div><div class="line"><a name="l00248"></a><span class="lineno"> 248</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a3af54515116727e18116883e64ee031e">grpc_channel_destroy</a>(<a class="code" href="grpc__types_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc_channel</a> *channel);</div><div class="line"><a name="l00249"></a><span class="lineno"> 249</span>&#160;</div><div class="line"><a name="l00250"></a><span class="lineno"> 250</span>&#160;<span class="comment">/* Error handling for grpc_call</span></div><div class="line"><a name="l00251"></a><span class="lineno"> 251</span>&#160;<span class="comment"> Most grpc_call functions return a grpc_error. If the error is not GRPC_OK</span></div><div class="line"><a name="l00252"></a><span class="lineno"> 252</span>&#160;<span class="comment"> then the operation failed due to some unsatisfied precondition.</span></div><div class="line"><a name="l00253"></a><span class="lineno"> 253</span>&#160;<span class="comment"> If a grpc_call fails, it&#39;s guaranteed that no change to the call state</span></div><div class="line"><a name="l00254"></a><span class="lineno"> 254</span>&#160;<span class="comment"> has been made. */</span></div><div class="line"><a name="l00255"></a><span class="lineno"> 255</span>&#160;</div><div class="line"><a name="l00261"></a><span class="lineno"> 261</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="grpc__types_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> <a class="code" href="grpc_8h.html#ada3c794f1c02477b0d71b12026dd0333">grpc_call_cancel</a>(<a class="code" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> *call, <span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00262"></a><span class="lineno"> 262</span>&#160;</div><div class="line"><a name="l00269"></a><span class="lineno"> 269</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="grpc__types_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> <a class="code" href="grpc_8h.html#a5c09d334ae49404386cc0b13559dbb4d">grpc_call_cancel_with_status</a>(<a class="code" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> *call,</div><div class="line"><a name="l00270"></a><span class="lineno"> 270</span>&#160; <a class="code" href="grpc_2impl_2codegen_2status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a> status,</div><div class="line"><a name="l00271"></a><span class="lineno"> 271</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *description,</div><div class="line"><a name="l00272"></a><span class="lineno"> 272</span>&#160; <span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00273"></a><span class="lineno"> 273</span>&#160;</div><div class="line"><a name="l00276"></a><span class="lineno"> 276</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a9100ad0aaa8125219bd7f80527de6753">grpc_call_destroy</a>(<a class="code" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> *call);</div><div class="line"><a name="l00277"></a><span class="lineno"> 277</span>&#160;</div><div class="line"><a name="l00286"></a><span class="lineno"> 286</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="grpc__types_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> <a class="code" href="grpc_8h.html#ad8472547ac3173e746b1e7980c1208b5">grpc_server_request_call</a>(</div><div class="line"><a name="l00287"></a><span class="lineno"> 287</span>&#160; <a class="code" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a> *server, <a class="code" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> **call, <a class="code" href="structgrpc__call__details.html">grpc_call_details</a> *details,</div><div class="line"><a name="l00288"></a><span class="lineno"> 288</span>&#160; <a class="code" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *request_metadata,</div><div class="line"><a name="l00289"></a><span class="lineno"> 289</span>&#160; <a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *cq_bound_to_call,</div><div class="line"><a name="l00290"></a><span class="lineno"> 290</span>&#160; <a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *cq_for_notification, <span class="keywordtype">void</span> *tag_new);</div><div class="line"><a name="l00291"></a><span class="lineno"> 291</span>&#160;</div><div class="line"><a name="l00293"></a><span class="lineno"><a class="line" href="grpc_8h.html#aab04022748000f50c2590230f985acbc"> 293</a></span>&#160;<span class="keyword">typedef</span> <span class="keyword">enum</span> {</div><div class="line"><a name="l00295"></a><span class="lineno"><a class="line" href="grpc_8h.html#aab04022748000f50c2590230f985acbca366bf1a7d2e4cafb3a606436876a1555"> 295</a></span>&#160; <a class="code" href="grpc_8h.html#aab04022748000f50c2590230f985acbca366bf1a7d2e4cafb3a606436876a1555">GRPC_SRM_PAYLOAD_NONE</a>,</div><div class="line"><a name="l00297"></a><span class="lineno"><a class="line" href="grpc_8h.html#aab04022748000f50c2590230f985acbcaf954872e80a453fe2fd41c81c3a2b7cf"> 297</a></span>&#160; <a class="code" href="grpc_8h.html#aab04022748000f50c2590230f985acbcaf954872e80a453fe2fd41c81c3a2b7cf">GRPC_SRM_PAYLOAD_READ_INITIAL_BYTE_BUFFER</a></div><div class="line"><a name="l00298"></a><span class="lineno"> 298</span>&#160;} <a class="code" href="grpc_8h.html#aab04022748000f50c2590230f985acbc">grpc_server_register_method_payload_handling</a>;</div><div class="line"><a name="l00299"></a><span class="lineno"> 299</span>&#160;</div><div class="line"><a name="l00307"></a><span class="lineno"> 307</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> *<a class="code" href="grpc_8h.html#afdc7d1e04d9fa62641aeccfc732ea0bc">grpc_server_register_method</a>(</div><div class="line"><a name="l00308"></a><span class="lineno"> 308</span>&#160; <a class="code" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a> *server, <span class="keyword">const</span> <span class="keywordtype">char</span> *method, <span class="keyword">const</span> <span class="keywordtype">char</span> *host,</div><div class="line"><a name="l00309"></a><span class="lineno"> 309</span>&#160; grpc_server_register_method_payload_handling payload_handling,</div><div class="line"><a name="l00310"></a><span class="lineno"> 310</span>&#160; uint32_t flags);</div><div class="line"><a name="l00311"></a><span class="lineno"> 311</span>&#160;</div><div class="line"><a name="l00315"></a><span class="lineno"> 315</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="grpc__types_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> <a class="code" href="grpc_8h.html#a0946b5fdc9c1d55de6f62e7a9335de25">grpc_server_request_registered_call</a>(</div><div class="line"><a name="l00316"></a><span class="lineno"> 316</span>&#160; <a class="code" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a> *server, <span class="keywordtype">void</span> *registered_method, <a class="code" href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a> **call,</div><div class="line"><a name="l00317"></a><span class="lineno"> 317</span>&#160; <a class="code" href="structgpr__timespec.html">gpr_timespec</a> *deadline, <a class="code" href="structgrpc__metadata__array.html">grpc_metadata_array</a> *request_metadata,</div><div class="line"><a name="l00318"></a><span class="lineno"> 318</span>&#160; <a class="code" href="structgrpc__byte__buffer.html">grpc_byte_buffer</a> **optional_payload,</div><div class="line"><a name="l00319"></a><span class="lineno"> 319</span>&#160; <a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *cq_bound_to_call,</div><div class="line"><a name="l00320"></a><span class="lineno"> 320</span>&#160; <a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *cq_for_notification, <span class="keywordtype">void</span> *tag_new);</div><div class="line"><a name="l00321"></a><span class="lineno"> 321</span>&#160;</div><div class="line"><a name="l00326"></a><span class="lineno"> 326</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <a class="code" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a> *<a class="code" href="grpc_8h.html#ab39d2a2fa68e430fec31facdfaca59ec">grpc_server_create</a>(<span class="keyword">const</span> <a class="code" href="structgrpc__channel__args.html">grpc_channel_args</a> *args,</div><div class="line"><a name="l00327"></a><span class="lineno"> 327</span>&#160; <span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00328"></a><span class="lineno"> 328</span>&#160;</div><div class="line"><a name="l00333"></a><span class="lineno"> 333</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a098116a78dbf2f635a9934be014d2bd8">grpc_server_register_completion_queue</a>(<a class="code" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a> *server,</div><div class="line"><a name="l00334"></a><span class="lineno"> 334</span>&#160; <a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *cq,</div><div class="line"><a name="l00335"></a><span class="lineno"> 335</span>&#160; <span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00336"></a><span class="lineno"> 336</span>&#160;</div><div class="line"><a name="l00343"></a><span class="lineno"> 343</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a8be1e6025540b47bfdbbf0ae059ec65d">grpc_server_register_non_listening_completion_queue</a>(</div><div class="line"><a name="l00344"></a><span class="lineno"> 344</span>&#160; <a class="code" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a> *server, <a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *q, <span class="keywordtype">void</span> *reserved);</div><div class="line"><a name="l00345"></a><span class="lineno"> 345</span>&#160;</div><div class="line"><a name="l00349"></a><span class="lineno"> 349</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">int</span> <a class="code" href="grpc_8h.html#a5ca4074294f4acbc5cf8c16208a871fc">grpc_server_add_insecure_http2_port</a>(<a class="code" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a> *server,</div><div class="line"><a name="l00350"></a><span class="lineno"> 350</span>&#160; <span class="keyword">const</span> <span class="keywordtype">char</span> *addr);</div><div class="line"><a name="l00351"></a><span class="lineno"> 351</span>&#160;</div><div class="line"><a name="l00353"></a><span class="lineno"> 353</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#ab2213d7fae4c33c47c824266f268859c">grpc_server_start</a>(<a class="code" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a> *server);</div><div class="line"><a name="l00354"></a><span class="lineno"> 354</span>&#160;</div><div class="line"><a name="l00362"></a><span class="lineno"> 362</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a5950aea48195923a1f4f585b1ecb6ba0">grpc_server_shutdown_and_notify</a>(<a class="code" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a> *server,</div><div class="line"><a name="l00363"></a><span class="lineno"> 363</span>&#160; <a class="code" href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a> *cq,</div><div class="line"><a name="l00364"></a><span class="lineno"> 364</span>&#160; <span class="keywordtype">void</span> *tag);</div><div class="line"><a name="l00365"></a><span class="lineno"> 365</span>&#160;</div><div class="line"><a name="l00368"></a><span class="lineno"> 368</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#adedae229ffe970c9e4da9595319e0fcb">grpc_server_cancel_all_calls</a>(<a class="code" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a> *server);</div><div class="line"><a name="l00369"></a><span class="lineno"> 369</span>&#160;</div><div class="line"><a name="l00374"></a><span class="lineno"> 374</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">void</span> <a class="code" href="grpc_8h.html#a9d4171777584a2ff3380328a6b463a24">grpc_server_destroy</a>(<a class="code" href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a> *server);</div><div class="line"><a name="l00375"></a><span class="lineno"> 375</span>&#160;</div><div class="line"><a name="l00384"></a><span class="lineno"> 384</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">int</span> <a class="code" href="grpc_8h.html#a0bcbc8d69b256843facb8339d812ae2e">grpc_tracer_set_enabled</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *name, <span class="keywordtype">int</span> enabled);</div><div class="line"><a name="l00385"></a><span class="lineno"> 385</span>&#160;</div><div class="line"><a name="l00387"></a><span class="lineno"> 387</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">int</span> <a class="code" href="grpc_8h.html#a3ba0edb8f80de7c673ab4be7d2dffa6f">grpc_header_key_is_legal</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *key, <span class="keywordtype">size_t</span> length);</div><div class="line"><a name="l00388"></a><span class="lineno"> 388</span>&#160;</div><div class="line"><a name="l00391"></a><span class="lineno"> 391</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">int</span> <a class="code" href="grpc_8h.html#a14002d9a653ef08fa405cf6ecf0272d6">grpc_header_nonbin_value_is_legal</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *value, <span class="keywordtype">size_t</span> length);</div><div class="line"><a name="l00392"></a><span class="lineno"> 392</span>&#160;</div><div class="line"><a name="l00394"></a><span class="lineno"> 394</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keywordtype">int</span> <a class="code" href="grpc_8h.html#aac9f9f301b380a758efcd3bfb6e166ac">grpc_is_binary_header</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *key, <span class="keywordtype">size_t</span> length);</div><div class="line"><a name="l00395"></a><span class="lineno"> 395</span>&#160;</div><div class="line"><a name="l00397"></a><span class="lineno"> 397</span>&#160;<a class="code" href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a> <span class="keyword">const</span> <span class="keywordtype">char</span> *<a class="code" href="grpc_8h.html#aff94033db2c0a4c2486f8551399b17cd">grpc_call_error_to_string</a>(<a class="code" href="grpc__types_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a> error);</div><div class="line"><a name="l00398"></a><span class="lineno"> 398</span>&#160;</div><div class="line"><a name="l00399"></a><span class="lineno"> 399</span>&#160;<span class="preprocessor">#ifdef __cplusplus</span></div><div class="line"><a name="l00400"></a><span class="lineno"> 400</span>&#160;}</div><div class="line"><a name="l00401"></a><span class="lineno"> 401</span>&#160;<span class="preprocessor">#endif</span></div><div class="line"><a name="l00402"></a><span class="lineno"> 402</span>&#160;</div><div class="line"><a name="l00403"></a><span class="lineno"> 403</span>&#160;<span class="preprocessor">#endif </span><span class="comment">/* GRPC_GRPC_H */</span><span class="preprocessor"></span></div><div class="ttc" id="grpc__types_8h_html_a122f8f4f0a585396d993d9b55848f222"><div class="ttname"><a href="grpc__types_8h.html#a122f8f4f0a585396d993d9b55848f222">grpc_call</a></div><div class="ttdeci">struct grpc_call grpc_call</div><div class="ttdoc">A Call represents an RPC. </div><div class="ttdef"><b>Definition:</b> grpc_types.h:62</div></div>
  93. <div class="ttc" id="grpc_8h_html_a5c09d334ae49404386cc0b13559dbb4d"><div class="ttname"><a href="grpc_8h.html#a5c09d334ae49404386cc0b13559dbb4d">grpc_call_cancel_with_status</a></div><div class="ttdeci">GRPCAPI grpc_call_error grpc_call_cancel_with_status(grpc_call *call, grpc_status_code status, const char *description, void *reserved)</div><div class="ttdoc">Called by clients to cancel an RPC on the server. </div></div>
  94. <div class="ttc" id="grpc_8h_html_a5950aea48195923a1f4f585b1ecb6ba0"><div class="ttname"><a href="grpc_8h.html#a5950aea48195923a1f4f585b1ecb6ba0">grpc_server_shutdown_and_notify</a></div><div class="ttdeci">GRPCAPI void grpc_server_shutdown_and_notify(grpc_server *server, grpc_completion_queue *cq, void *tag)</div><div class="ttdoc">Begin shutting down a server. </div></div>
  95. <div class="ttc" id="grpc_2impl_2codegen_2status_8h_html_a35ab2a68917eb836de84cb23253108eb"><div class="ttname"><a href="grpc_2impl_2codegen_2status_8h.html#a35ab2a68917eb836de84cb23253108eb">grpc_status_code</a></div><div class="ttdeci">grpc_status_code</div><div class="ttdef"><b>Definition:</b> status.h:41</div></div>
  96. <div class="ttc" id="grpc_8h_html_ab43d55077bcbeb324044d3dcd26a5c80"><div class="ttname"><a href="grpc_8h.html#ab43d55077bcbeb324044d3dcd26a5c80">grpc_completion_queue_next</a></div><div class="ttdeci">GRPCAPI grpc_event grpc_completion_queue_next(grpc_completion_queue *cq, gpr_timespec deadline, void *reserved)</div><div class="ttdoc">Blocks until an event is available, the completion queue is being shut down, or deadline is reached...</div></div>
  97. <div class="ttc" id="grpc_8h_html_a14002d9a653ef08fa405cf6ecf0272d6"><div class="ttname"><a href="grpc_8h.html#a14002d9a653ef08fa405cf6ecf0272d6">grpc_header_nonbin_value_is_legal</a></div><div class="ttdeci">GRPCAPI int grpc_header_nonbin_value_is_legal(const char *value, size_t length)</div><div class="ttdoc">Check whether a non-binary metadata value is legal (will be accepted by core) </div></div>
  98. <div class="ttc" id="structgrpc__channel__args_html"><div class="ttname"><a href="structgrpc__channel__args.html">grpc_channel_args</a></div><div class="ttdoc">An array of arguments that can be passed around. </div><div class="ttdef"><b>Definition:</b> grpc_types.h:113</div></div>
  99. <div class="ttc" id="grpc_8h_html_aab04022748000f50c2590230f985acbcaf954872e80a453fe2fd41c81c3a2b7cf"><div class="ttname"><a href="grpc_8h.html#aab04022748000f50c2590230f985acbcaf954872e80a453fe2fd41c81c3a2b7cf">GRPC_SRM_PAYLOAD_READ_INITIAL_BYTE_BUFFER</a></div><div class="ttdoc">Read the initial payload as a byte buffer. </div><div class="ttdef"><b>Definition:</b> grpc.h:297</div></div>
  100. <div class="ttc" id="grpc__types_8h_html_a432bfa6b9f6603643cdf9de8804c254e"><div class="ttname"><a href="grpc__types_8h.html#a432bfa6b9f6603643cdf9de8804c254e">grpc_channel</a></div><div class="ttdeci">struct grpc_channel grpc_channel</div><div class="ttdoc">The Channel interface allows creation of Call objects. </div><div class="ttdef"><b>Definition:</b> grpc_types.h:54</div></div>
  101. <div class="ttc" id="grpc_8h_html_aab04022748000f50c2590230f985acbc"><div class="ttname"><a href="grpc_8h.html#aab04022748000f50c2590230f985acbc">grpc_server_register_method_payload_handling</a></div><div class="ttdeci">grpc_server_register_method_payload_handling</div><div class="ttdoc">How to handle payloads for a registered method. </div><div class="ttdef"><b>Definition:</b> grpc.h:293</div></div>
  102. <div class="ttc" id="propagation__bits_8h_html"><div class="ttname"><a href="propagation__bits_8h.html">propagation_bits.h</a></div></div>
  103. <div class="ttc" id="grpc_8h_html_a098116a78dbf2f635a9934be014d2bd8"><div class="ttname"><a href="grpc_8h.html#a098116a78dbf2f635a9934be014d2bd8">grpc_server_register_completion_queue</a></div><div class="ttdeci">GRPCAPI void grpc_server_register_completion_queue(grpc_server *server, grpc_completion_queue *cq, void *reserved)</div><div class="ttdoc">Register a completion queue with the server. </div></div>
  104. <div class="ttc" id="grpc_8h_html_a8bf40c680565d2d3b29b85e8a9e661f3"><div class="ttname"><a href="grpc_8h.html#a8bf40c680565d2d3b29b85e8a9e661f3">grpc_version_string</a></div><div class="ttdeci">GRPCAPI const char * grpc_version_string(void)</div><div class="ttdoc">Return a string representing the current version of grpc. </div></div>
  105. <div class="ttc" id="structgrpc__event_html"><div class="ttname"><a href="structgrpc__event.html">grpc_event</a></div><div class="ttdoc">The result of an operation. </div><div class="ttdef"><b>Definition:</b> grpc_types.h:258</div></div>
  106. <div class="ttc" id="grpc_8h_html_acad1b47029ebf10f80e0db9423401c87"><div class="ttname"><a href="grpc_8h.html#acad1b47029ebf10f80e0db9423401c87">grpc_channel_ping</a></div><div class="ttdeci">GRPCAPI void grpc_channel_ping(grpc_channel *channel, grpc_completion_queue *cq, void *tag, void *reserved)</div><div class="ttdoc">Ping the channels peer (load balanced channels will select one sub-channel to ping); if the channel i...</div></div>
  107. <div class="ttc" id="grpc_8h_html_a44294a352d5e6c2d23a213668e2a11cb"><div class="ttname"><a href="grpc_8h.html#a44294a352d5e6c2d23a213668e2a11cb">grpc_alarm_destroy</a></div><div class="ttdeci">GRPCAPI void grpc_alarm_destroy(grpc_alarm *alarm)</div><div class="ttdoc">Destroy the given completion queue alarm, cancelling it in the process. </div></div>
  108. <div class="ttc" id="grpc_8h_html_ada3c794f1c02477b0d71b12026dd0333"><div class="ttname"><a href="grpc_8h.html#ada3c794f1c02477b0d71b12026dd0333">grpc_call_cancel</a></div><div class="ttdeci">GRPCAPI grpc_call_error grpc_call_cancel(grpc_call *call, void *reserved)</div><div class="ttdoc">Called by clients to cancel an RPC on the server. </div></div>
  109. <div class="ttc" id="grpc_8h_html_ad18a001bb19d54c4355875062777d21f"><div class="ttname"><a href="grpc_8h.html#ad18a001bb19d54c4355875062777d21f">grpc_call_details_destroy</a></div><div class="ttdeci">GRPCAPI void grpc_call_details_destroy(grpc_call_details *details)</div></div>
  110. <div class="ttc" id="grpc_8h_html_ab2213d7fae4c33c47c824266f268859c"><div class="ttname"><a href="grpc_8h.html#ab2213d7fae4c33c47c824266f268859c">grpc_server_start</a></div><div class="ttdeci">GRPCAPI void grpc_server_start(grpc_server *server)</div><div class="ttdoc">Start a server - tells all listeners to start listening. </div></div>
  111. <div class="ttc" id="grpc_8h_html_aaaf4d5c77eea32e58481b81d07561ba3"><div class="ttname"><a href="grpc_8h.html#aaaf4d5c77eea32e58481b81d07561ba3">grpc_alarm_cancel</a></div><div class="ttdeci">GRPCAPI void grpc_alarm_cancel(grpc_alarm *alarm)</div><div class="ttdoc">Cancel a completion queue alarm. </div></div>
  112. <div class="ttc" id="grpc__types_8h_html_a2bbbaad8f7a806f6c834b68c5dd916d8"><div class="ttname"><a href="grpc__types_8h.html#a2bbbaad8f7a806f6c834b68c5dd916d8">grpc_server</a></div><div class="ttdeci">struct grpc_server grpc_server</div><div class="ttdoc">A server listens to some port and responds to request calls. </div><div class="ttdef"><b>Definition:</b> grpc_types.h:57</div></div>
  113. <div class="ttc" id="grpc_8h_html_a8be1e6025540b47bfdbbf0ae059ec65d"><div class="ttname"><a href="grpc_8h.html#a8be1e6025540b47bfdbbf0ae059ec65d">grpc_server_register_non_listening_completion_queue</a></div><div class="ttdeci">GRPCAPI void grpc_server_register_non_listening_completion_queue(grpc_server *server, grpc_completion_queue *q, void *reserved)</div><div class="ttdoc">Register a non-listening completion queue with the server. </div></div>
  114. <div class="ttc" id="grpc__types_8h_html"><div class="ttname"><a href="grpc__types_8h.html">grpc_types.h</a></div></div>
  115. <div class="ttc" id="structgrpc__call__details_html"><div class="ttname"><a href="structgrpc__call__details.html">grpc_call_details</a></div><div class="ttdef"><b>Definition:</b> grpc_types.h:275</div></div>
  116. <div class="ttc" id="structgrpc__byte__buffer_html"><div class="ttname"><a href="structgrpc__byte__buffer.html">grpc_byte_buffer</a></div><div class="ttdef"><b>Definition:</b> byte_buffer.h:49</div></div>
  117. <div class="ttc" id="grpc_8h_html_aab04022748000f50c2590230f985acbca366bf1a7d2e4cafb3a606436876a1555"><div class="ttname"><a href="grpc_8h.html#aab04022748000f50c2590230f985acbca366bf1a7d2e4cafb3a606436876a1555">GRPC_SRM_PAYLOAD_NONE</a></div><div class="ttdoc">Don&amp;#39;t try to read the payload. </div><div class="ttdef"><b>Definition:</b> grpc.h:295</div></div>
  118. <div class="ttc" id="grpc_8h_html_ad8472547ac3173e746b1e7980c1208b5"><div class="ttname"><a href="grpc_8h.html#ad8472547ac3173e746b1e7980c1208b5">grpc_server_request_call</a></div><div class="ttdeci">GRPCAPI grpc_call_error grpc_server_request_call(grpc_server *server, grpc_call **call, grpc_call_details *details, grpc_metadata_array *request_metadata, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag_new)</div><div class="ttdoc">Request notification of a new call. </div></div>
  119. <div class="ttc" id="grpc_8h_html_a96bc6ab4dac03f512a04ea6c19733289"><div class="ttname"><a href="grpc_8h.html#a96bc6ab4dac03f512a04ea6c19733289">grpc_call_get_peer</a></div><div class="ttdeci">GRPCAPI char * grpc_call_get_peer(grpc_call *call)</div><div class="ttdoc">Returns a newly allocated string representing the endpoint to which this call is communicating with...</div></div>
  120. <div class="ttc" id="structgrpc__metadata__array_html"><div class="ttname"><a href="structgrpc__metadata__array.html">grpc_metadata_array</a></div><div class="ttdef"><b>Definition:</b> grpc_types.h:269</div></div>
  121. <div class="ttc" id="grpc_8h_html_adedae229ffe970c9e4da9595319e0fcb"><div class="ttname"><a href="grpc_8h.html#adedae229ffe970c9e4da9595319e0fcb">grpc_server_cancel_all_calls</a></div><div class="ttdeci">GRPCAPI void grpc_server_cancel_all_calls(grpc_server *server)</div><div class="ttdoc">Cancel all in-progress calls. </div></div>
  122. <div class="ttc" id="grpc_8h_html_a783c4ef542c9899f3c2e02c2a956fd6d"><div class="ttname"><a href="grpc_8h.html#a783c4ef542c9899f3c2e02c2a956fd6d">grpc_channel_check_connectivity_state</a></div><div class="ttdeci">GRPCAPI grpc_connectivity_state grpc_channel_check_connectivity_state(grpc_channel *channel, int try_to_connect)</div><div class="ttdoc">Check the connectivity state of a channel. </div></div>
  123. <div class="ttc" id="grpc_8h_html_aac9f9f301b380a758efcd3bfb6e166ac"><div class="ttname"><a href="grpc_8h.html#aac9f9f301b380a758efcd3bfb6e166ac">grpc_is_binary_header</a></div><div class="ttdeci">GRPCAPI int grpc_is_binary_header(const char *key, size_t length)</div><div class="ttdoc">Check whether a metadata key corresponds to a binary value. </div></div>
  124. <div class="ttc" id="grpc__types_8h_html_a0d5a8bdd6d53d209cacea4b6fa5d785b"><div class="ttname"><a href="grpc__types_8h.html#a0d5a8bdd6d53d209cacea4b6fa5d785b">grpc_call_error</a></div><div class="ttdeci">grpc_call_error</div><div class="ttdoc">Result of a grpc call. </div><div class="ttdef"><b>Definition:</b> grpc_types.h:174</div></div>
  125. <div class="ttc" id="port__platform_8h_html_a2865c3b28ea7db75be4c725adb1edc7d"><div class="ttname"><a href="port__platform_8h.html#a2865c3b28ea7db75be4c725adb1edc7d">GRPCAPI</a></div><div class="ttdeci">#define GRPCAPI</div><div class="ttdef"><b>Definition:</b> port_platform.h:467</div></div>
  126. <div class="ttc" id="grpc_8h_html_ae1dc1e6cbb21d67a62db56ab8ef8c787"><div class="ttname"><a href="grpc_8h.html#ae1dc1e6cbb21d67a62db56ab8ef8c787">grpc_completion_queue_create</a></div><div class="ttdeci">GRPCAPI grpc_completion_queue * grpc_completion_queue_create(void *reserved)</div><div class="ttdoc">Create a completion queue. </div></div>
  127. <div class="ttc" id="grpc_8h_html_aaa25111c739e1c01ae2d195a23079afd"><div class="ttname"><a href="grpc_8h.html#aaa25111c739e1c01ae2d195a23079afd">grpc_channel_get_target</a></div><div class="ttdeci">GRPCAPI char * grpc_channel_get_target(grpc_channel *channel)</div><div class="ttdoc">Return a newly allocated string representing the target a channel was created for. </div></div>
  128. <div class="ttc" id="connectivity__state_8h_html_a065b65f5cdd062a67d82e2b6bcf68cf2"><div class="ttname"><a href="connectivity__state_8h.html#a065b65f5cdd062a67d82e2b6bcf68cf2">grpc_connectivity_state</a></div><div class="ttdeci">grpc_connectivity_state</div><div class="ttdoc">Connectivity state of a channel. </div><div class="ttdef"><b>Definition:</b> connectivity_state.h:42</div></div>
  129. <div class="ttc" id="grpc_8h_html_afd22cfbc549db65ee265335c3264a57b"><div class="ttname"><a href="grpc_8h.html#afd22cfbc549db65ee265335c3264a57b">grpc_call_details_init</a></div><div class="ttdeci">GRPCAPI void grpc_call_details_init(grpc_call_details *details)</div></div>
  130. <div class="ttc" id="grpc_8h_html_ab70a06437661ce737e0c4823cbbd73f3"><div class="ttname"><a href="grpc_8h.html#ab70a06437661ce737e0c4823cbbd73f3">grpc_lame_client_channel_create</a></div><div class="ttdeci">GRPCAPI grpc_channel * grpc_lame_client_channel_create(const char *target, grpc_status_code error_code, const char *error_message)</div><div class="ttdoc">Create a lame client: this client fails every operation attempted on it. </div></div>
  131. <div class="ttc" id="grpc_8h_html_afdc7d1e04d9fa62641aeccfc732ea0bc"><div class="ttname"><a href="grpc_8h.html#afdc7d1e04d9fa62641aeccfc732ea0bc">grpc_server_register_method</a></div><div class="ttdeci">GRPCAPI void * grpc_server_register_method(grpc_server *server, const char *method, const char *host, grpc_server_register_method_payload_handling payload_handling, uint32_t flags)</div><div class="ttdoc">Registers a method in the server. </div></div>
  132. <div class="ttc" id="grpc_8h_html_ae97cac8dcbadf3b71c6ccb49fa938d8a"><div class="ttname"><a href="grpc_8h.html#ae97cac8dcbadf3b71c6ccb49fa938d8a">grpc_channel_create_registered_call</a></div><div class="ttdeci">GRPCAPI grpc_call * grpc_channel_create_registered_call(grpc_channel *channel, grpc_call *parent_call, uint32_t propagation_mask, grpc_completion_queue *completion_queue, void *registered_call_handle, gpr_timespec deadline, void *reserved)</div><div class="ttdoc">Create a call given a handle returned from grpc_channel_register_call. </div></div>
  133. <div class="ttc" id="grpc_8h_html_a9d4171777584a2ff3380328a6b463a24"><div class="ttname"><a href="grpc_8h.html#a9d4171777584a2ff3380328a6b463a24">grpc_server_destroy</a></div><div class="ttdeci">GRPCAPI void grpc_server_destroy(grpc_server *server)</div><div class="ttdoc">Destroy a server. </div></div>
  134. <div class="ttc" id="grpc_8h_html_a0c8d5a1d0d3b3e862c3a71fbb78e9b50"><div class="ttname"><a href="grpc_8h.html#a0c8d5a1d0d3b3e862c3a71fbb78e9b50">grpc_metadata_array_init</a></div><div class="ttdeci">GRPCAPI void grpc_metadata_array_init(grpc_metadata_array *array)</div></div>
  135. <div class="ttc" id="grpc_8h_html_aad6d8b3df48a43605558f86f1ad5c4fd"><div class="ttname"><a href="grpc_8h.html#aad6d8b3df48a43605558f86f1ad5c4fd">grpc_census_call_get_context</a></div><div class="ttdeci">GRPCAPI struct census_context * grpc_census_call_get_context(grpc_call *call)</div></div>
  136. <div class="ttc" id="grpc_8h_html_af77734d6350953db5d730f7213aac639"><div class="ttname"><a href="grpc_8h.html#af77734d6350953db5d730f7213aac639">grpc_completion_queue_destroy</a></div><div class="ttdeci">GRPCAPI void grpc_completion_queue_destroy(grpc_completion_queue *cq)</div><div class="ttdoc">Destroy a completion queue. </div></div>
  137. <div class="ttc" id="grpc_8h_html_a3af54515116727e18116883e64ee031e"><div class="ttname"><a href="grpc_8h.html#a3af54515116727e18116883e64ee031e">grpc_channel_destroy</a></div><div class="ttdeci">GRPCAPI void grpc_channel_destroy(grpc_channel *channel)</div><div class="ttdoc">Close and destroy a grpc channel. </div></div>
  138. <div class="ttc" id="structgrpc__op_html"><div class="ttname"><a href="structgrpc__op.html">grpc_op</a></div><div class="ttdoc">Operation data: one field for each op type (except SEND_CLOSE_FROM_CLIENT which has no arguments) ...</div><div class="ttdef"><b>Definition:</b> grpc_types.h:332</div></div>
  139. <div class="ttc" id="grpc_2byte__buffer_8h_html"><div class="ttname"><a href="grpc_2byte__buffer_8h.html">byte_buffer.h</a></div></div>
  140. <div class="ttc" id="grpc_8h_html_a5ca4074294f4acbc5cf8c16208a871fc"><div class="ttname"><a href="grpc_8h.html#a5ca4074294f4acbc5cf8c16208a871fc">grpc_server_add_insecure_http2_port</a></div><div class="ttdeci">GRPCAPI int grpc_server_add_insecure_http2_port(grpc_server *server, const char *addr)</div><div class="ttdoc">Add a HTTP2 over plaintext over tcp listener. </div></div>
  141. <div class="ttc" id="grpc_8h_html_a3e1097e9c970519e357eb556777315ec"><div class="ttname"><a href="grpc_8h.html#a3e1097e9c970519e357eb556777315ec">grpc_completion_queue_shutdown</a></div><div class="ttdeci">GRPCAPI void grpc_completion_queue_shutdown(grpc_completion_queue *cq)</div><div class="ttdoc">Begin destruction of a completion queue. </div></div>
  142. <div class="ttc" id="grpc__types_8h_html_a09ce3d7fa6473ac1cb39692adf257a13"><div class="ttname"><a href="grpc__types_8h.html#a09ce3d7fa6473ac1cb39692adf257a13">grpc_alarm</a></div><div class="ttdeci">struct grpc_alarm grpc_alarm</div><div class="ttdoc">An alarm associated with a completion queue. </div><div class="ttdef"><b>Definition:</b> grpc_types.h:51</div></div>
  143. <div class="ttc" id="grpc_8h_html_a573aed8e200997856a227c7eb798a185"><div class="ttname"><a href="grpc_8h.html#a573aed8e200997856a227c7eb798a185">grpc_init</a></div><div class="ttdeci">GRPCAPI void grpc_init(void)</div><div class="ttdoc">Initialize the grpc library. </div></div>
  144. <div class="ttc" id="grpc_2status_8h_html"><div class="ttname"><a href="grpc_2status_8h.html">status.h</a></div></div>
  145. <div class="ttc" id="grpc_8h_html_a74505bb522ecd43c21cb51651788c621"><div class="ttname"><a href="grpc_8h.html#a74505bb522ecd43c21cb51651788c621">grpc_alarm_create</a></div><div class="ttdeci">GRPCAPI grpc_alarm * grpc_alarm_create(grpc_completion_queue *cq, gpr_timespec deadline, void *tag)</div><div class="ttdoc">Create a completion queue alarm instance associated to cq. </div></div>
  146. <div class="ttc" id="connectivity__state_8h_html"><div class="ttname"><a href="connectivity__state_8h.html">connectivity_state.h</a></div></div>
  147. <div class="ttc" id="grpc_8h_html_a60d82644a7c9d97ada453796b4b2f711"><div class="ttname"><a href="grpc_8h.html#a60d82644a7c9d97ada453796b4b2f711">grpc_metadata_array_destroy</a></div><div class="ttdeci">GRPCAPI void grpc_metadata_array_destroy(grpc_metadata_array *array)</div></div>
  148. <div class="ttc" id="grpc_8h_html_af41ff1c02a6c4bcf59d6b38daa95d5e4"><div class="ttname"><a href="grpc_8h.html#af41ff1c02a6c4bcf59d6b38daa95d5e4">grpc_insecure_channel_create</a></div><div class="ttdeci">GRPCAPI grpc_channel * grpc_insecure_channel_create(const char *target, const grpc_channel_args *args, void *reserved)</div><div class="ttdoc">Create a client channel to &amp;#39;target&amp;#39;. </div></div>
  149. <div class="ttc" id="grpc_8h_html_a693db1327a74ba933ad5e2d26e410622"><div class="ttname"><a href="grpc_8h.html#a693db1327a74ba933ad5e2d26e410622">grpc_call_start_batch</a></div><div class="ttdeci">GRPCAPI grpc_call_error grpc_call_start_batch(grpc_call *call, const grpc_op *ops, size_t nops, void *tag, void *reserved)</div><div class="ttdoc">Start a batch of operations defined in the array ops; when complete, post a completion of type &amp;#39;tag&amp;#39; ...</div></div>
  150. <div class="ttc" id="grpc_8h_html_a35f55253e80714c17f4f3a0657e06f1b"><div class="ttname"><a href="grpc_8h.html#a35f55253e80714c17f4f3a0657e06f1b">grpc_shutdown</a></div><div class="ttdeci">GRPCAPI void grpc_shutdown(void)</div><div class="ttdoc">Shut down the grpc library. </div></div>
  151. <div class="ttc" id="grpc_8h_html_a3ba0edb8f80de7c673ab4be7d2dffa6f"><div class="ttname"><a href="grpc_8h.html#a3ba0edb8f80de7c673ab4be7d2dffa6f">grpc_header_key_is_legal</a></div><div class="ttdeci">GRPCAPI int grpc_header_key_is_legal(const char *key, size_t length)</div><div class="ttdoc">Check whether a metadata key is legal (will be accepted by core) </div></div>
  152. <div class="ttc" id="grpc_8h_html_a568bac9fe4004c1dd790e6569b918d2f"><div class="ttname"><a href="grpc_8h.html#a568bac9fe4004c1dd790e6569b918d2f">grpc_channel_watch_connectivity_state</a></div><div class="ttdeci">GRPCAPI void grpc_channel_watch_connectivity_state(grpc_channel *channel, grpc_connectivity_state last_observed_state, gpr_timespec deadline, grpc_completion_queue *cq, void *tag)</div><div class="ttdoc">Watch for a change in connectivity state. </div></div>
  153. <div class="ttc" id="grpc_8h_html_af09cbd24340547542b6ec3300e973d62"><div class="ttname"><a href="grpc_8h.html#af09cbd24340547542b6ec3300e973d62">grpc_channel_register_call</a></div><div class="ttdeci">GRPCAPI void * grpc_channel_register_call(grpc_channel *channel, const char *method, const char *host, void *reserved)</div><div class="ttdoc">Pre-register a method/host pair on a channel. </div></div>
  154. <div class="ttc" id="grpc_8h_html_ab39d2a2fa68e430fec31facdfaca59ec"><div class="ttname"><a href="grpc_8h.html#ab39d2a2fa68e430fec31facdfaca59ec">grpc_server_create</a></div><div class="ttdeci">GRPCAPI grpc_server * grpc_server_create(const grpc_channel_args *args, void *reserved)</div><div class="ttdoc">Create a server. </div></div>
  155. <div class="ttc" id="grpc_8h_html_a9100ad0aaa8125219bd7f80527de6753"><div class="ttname"><a href="grpc_8h.html#a9100ad0aaa8125219bd7f80527de6753">grpc_call_destroy</a></div><div class="ttdeci">GRPCAPI void grpc_call_destroy(grpc_call *call)</div><div class="ttdoc">Destroy a call. </div></div>
  156. <div class="ttc" id="structgpr__timespec_html"><div class="ttname"><a href="structgpr__timespec.html">gpr_timespec</a></div><div class="ttdef"><b>Definition:</b> time.h:63</div></div>
  157. <div class="ttc" id="grpc_8h_html_a0292bf7a0c794771cd66766dc4b8276c"><div class="ttname"><a href="grpc_8h.html#a0292bf7a0c794771cd66766dc4b8276c">grpc_completion_queue_pluck</a></div><div class="ttdeci">GRPCAPI grpc_event grpc_completion_queue_pluck(grpc_completion_queue *cq, void *tag, gpr_timespec deadline, void *reserved)</div><div class="ttdoc">Blocks until an event with tag &amp;#39;tag&amp;#39; is available, the completion queue is being shutdown or deadline...</div></div>
  158. <div class="ttc" id="grpc_8h_html_afacf7bcca0bd15d1ae07fa1ff7b94dce"><div class="ttname"><a href="grpc_8h.html#afacf7bcca0bd15d1ae07fa1ff7b94dce">grpc_census_call_set_context</a></div><div class="ttdeci">GRPCAPI void grpc_census_call_set_context(grpc_call *call, struct census_context *context)</div></div>
  159. <div class="ttc" id="grpc_8h_html_a0946b5fdc9c1d55de6f62e7a9335de25"><div class="ttname"><a href="grpc_8h.html#a0946b5fdc9c1d55de6f62e7a9335de25">grpc_server_request_registered_call</a></div><div class="ttdeci">GRPCAPI grpc_call_error grpc_server_request_registered_call(grpc_server *server, void *registered_method, grpc_call **call, gpr_timespec *deadline, grpc_metadata_array *request_metadata, grpc_byte_buffer **optional_payload, grpc_completion_queue *cq_bound_to_call, grpc_completion_queue *cq_for_notification, void *tag_new)</div><div class="ttdoc">Request notification of a new pre-registered call. </div></div>
  160. <div class="ttc" id="grpc__types_8h_html_a895faab0e6035445750e43482651ba2f"><div class="ttname"><a href="grpc__types_8h.html#a895faab0e6035445750e43482651ba2f">grpc_completion_queue</a></div><div class="ttdeci">struct grpc_completion_queue grpc_completion_queue</div><div class="ttdoc">Completion Queues enable notification of the completion of asynchronous actions. </div><div class="ttdef"><b>Definition:</b> grpc_types.h:48</div></div>
  161. <div class="ttc" id="grpc_8h_html_a0bcbc8d69b256843facb8339d812ae2e"><div class="ttname"><a href="grpc_8h.html#a0bcbc8d69b256843facb8339d812ae2e">grpc_tracer_set_enabled</a></div><div class="ttdeci">GRPCAPI int grpc_tracer_set_enabled(const char *name, int enabled)</div><div class="ttdoc">Enable or disable a tracer. </div></div>
  162. <div class="ttc" id="grpc_8h_html_afb2c29a4f1805be6903261d6f4cfefd0"><div class="ttname"><a href="grpc_8h.html#afb2c29a4f1805be6903261d6f4cfefd0">grpc_register_plugin</a></div><div class="ttdeci">GRPCAPI void grpc_register_plugin(void(*init)(void), void(*destroy)(void))</div><div class="ttdoc">Registers a plugin to be initialized and destroyed with the library. </div></div>
  163. <div class="ttc" id="grpc_8h_html_a96f66c3534c45671dcaec484d2c97a90"><div class="ttname"><a href="grpc_8h.html#a96f66c3534c45671dcaec484d2c97a90">grpc_channel_create_call</a></div><div class="ttdeci">GRPCAPI grpc_call * grpc_channel_create_call(grpc_channel *channel, grpc_call *parent_call, uint32_t propagation_mask, grpc_completion_queue *completion_queue, const char *method, const char *host, gpr_timespec deadline, void *reserved)</div><div class="ttdoc">Create a call given a grpc_channel, in order to call &amp;#39;method&amp;#39;. </div></div>
  164. <div class="ttc" id="grpc_8h_html_aff94033db2c0a4c2486f8551399b17cd"><div class="ttname"><a href="grpc_8h.html#aff94033db2c0a4c2486f8551399b17cd">grpc_call_error_to_string</a></div><div class="ttdeci">GRPCAPI const char * grpc_call_error_to_string(grpc_call_error error)</div><div class="ttdoc">Convert grpc_call_error values to a string. </div></div>
  165. </div><!-- fragment --></div><!-- contents -->
  166. <!-- start footer part -->
  167. <hr class="footer"/><address class="footer"><small>
  168. Generated on Thu Aug 18 2016 21:34:58 for GRPC C++ by &#160;<a href="http://www.doxygen.org/index.html">
  169. <img class="footer" src="doxygen.png" alt="doxygen"/>
  170. </a> 1.8.11
  171. </small></address>
  172. </body>
  173. </html>