template <>

class Server

Defined at line 370 of file fidling/gen/sdk/fidl/fuchsia.hardware.goldfish.pipe/fuchsia.hardware.goldfish.pipe/cpp/fidl/fuchsia.hardware.goldfish.pipe/cpp/natural_messaging.h

Public Methods

void Create (CreateCompleter::Sync & completer)

Creates a new connection to the pipe bus.

Clients must `Destroy` all pipe bus connections they `Create`d.

Failure to do so may result in host side resources being not cleaned up

properly.

void Destroy (DestroyRequest & request, DestroyCompleter::Sync & completer)

Destroys a previously created pipe connection.

void Server ()

Defined at line 373 of file fidling/gen/sdk/fidl/fuchsia.hardware.goldfish.pipe/fuchsia.hardware.goldfish.pipe/cpp/fidl/fuchsia.hardware.goldfish.pipe/cpp/natural_messaging.h

void SetEvent (SetEventRequest & request, SetEventCompleter::Sync & completer)

Set event used to signal device state. Discards existing event

after having transferred device state to the new event, if event

exists.

Return error states from `zx_object_wait_one` and `zx_object_signal`

if existing events on `pipe_event` cannot be transferred to the call.

Otherwise returns `ZX_OK`.

void Open (OpenRequest & request, OpenCompleter::Sync & completer)

Open pipe connection. This must be called before any other

commands are issued and will cause the physical address of the

command structure to be a associated with the pipe. The command

structure must contain {.cmd = OPEN, .id = id} at the time this

request is issued.

void Exec (ExecRequest & request, ExecCompleter::Sync & completer)

Execute pipe command stored in associated command structure.

void GetBti (GetBtiCompleter::Sync & completer)

Get BTI that can be used create IO buffers for read/write commands.

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 374 of file fidling/gen/sdk/fidl/fuchsia.hardware.goldfish.pipe/fuchsia.hardware.goldfish.pipe/cpp/fidl/fuchsia.hardware.goldfish.pipe/cpp/natural_messaging.h