123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335 |
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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.17"/>
- <meta name="viewport" content="width=device-width, initial-scale=1"/>
- <title>GRPC C++: grpc::TemplatedGenericStub< RequestType, ResponseType > 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/searchdata.js"></script>
- <script type="text/javascript" src="search/search.js"></script>
- <link href="doxygen.css" rel="stylesheet" type="text/css" />
- </head>
- <body>
- <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
- <div id="titlearea">
- <table cellspacing="0" cellpadding="0">
- <tbody>
- <tr style="height: 56px;">
- <td id="projectalign" style="padding-left: 0.5em;">
- <div id="projectname">GRPC C++
-  <span id="projectnumber">1.36.1</span>
- </div>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- <!-- end header part -->
- <!-- Generated by Doxygen 1.8.17 -->
- <script type="text/javascript">
- /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
- var searchBox = new SearchBox("searchBox", "search",false,'Search');
- /* @license-end */
- </script>
- <script type="text/javascript" src="menudata.js"></script>
- <script type="text/javascript" src="menu.js"></script>
- <script type="text/javascript">
- /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */
- $(function() {
- initMenu('',true,false,'search.php','Search');
- $(document).ready(function() { init_search(); });
- });
- /* @license-end */</script>
- <div id="main-nav"></div>
- <!-- window showing the filter options -->
- <div id="MSearchSelectWindow"
- onmouseover="return searchBox.OnSearchSelectShow()"
- onmouseout="return searchBox.OnSearchSelectHide()"
- onkeydown="return searchBox.OnSearchSelectKey(event)">
- </div>
- <!-- iframe showing the search results (closed by default) -->
- <div id="MSearchResultsWindow">
- <iframe src="javascript:void(0)" frameborder="0"
- name="MSearchResults" id="MSearchResults">
- </iframe>
- </div>
- <div 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_templated_generic_stub.html">TemplatedGenericStub</a></li> </ul>
- </div>
- </div><!-- top -->
- <div class="header">
- <div class="summary">
- <a href="#nested-classes">Data Structures</a> |
- <a href="#pub-methods">Public Member Functions</a> </div>
- <div class="headertitle">
- <div class="title">grpc::TemplatedGenericStub< RequestType, ResponseType > Class Template Reference<span class="mlabels"><span class="mlabel">final</span></span></div> </div>
- </div><!--header-->
- <div class="contents">
- <p>Generic stubs provide a type-unaware interface to call gRPC methods by name.
- <a href="classgrpc_1_1_templated_generic_stub.html#details">More...</a></p>
- <p><code>#include <<a class="el" href="grpcpp_2generic_2generic__stub_8h_source.html">generic_stub.h</a>></code></p>
- <table class="memberdecls">
- <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
- Data Structures</h2></td></tr>
- <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_templated_generic_stub_1_1experimental__type.html">experimental_type</a></td></tr>
- <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">NOTE: class <a class="el" href="classgrpc_1_1_templated_generic_stub_1_1experimental__type.html" title="NOTE: class experimental_type is not part of the public API of this class TODO(vjpai): Move these con...">experimental_type</a> is not part of the public API of this class TODO(vjpai): Move these contents to the public API of GenericStub when they are no longer experimental. <a href="classgrpc_1_1_templated_generic_stub_1_1experimental__type.html#details">More...</a><br /></td></tr>
- <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
- </table><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:ac304d65b478ea61991aa3e65430315cb"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_templated_generic_stub.html#ac304d65b478ea61991aa3e65430315cb">TemplatedGenericStub</a> (std::shared_ptr< <a class="el" href="classgrpc_1_1_channel_interface.html">grpc::ChannelInterface</a> > channel)</td></tr>
- <tr class="separator:ac304d65b478ea61991aa3e65430315cb"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a9fd167beb1558b4adf53a4b7e86ec802"><td class="memItemLeft" align="right" valign="top">std::unique_ptr< <a class="el" href="classgrpc_1_1_client_async_reader_writer.html">ClientAsyncReaderWriter</a>< RequestType, ResponseType > > </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_templated_generic_stub.html#a9fd167beb1558b4adf53a4b7e86ec802">PrepareCall</a> (<a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, const std::string &method, ::<a class="el" href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a> *cq)</td></tr>
- <tr class="memdesc:a9fd167beb1558b4adf53a4b7e86ec802"><td class="mdescLeft"> </td><td class="mdescRight">Setup a call to a named method <em>method</em> using <em>context</em>, but don't start it. <a href="classgrpc_1_1_templated_generic_stub.html#a9fd167beb1558b4adf53a4b7e86ec802">More...</a><br /></td></tr>
- <tr class="separator:a9fd167beb1558b4adf53a4b7e86ec802"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:a47db7cbf42cd15a01ee24ac6a41bdd34"><td class="memItemLeft" align="right" valign="top">std::unique_ptr< <a class="el" href="classgrpc_1_1_client_async_response_reader.html">ClientAsyncResponseReader</a>< ResponseType > > </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_templated_generic_stub.html#a47db7cbf42cd15a01ee24ac6a41bdd34">PrepareUnaryCall</a> (<a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, const std::string &method, const RequestType &request, ::<a class="el" href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a> *cq)</td></tr>
- <tr class="memdesc:a47db7cbf42cd15a01ee24ac6a41bdd34"><td class="mdescLeft"> </td><td class="mdescRight">Setup a unary call to a named method <em>method</em> using <em>context</em>, and don't start it. <a href="classgrpc_1_1_templated_generic_stub.html#a47db7cbf42cd15a01ee24ac6a41bdd34">More...</a><br /></td></tr>
- <tr class="separator:a47db7cbf42cd15a01ee24ac6a41bdd34"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:aa80da2d8acda81ecc917bb899319cfae"><td class="memItemLeft" align="right" valign="top">std::unique_ptr< <a class="el" href="classgrpc_1_1_client_async_reader_writer.html">ClientAsyncReaderWriter</a>< RequestType, ResponseType > > </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_templated_generic_stub.html#aa80da2d8acda81ecc917bb899319cfae">Call</a> (<a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> *context, const std::string &method, ::<a class="el" href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a> *cq, void *tag)</td></tr>
- <tr class="memdesc:aa80da2d8acda81ecc917bb899319cfae"><td class="mdescLeft"> </td><td class="mdescRight">DEPRECATED for multi-threaded use Begin a call to a named method <em>method</em> using <em>context</em>. <a href="classgrpc_1_1_templated_generic_stub.html#aa80da2d8acda81ecc917bb899319cfae">More...</a><br /></td></tr>
- <tr class="separator:aa80da2d8acda81ecc917bb899319cfae"><td class="memSeparator" colspan="2"> </td></tr>
- <tr class="memitem:adcf7f17bacefa6c232f75726e64dde3a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classgrpc_1_1_templated_generic_stub_1_1experimental__type.html">experimental_type</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="classgrpc_1_1_templated_generic_stub.html#adcf7f17bacefa6c232f75726e64dde3a">experimental</a> ()</td></tr>
- <tr class="memdesc:adcf7f17bacefa6c232f75726e64dde3a"><td class="mdescLeft"> </td><td class="mdescRight">NOTE: The function <a class="el" href="classgrpc_1_1_templated_generic_stub.html#adcf7f17bacefa6c232f75726e64dde3a" title="NOTE: The function experimental() is not stable public API.">experimental()</a> is not stable public API. <a href="classgrpc_1_1_templated_generic_stub.html#adcf7f17bacefa6c232f75726e64dde3a">More...</a><br /></td></tr>
- <tr class="separator:adcf7f17bacefa6c232f75726e64dde3a"><td class="memSeparator" colspan="2"> </td></tr>
- </table>
- <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
- <div class="textblock"><h3>template<class RequestType, class ResponseType><br />
- class grpc::TemplatedGenericStub< RequestType, ResponseType ></h3>
- <p>Generic stubs provide a type-unaware interface to call gRPC methods by name. </p>
- <p>In practice, the Request and Response types should be basic types like <a class="el" href="classgrpc_1_1_byte_buffer.html" title="A sequence of bytes.">grpc::ByteBuffer</a> or proto::MessageLite (the base protobuf). </p>
- </div><h2 class="groupheader">Constructor & Destructor Documentation</h2>
- <a id="ac304d65b478ea61991aa3e65430315cb"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#ac304d65b478ea61991aa3e65430315cb">◆ </a></span>TemplatedGenericStub()</h2>
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<class RequestType , class ResponseType > </div>
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="classgrpc_1_1_templated_generic_stub.html">grpc::TemplatedGenericStub</a>< RequestType, ResponseType >::<a class="el" href="classgrpc_1_1_templated_generic_stub.html">TemplatedGenericStub</a> </td>
- <td>(</td>
- <td class="paramtype">std::shared_ptr< <a class="el" href="classgrpc_1_1_channel_interface.html">grpc::ChannelInterface</a> > </td>
- <td class="paramname"><em>channel</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">explicit</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- </div>
- </div>
- <h2 class="groupheader">Member Function Documentation</h2>
- <a id="aa80da2d8acda81ecc917bb899319cfae"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#aa80da2d8acda81ecc917bb899319cfae">◆ </a></span>Call()</h2>
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<class RequestType , class ResponseType > </div>
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">std::unique_ptr<<a class="el" href="classgrpc_1_1_client_async_reader_writer.html">ClientAsyncReaderWriter</a><RequestType, ResponseType> > <a class="el" href="classgrpc_1_1_templated_generic_stub.html">grpc::TemplatedGenericStub</a>< RequestType, ResponseType >::Call </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> * </td>
- <td class="paramname"><em>context</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const std::string & </td>
- <td class="paramname"><em>method</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">::<a class="el" href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a> * </td>
- <td class="paramname"><em>cq</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">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>DEPRECATED for multi-threaded use Begin a call to a named method <em>method</em> using <em>context</em>. </p>
- <p>A tag <em>tag</em> will be delivered to <em>cq</em> when the call has been started (i.e, initial metadata has been sent). The return value only indicates whether or not registration of the call succeeded (i.e. the call won't proceed if the return value is nullptr). </p>
- </div>
- </div>
- <a id="adcf7f17bacefa6c232f75726e64dde3a"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#adcf7f17bacefa6c232f75726e64dde3a">◆ </a></span>experimental()</h2>
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<class RequestType , class ResponseType > </div>
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="classgrpc_1_1_templated_generic_stub_1_1experimental__type.html">experimental_type</a> <a class="el" href="classgrpc_1_1_templated_generic_stub.html">grpc::TemplatedGenericStub</a>< RequestType, ResponseType >::experimental </td>
- <td>(</td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
- <span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>NOTE: The function <a class="el" href="classgrpc_1_1_templated_generic_stub.html#adcf7f17bacefa6c232f75726e64dde3a" title="NOTE: The function experimental() is not stable public API.">experimental()</a> is not stable public API. </p>
- <p>It is a view to the experimental components of this class. It may be changed or removed at any time. </p>
- </div>
- </div>
- <a id="a9fd167beb1558b4adf53a4b7e86ec802"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a9fd167beb1558b4adf53a4b7e86ec802">◆ </a></span>PrepareCall()</h2>
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<class RequestType , class ResponseType > </div>
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">std::unique_ptr<<a class="el" href="classgrpc_1_1_client_async_reader_writer.html">ClientAsyncReaderWriter</a><RequestType, ResponseType> > <a class="el" href="classgrpc_1_1_templated_generic_stub.html">grpc::TemplatedGenericStub</a>< RequestType, ResponseType >::PrepareCall </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> * </td>
- <td class="paramname"><em>context</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const std::string & </td>
- <td class="paramname"><em>method</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">::<a class="el" href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a> * </td>
- <td class="paramname"><em>cq</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">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Setup a call to a named method <em>method</em> using <em>context</em>, but don't start it. </p>
- <p>Let it be started explicitly with StartCall and a tag. The return value only indicates whether or not registration of the call succeeded (i.e. the call won't proceed if the return value is nullptr). </p>
- </div>
- </div>
- <a id="a47db7cbf42cd15a01ee24ac6a41bdd34"></a>
- <h2 class="memtitle"><span class="permalink"><a href="#a47db7cbf42cd15a01ee24ac6a41bdd34">◆ </a></span>PrepareUnaryCall()</h2>
- <div class="memitem">
- <div class="memproto">
- <div class="memtemplate">
- template<class RequestType , class ResponseType > </div>
- <table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">std::unique_ptr<<a class="el" href="classgrpc_1_1_client_async_response_reader.html">ClientAsyncResponseReader</a><ResponseType> > <a class="el" href="classgrpc_1_1_templated_generic_stub.html">grpc::TemplatedGenericStub</a>< RequestType, ResponseType >::PrepareUnaryCall </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="classgrpc_1_1_client_context.html">ClientContext</a> * </td>
- <td class="paramname"><em>context</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const std::string & </td>
- <td class="paramname"><em>method</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const RequestType & </td>
- <td class="paramname"><em>request</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">::<a class="el" href="classgrpc_1_1_completion_queue.html">grpc::CompletionQueue</a> * </td>
- <td class="paramname"><em>cq</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">inline</span></span> </td>
- </tr>
- </table>
- </div><div class="memdoc">
- <p>Setup a unary call to a named method <em>method</em> using <em>context</em>, and don't start it. </p>
- <p>Let it be started explicitly with StartCall. The return value only indicates whether or not registration of the call succeeded (i.e. the call won't proceed if the return value is nullptr). </p>
- </div>
- </div>
- <hr/>The documentation for this class was generated from the following file:<ul>
- <li>include/grpcpp/generic/<a class="el" href="grpcpp_2generic_2generic__stub_8h_source.html">generic_stub.h</a></li>
- </ul>
- </div><!-- contents -->
- <!-- start footer part -->
- <hr class="footer"/><address class="footer"><small>
- Generated on Wed Mar 3 2021 19:17:25 for GRPC C++ by  <a href="http://www.doxygen.org/index.html">
- <img class="footer" src="doxygen.png" alt="doxygen"/>
- </a> 1.8.17
- </small></address>
- </body>
- </html>
|