template <>

class WireServer

Defined at line 1453 of file fidling/gen/sdk/fidl/fuchsia.device/fuchsia.device/cpp/fidl/fuchsia.device/cpp/wire_messaging.h

Pure-virtual interface to be implemented by a server.

This interface uses typed channels (i.e. |::fidl::ClientEnd

<

::fuchsia_device::Controller>|

and |::fidl::ServerEnd

<

::fuchsia_device::Controller>|).

Public Methods

void ConnectToDeviceFidl (::fuchsia_device::wire::ControllerConnectToDeviceFidlRequest * request, ConnectToDeviceFidlCompleter::Sync & completer)

Connect to the underlying device's FIDL protocol.

This connection will not be multiplexed with fuchsia.device.Controller

or fuchsia.io.Node.

void ConnectToController (::fuchsia_device::wire::ControllerConnectToControllerRequest * request, ConnectToControllerCompleter::Sync & completer)

Connect to the same Controller FIDL protocol.

void Bind (::fuchsia_device::wire::ControllerBindRequest * request, BindCompleter::Sync & completer)

Attempt to bind a driver to this device.

+ request `driver` This represents the suffix of a driver URL (e.g: "fvm.cm").

If this is non-empty, then the only drivers that will try to bind

are ones that match this url suffix.

void Rebind (::fuchsia_device::wire::ControllerRebindRequest * request, RebindCompleter::Sync & completer)

Unbind all the children of this device, and then attempt to bind a driver to the device.

This will not return until the bind completes.

+ request `driver` This represents the suffix of a driver URL (e.g: "fvm.cm").

If this is non-empty, then the only drivers that will try to bind

are ones that match this url suffix.

void UnbindChildren (UnbindChildrenCompleter::Sync & completer)

This api will unbind all the children of this device synchronously.

This will avoid watching for device removal by the clients.

void ScheduleUnbind (ScheduleUnbindCompleter::Sync & completer)

Disconnect this device and allow its parent to be bound again.

This may not complete before it returns.

void GetTopologicalPath (GetTopologicalPathCompleter::Sync & completer)

Return the topological path for this device

void WireServer ()

Defined at line 1456 of file fidling/gen/sdk/fidl/fuchsia.device/fuchsia.device/cpp/fidl/fuchsia.device/cpp/wire_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 ~WireServer ()

Defined at line 1457 of file fidling/gen/sdk/fidl/fuchsia.device/fuchsia.device/cpp/fidl/fuchsia.device/cpp/wire_messaging.h