template <>

class Server

Defined at line 225 of file fidling/gen/sdk/fidl/fuchsia.hardware.adb/fuchsia.hardware.adb/cpp/fidl/fuchsia.hardware.adb/cpp/natural_messaging.h

Public Methods

void QueueTx (QueueTxRequest & request, QueueTxCompleter::Sync & completer)

Request transmission of the packet in |data|.

Return status indicates queue state:

ZX_OK: Packet has been enqueued.

Other: Packet could not be enqueued.

Upon a return of ZX_OK, the packet has been enqueued, but no information is returned as to

the completion state of the transmission itself.

void Receive (ReceiveCompleter::Sync & completer)

Request to receive data. This method ensures flow control by allowing the client to queue

|Receive| requests proactively. The driver will complete the requests only when data is

available.

Return data or error.

ZX_OK: Success. data is valid.

ZX_ERR_BAD_STATE: Subsequent requests will not succeed as well.

Other error codes are from underlying subsystem and the caller should retry |Receive| in

that case.

void Server ()

Defined at line 228 of file fidling/gen/sdk/fidl/fuchsia.hardware.adb/fuchsia.hardware.adb/cpp/fidl/fuchsia.hardware.adb/cpp/natural_messaging.h

Handler bind_handler (async_dispatcher_t * dispatcher)

|bind_handler| returns a handler that binds incoming connections to this

server implementation.

The returned handler borrows the server instance.

The server must outlive the provided |dispatcher|. Only after

the dispatcher is shutdown will it be safe to destroy the servers.

The server should not be moved.

void ~Server ()

Defined at line 229 of file fidling/gen/sdk/fidl/fuchsia.hardware.adb/fuchsia.hardware.adb/cpp/fidl/fuchsia.hardware.adb/cpp/natural_messaging.h