class Session

Defined at line 3952 of file fidling/gen/sdk/fidl/fuchsia.storage.block/fuchsia.storage.block/hlcpp/fuchsia/storage/block/cpp/fidl.h

Represents a session with a block device.

This protocol encodes the underlying object's lifetime in both directions; the underlying object

is alive iff both ends of the protocol are open. That is:

- Closing the client end causes the object to be destroyed.

- Observing a closure of the server end indicates the object no longer exists.

The object can be destroyed synchronously using [`fuchsia.unknown/Closeable.Close`].

Public Methods

void ~Session ()
void Close (CloseCallback callback)

Terminates the connection.

After calling `Close`, the client must not send any other requests.

Servers, after sending the status response, should close the connection

regardless of status and without sending an epitaph.

Closing the client end of the channel should be semantically equivalent

to calling `Close` without knowing when the close has completed or its

status.

void GetFifo (GetFifoCallback callback)

Returns a handle to the client end of the FIFO.

void AttachVmo (::zx::vmo vmo, AttachVmoCallback callback)

Attaches a VMO to the session.

Returns an identifer that can be used to refer to the VMO.