GRPC C++  1.3.0
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions
grpc::ClientAsyncReaderWriter< W, R > Class Template Referencefinal

#include <async_stream.h>

Public Member Functions

 ClientAsyncReaderWriter (ChannelInterface *channel, CompletionQueue *cq, const RpcMethod &method, ClientContext *context, void *tag)
 
void ReadInitialMetadata (void *tag) override
 Request notification of the reading of the initial metadata. More...
 
void Read (R *msg, void *tag) override
 Read a message of type R into msg. More...
 
void Write (const W &msg, void *tag) override
 Request the writing of msg with identifying tag tag. More...
 
void Write (const W &msg, WriteOptions options, void *tag) override
 Request the writing of msg using WriteOptions options with identifying tag tag. More...
 
void WritesDone (void *tag) override
 Signal the client is done with the writes. More...
 
void Finish (Status *status, void *tag) override
 Indicate that the stream is to be finished and request notification Should not be used concurrently with other operations. More...
 
- Public Member Functions inherited from grpc::ClientAsyncStreamingInterface
virtual ~ClientAsyncStreamingInterface ()
 
- Public Member Functions inherited from grpc::AsyncWriterInterface< W >
virtual ~AsyncWriterInterface ()
 
void WriteLast (const W &msg, WriteOptions options, void *tag)
 Request the writing of msg and coalesce it with the writing of trailing metadata, using WriteOptions options with identifying tag tag. More...
 
- Public Member Functions inherited from grpc::AsyncReaderInterface< R >
virtual ~AsyncReaderInterface ()
 

Constructor & Destructor Documentation

template<class W , class R >
grpc::ClientAsyncReaderWriter< W, R >::ClientAsyncReaderWriter ( ChannelInterface channel,
CompletionQueue cq,
const RpcMethod method,
ClientContext context,
void *  tag 
)
inline

Member Function Documentation

template<class W , class R >
void grpc::ClientAsyncReaderWriter< W, R >::Finish ( Status status,
void *  tag 
)
inlineoverridevirtual

Indicate that the stream is to be finished and request notification Should not be used concurrently with other operations.

Parameters
[out]statusTo be updated with the operation status.
[in]tagTag identifying this request.

Implements grpc::ClientAsyncStreamingInterface.

template<class W , class R >
void grpc::ClientAsyncReaderWriter< W, R >::Read ( R *  msg,
void *  tag 
)
inlineoverridevirtual

Read a message of type R into msg.

Completion will be notified by tag on the associated completion queue. This is thread-safe with respect to Write or WritesDone methods. It should not be called concurrently with other streaming APIs on the same stream. It is not meaningful to call it concurrently with another Read on the same stream since reads on the same stream are delivered in order.

Parameters
[out]msgWhere to eventually store the read message.
[in]tagThe tag identifying the operation.

Implements grpc::AsyncReaderInterface< R >.

template<class W , class R >
void grpc::ClientAsyncReaderWriter< W, R >::ReadInitialMetadata ( void *  tag)
inlineoverridevirtual

Request notification of the reading of the initial metadata.

Completion will be notified by tag on the associated completion queue. This call is optional, but if it is used, it cannot be used concurrently with or after the Read method.

Parameters
[in]tagTag identifying this request.

Implements grpc::ClientAsyncStreamingInterface.

template<class W , class R >
void grpc::ClientAsyncReaderWriter< W, R >::Write ( const W &  msg,
void *  tag 
)
inlineoverridevirtual

Request the writing of msg with identifying tag tag.

Only one write may be outstanding at any given time. This means that after calling Write, one must wait to receive tag from the completion queue BEFORE calling Write again. This is thread-safe with respect to Read

Parameters
[in]msgThe message to be written.
[in]tagThe tag identifying the operation.

Implements grpc::AsyncWriterInterface< W >.

template<class W , class R >
void grpc::ClientAsyncReaderWriter< W, R >::Write ( const W &  msg,
WriteOptions  options,
void *  tag 
)
inlineoverridevirtual

Request the writing of msg using WriteOptions options with identifying tag tag.

Only one write may be outstanding at any given time. This means that after calling Write, one must wait to receive tag from the completion queue BEFORE calling Write again. WriteOptions options is used to set the write options of this message. This is thread-safe with respect to Read

Parameters
[in]msgThe message to be written.
[in]optionsThe WriteOptions to be used to write this message.
[in]tagThe tag identifying the operation.

Implements grpc::AsyncWriterInterface< W >.

template<class W , class R >
void grpc::ClientAsyncReaderWriter< W, R >::WritesDone ( void *  tag)
inlineoverridevirtual

Signal the client is done with the writes.

Thread-safe with respect to Read

Parameters
[in]tagThe tag identifying the operation.

Implements grpc::ClientAsyncReaderWriterInterface< W, R >.


The documentation for this class was generated from the following file: