template <>
class WireServer
Defined at line 3148 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::Emulator>|
and |::fidl::ServerEnd
<
::fuchsia_hardware_bluetooth::Emulator>|).
Public Methods
void Publish (::fuchsia_hardware_bluetooth::wire::EmulatorSettings * request, PublishCompleter::Sync & completer)
Publish a bt-hci device using the provided `settings`. Each Emulator instance can only
manage a single bt-hci device. Returns Emulator.`HCI_ALREADY_PUBLISHED` if the device has
already been published.
void AddLowEnergyPeer (::fuchsia_hardware_bluetooth::wire::PeerParameters * request, AddLowEnergyPeerCompleter::Sync & completer)
Inserts a new LE peer device to be emulated by this controller. Once registered, the state
of the fake peer can be driven and observed using the `peer` handle.
A reply will be sent to acknowledge the creation of the fake peer. If a peer cannot be
initialized (e.g. due to a missing required field in `parameters` or for containing an
address that is already emulated) the `peer` handle will be closed and an error reply will
be sent.
The peer will appear in advertising reports and respond to requests according to its
configuration as long as the `peer` channel is open. The emulator stops emulating this peer
when the channel gets closed, which makes it no longer discoverable and not respond to any
requests.
void AddBredrPeer (::fuchsia_hardware_bluetooth::wire::PeerParameters * request, AddBredrPeerCompleter::Sync & completer)
Inserts a new BR/EDR peer device to be emulated by this controller. Once registered, the state
of the fake peer can be driven and observed using the `peer` handle.
A reply will be sent to acknowledge the creation of the fake peer. If a peer cannot be
initialized (e.g. due to a missing required field in `parameters` or for containing an
address that is already emulated) the `peer` handle will be closed and an error reply will
be sent.
The peer will appear in inquiry results and respond to requests according to its
configuration as long as the `peer` channel is open. The emulator stops emulating this peer
when the channel gets closed, which makes it no longer discoverable and not respond to any
requests.
void WatchControllerParameters (WatchControllerParametersCompleter::Sync & completer)
Hanging get pattern for the controller parameter state will not resolve until the state has
changed from the last response.
void WatchLeScanStates (WatchLeScanStatesCompleter::Sync & completer)
Returns a vector of the least to most recent states for the link layer LE scan procedure.
This method returns when there has been at least one state change since the last invocation
of this method by this client.
Multiple calls to this method can be outstanding at a given time. All calls will resolve in
a response as soon as there is a change to the scan state.
void WatchLegacyAdvertisingStates (WatchLegacyAdvertisingStatesCompleter::Sync & completer)
Returns a vector of the least to most recent states for the link layer LE legacy
advertising procedure. This method returns when there has been at least one state change
since the last invocation of this method by this client.
Multiple calls to this method can be outstanding at a given time. All calls will resolve in
a response as soon as there is a change to the scan state.
void WireServer ()
Defined at line 3151 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 3152 of file fidling/gen/sdk/fidl/fuchsia.hardware.bluetooth/fuchsia.hardware.bluetooth/cpp/fidl/fuchsia.hardware.bluetooth/cpp/wire_messaging.h