| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247 |
- <!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 C++: grpc::ServerAsyncReaderInterface< W, R > Class Template 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 C++
-  <span id="projectnumber">1.4.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 Page</span></a></li>
- <li><a href="pages.html"><span>Related Pages</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="namespaces.html"><span>Namespaces</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data 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 Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="hierarchy.html"><span>Class Hierarchy</span></a></li>
- <li><a href="functions.html"><span>Data 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"> </span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark"> </span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark"> </span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark"> </span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark"> </span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark"> </span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark"> </span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark"> </span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark"> </span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark"> </span>Friends</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(10)"><span class="SelectionMark"> </span>Macros</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(11)"><span class="SelectionMark"> </span>Groups</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(12)"><span class="SelectionMark"> </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 id="nav-path" class="navpath">
- <ul>
- <li class="navelem"><a class="el" href="namespacegrpc.html">grpc</a></li><li class="navelem"><a class="el" href="classgrpc_1_1_server_async_reader_interface.html">ServerAsyncReaderInterface</a></li> </ul>
- </div>
- </div><!-- top -->
- <div class="header">
- <div class="summary">
- <a href="#pub-methods">Public Member Functions</a> </div>
- <div class="headertitle">
- <div class="title">grpc::ServerAsyncReaderInterface< W, R > Class Template Reference<span class="mlabels"><span class="mlabel">abstract</span></span></div> </div>
- </div><!--header-->
- <div class="contents">
- <p><code>#include <<a class="el" href="impl_2codegen_2async__stream_8h_source.html">async_stream.h</a>></code></p>
- <table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a>
- Public Member Functions</h2></td></tr>
- <tr class="memitem:aad3ce656b43d5a8e2f2ce851514fc647"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader_interface.html#aad3ce656b43d5a8e2f2ce851514fc647">Finish</a> (const W &msg, const <a class="el" href="classgrpc_1_1_status.html">Status</a> &status, void *tag)=0</td></tr>
- <tr class="memdesc:aad3ce656b43d5a8e2f2ce851514fc647"><td class="mdescLeft"> </td><td class="mdescRight">Indicate that the stream is to be finished with a certain status code and also send out <em>msg</em> response to the client. <a href="#aad3ce656b43d5a8e2f2ce851514fc647">More...</a><br/></td></tr>
- <tr class="separator:aad3ce656b43d5a8e2f2ce851514fc647"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a39c4168fd67c1658f8ddbbfc52c095d2"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_reader_interface.html#a39c4168fd67c1658f8ddbbfc52c095d2">FinishWithError</a> (const <a class="el" href="classgrpc_1_1_status.html">Status</a> &status, void *tag)=0</td></tr>
- <tr class="memdesc:a39c4168fd67c1658f8ddbbfc52c095d2"><td class="mdescLeft"> </td><td class="mdescRight">Indicate that the stream is to be finished with a certain non-OK status code. <a href="#a39c4168fd67c1658f8ddbbfc52c095d2">More...</a><br/></td></tr>
- <tr class="separator:a39c4168fd67c1658f8ddbbfc52c095d2"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="inherit_header pub_methods_classgrpc_1_1_server_async_streaming_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_server_async_streaming_interface')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classgrpc_1_1_server_async_streaming_interface.html">grpc::ServerAsyncStreamingInterface</a></td></tr>
- <tr class="memitem:af7c2bc176a6658e86a74a1cacd53d3bc inherit pub_methods_classgrpc_1_1_server_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#af7c2bc176a6658e86a74a1cacd53d3bc">~ServerAsyncStreamingInterface</a> ()</td></tr>
- <tr class="separator:af7c2bc176a6658e86a74a1cacd53d3bc inherit pub_methods_classgrpc_1_1_server_async_streaming_interface"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:ab2d5db2b2ca3032994396543a8bb044c inherit pub_methods_classgrpc_1_1_server_async_streaming_interface"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_server_async_streaming_interface.html#ab2d5db2b2ca3032994396543a8bb044c">SendInitialMetadata</a> (void *tag)=0</td></tr>
- <tr class="memdesc:ab2d5db2b2ca3032994396543a8bb044c inherit pub_methods_classgrpc_1_1_server_async_streaming_interface"><td class="mdescLeft"> </td><td class="mdescRight">Request notification of the sending of initial metadata to the client. <a href="#ab2d5db2b2ca3032994396543a8bb044c">More...</a><br/></td></tr>
- <tr class="separator:ab2d5db2b2ca3032994396543a8bb044c inherit pub_methods_classgrpc_1_1_server_async_streaming_interface"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="inherit_header pub_methods_classgrpc_1_1_async_reader_interface"><td colspan="2" onclick="javascript:toggleInherit('pub_methods_classgrpc_1_1_async_reader_interface')"><img src="closed.png" alt="-"/> Public Member Functions inherited from <a class="el" href="classgrpc_1_1_async_reader_interface.html">grpc::AsyncReaderInterface< R ></a></td></tr>
- <tr class="memitem:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html#ac7845d2df90fb380008aadb7f5f2f379">~AsyncReaderInterface</a> ()</td></tr>
- <tr class="separator:ac7845d2df90fb380008aadb7f5f2f379 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa644cf63c12ae8c9d5fda16a361f8a11 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memItemLeft" align="right" valign="top">virtual void </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11">Read</a> (R *msg, void *tag)=0</td></tr>
- <tr class="memdesc:aa644cf63c12ae8c9d5fda16a361f8a11 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="mdescLeft"> </td><td class="mdescRight">Read a message of type <em>R</em> into <em>msg</em>. <a href="#aa644cf63c12ae8c9d5fda16a361f8a11">More...</a><br/></td></tr>
- <tr class="separator:aa644cf63c12ae8c9d5fda16a361f8a11 inherit pub_methods_classgrpc_1_1_async_reader_interface"><td class="memSeparator" colspan="2"> </td></tr>
- </table>
- <h2 class="groupheader">Member Function Documentation</h2>
- <a class="anchor" id="aad3ce656b43d5a8e2f2ce851514fc647"></a>
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<class W , class R > </div>
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">virtual void <a class="el" href="classgrpc_1_1_server_async_reader_interface.html">grpc::ServerAsyncReaderInterface</a>< W, R >::Finish </td>
- <td>(</td>
- <td class="paramtype">const W & </td>
- <td class="paramname"><em>msg</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const <a class="el" href="classgrpc_1_1_status.html">Status</a> & </td>
- <td class="paramname"><em>status</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">void * </td>
- <td class="paramname"><em>tag</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Indicate that the stream is to be finished with a certain status code and also send out <em>msg</em> response to the client. </p>
- <p>Request notification for when the server has sent the response and the appropriate signals to the client to end the call. Should not be used concurrently with other operations.</p>
- <p>It is appropriate to call this method when:</p>
- <ul>
- <li>all messages from the client have been received (either known implictly, or explicitly because a previous <em><a class="el" href="classgrpc_1_1_async_reader_interface.html#aa644cf63c12ae8c9d5fda16a361f8a11" title="Read a message of type R into msg. ">AsyncReaderInterface::Read</a></em> operation with a non-ok result, e.g., cq->Next(&read_tag, &ok) filled in 'ok' with 'false').</li>
- </ul>
- <p>This operation will end when the server has finished sending out initial metadata (if not sent already), response message, and status, or if some failure occurred when trying to do so.</p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramdir">[in]</td><td class="paramname">tag</td><td>Tag identifying this request. </td></tr>
- <tr><td class="paramdir">[in]</td><td class="paramname">status</td><td>To be sent to the client as the result of this call. </td></tr>
- <tr><td class="paramdir">[in]</td><td class="paramname">msg</td><td>To be sent to the client as the response for this call. </td></tr>
- </table>
- </dd>
- </dl>
- <p>Implemented in <a class="el" href="classgrpc_1_1_server_async_reader.html#a0245b202e3b715f3994b80153c1b9272">grpc::ServerAsyncReader< W, R ></a>.</p>
- </div>
- </div>
- <a class="anchor" id="a39c4168fd67c1658f8ddbbfc52c095d2"></a>
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<class W , class R > </div>
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">virtual void <a class="el" href="classgrpc_1_1_server_async_reader_interface.html">grpc::ServerAsyncReaderInterface</a>< W, R >::FinishWithError </td>
- <td>(</td>
- <td class="paramtype">const <a class="el" href="classgrpc_1_1_status.html">Status</a> & </td>
- <td class="paramname"><em>status</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">void * </td>
- <td class="paramname"><em>tag</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">pure virtual</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Indicate that the stream is to be finished with a certain non-OK status code. </p>
- <p>Request notification for when the server has sent the appropriate signals to the client to end the call. Should not be used concurrently with other operations.</p>
- <p>This call is meant to end the call with some error, and can be called at any point that the server would like to "fail" the call (though note this shouldn't be called concurrently with any other "sending" call, like <em><a class="el" href="classgrpc_1_1_async_writer_interface.html#a40c1091ac5cb5243c874da725ae291b4" title="Request the writing of msg with identifying tag tag. ">AsyncWriterInterface::Write</a></em>).</p>
- <p>This operation will end when the server has finished sending out initial metadata (if not sent already), and status, or if some failure occurred when trying to do so.</p>
- <dl class="params"><dt>Parameters</dt><dd>
- <table class="params">
- <tr><td class="paramdir">[in]</td><td class="paramname">tag</td><td>Tag identifying this request. </td></tr>
- <tr><td class="paramdir">[in]</td><td class="paramname">status</td><td>To be sent to the client as the result of this call.<ul>
- <li>Note: <em>status</em> must have a non-OK code. </li>
- </ul>
- </td></tr>
- </table>
- </dd>
- </dl>
- <p>Implemented in <a class="el" href="classgrpc_1_1_server_async_reader.html#a20ec38517bcca2f0aa3c3a6f635caa2b">grpc::ServerAsyncReader< W, R ></a>.</p>
- </div>
- </div>
- <hr/>The documentation for this class was generated from the following file:<ul>
- <li>include/grpc++/impl/codegen/<a class="el" href="impl_2codegen_2async__stream_8h_source.html">async_stream.h</a></li>
- </ul>
- </div><!-- contents -->
- <!-- start footer part -->
- <hr class="footer"/><address class="footer"><small>
- Generated on Wed Jun 21 2017 14:13:08 for GRPC C++ by  <a href="http://www.doxygen.org/index.html">
- <img class="footer" src="doxygen.png" alt="doxygen"/>
- </a> 1.8.6
- </small></address>
- </body>
- </html>
|