template <>

class WireServer

Defined at line 6614 of file fidling/gen/sdk/fidl/fuchsia.hardware.bluetooth/fuchsia.hardware.bluetooth/cpp/fidl/fuchsia.hardware.bluetooth/cpp/wire_messaging.h

Pure-virtual interface to be implemented by a server.

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

<

::fuchsia_hardware_bluetooth::Hci>|

and |::fidl::ServerEnd

<

::fuchsia_hardware_bluetooth::Hci>|).

Public Methods

void OpenCommandChannel (::fuchsia_hardware_bluetooth::wire::HciOpenCommandChannelRequest * request, OpenCommandChannelCompleter::Sync & completer)

Open the two-way HCI command channel for sending HCI commands and

receiving event packets. Returns ZX_ERR_ALREADY_BOUND if the channel

is already open.

void OpenAclDataChannel (::fuchsia_hardware_bluetooth::wire::HciOpenAclDataChannelRequest * request, OpenAclDataChannelCompleter::Sync & completer)

Open the two-way HCI ACL data channel.

Returns ZX_ERR_ALREADY_BOUND if the channel is already open.

void OpenScoDataChannel (::fuchsia_hardware_bluetooth::wire::HciOpenScoDataChannelRequest * request, OpenScoDataChannelCompleter::Sync & completer)

Opens a SCO channel on the provided handle. The zircon channel is

closed in the event of an error opening the hci channel or if the hci

channel is already associated with a handle to another zircon channel.

Returns ZX_ERR_NOT_SUPPORTED if SCO is not supported by the current vendor or transport

driver.

Returns ZX_ERR_ALREADY_BOUND if the channel is already open.

void ConfigureSco (::fuchsia_hardware_bluetooth::wire::HciConfigureScoRequest * request, ConfigureScoCompleter::Sync & completer)

Configure the HCI for a SCO connection with the indicated parameters.

This must be called before sending/receiving data on the SCO channel.

Returns ZX_ERR_NOT_SUPPORTED if SCO is not supported by the current vendor or transport

driver.

void ResetSco (ResetScoCompleter::Sync & completer)

Releases resources held by an active SCO connection. Must be called

when a SCO connection is closed.

Returns ZX_ERR_NOT_SUPPORTED if SCO is not supported by the current vendor or transport

driver.

void OpenIsoDataChannel (::fuchsia_hardware_bluetooth::wire::HciOpenIsoDataChannelRequest * request, OpenIsoDataChannelCompleter::Sync & completer)

Opens a channel on the provided handle for sending and receiving isochronous data packets.

The zircon channel is closed in the event of an error opening the hci channel or if the hci

channel is already associated with a handle to another zircon channel.

Returns ZX_ERR_NOT_SUPPORTED if ISO is not supported by the current vendor or transport

driver.

Returns ZX_ERR_ALREADY_BOUND if the channel is already open.

void OpenSnoopChannel (::fuchsia_hardware_bluetooth::wire::HciOpenSnoopChannelRequest * request, OpenSnoopChannelCompleter::Sync & completer)

Open an output-only channel for monitoring HCI traffic.

The format of each message is: [1-octet flags] [n-octet payload]

The flags octet is a bitfield with the following values defined:

- 0x00: The payload represents a command packet sent from the host to the

controller.

- 0x01: The payload represents an event packet sent by the controller.

Returns ZX_ERR_ALREADY_BOUND if the channel is already open.

void WireServer ()

Defined at line 6617 of file fidling/gen/sdk/fidl/fuchsia.hardware.bluetooth/fuchsia.hardware.bluetooth/cpp/fidl/fuchsia.hardware.bluetooth/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 6618 of file fidling/gen/sdk/fidl/fuchsia.hardware.bluetooth/fuchsia.hardware.bluetooth/cpp/fidl/fuchsia.hardware.bluetooth/cpp/wire_messaging.h