template <>

class WireSyncBufferClientImpl

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

Public Methods

::fidl::WireUnownedResult< ::fuchsia_bluetooth_bredr::Profile::Advertise> Advertise (::fuchsia_bluetooth_bredr::wire::ProfileAdvertiseRequest ProfileAdvertiseRequest)

Register a set of services.

These services will be discoverable via Service Discovery Protocol server.

All services advertising the same channel must be added at once - if services are already

registered on any channel advertised, registration will fail, the receiver will be closed

with ZX_ERR_ALREADY_BOUND and an error will be returned.

The ConnectionReceiver will get calls for connections to the channels included in the

`protocol_descriptor` or `alternative_protocol_descriptors` in the services advertised.

The receiver will be closed if there are any errors advertising.

The `ConnectionReceiver::OnRevoke` event can be used to synchronize revoking the

advertisement, if necessary. Closing the `ConnectionReceiver` protocol will also stop

advertising these services.

If the advertisement cannot be made for any reason, an error of `INVALID_ARGUMENTS`

will be returned and the receiver will be closed with a suitable epitaph.

Returns the set of services that are registered via the Service Discovery Protocol

server. The returned services may differ from the input `services` if any L2CAP protocol

descriptors request `PSM_DYNAMIC`. In this case, the `Profile` server shall assign a valid

PSM and include this value in the returned services.

Caller provides the backing storage for FIDL message via an argument to `.buffer()`.

::fidl::OneWayStatus Search (::fuchsia_bluetooth_bredr::wire::ProfileSearchRequest ProfileSearchRequest)

Register a search for services on newly connected peers. The SearchResults protocol will be

used to report results for this search.

Only one of `service_uuid` or `full_uuid` must be present. Any service result with a service

matching the specified UUID will be returned with the additional attributes in `attr_ids`.

If both `service_uuid` and `full_uuid` are present, then `ZX_ERR_INVALID_ARGS` will be

returned.

If `attr_ids` is empty or omitted, all attributes will be requested. The additional

attribute BLUETOOTH_PROTOCOL_DESCRIPTOR_LIST is always requested. See the Bluetooth

Spec v5.2, Vol 3, Part B, Section 5) and relevant profile specification documents.

Caller provides the backing storage for FIDL message via an argument to `.buffer()`.

::fidl::WireUnownedResult< ::fuchsia_bluetooth_bredr::Profile::Connect> Connect (const ::fuchsia_bluetooth::wire::PeerId & peer_id, ::fuchsia_bluetooth_bredr::wire::ConnectParameters connection)

Connect an L2CAP or RFCOMM channel to the connected peer identified by `peer_id` using the

desired `connection` parameters listed. Dynamic PSMs can be specified in `connection`.

Returns the channel connected once established, or an error code if the channel could not

be connected.

Caller provides the backing storage for FIDL message via an argument to `.buffer()`.

::fidl::OneWayStatus ConnectSco (::fuchsia_bluetooth_bredr::wire::ProfileConnectScoRequest ProfileConnectScoRequest)

Attempt to establish a synchronous connection to `peer_id` configured

using `params`.

If `initiator` is true, a connection request will be sent. Only 1

parameter may be specified.

If `initiator` is false, the host will attempt to accept the next

connection request using the parameters given in order. The parameters

will be tried in order until either a connection is successful, all

parameters have been rejected (`ScoErrorCode.PARAMETERS_REJECTED`), or

the procedure is canceled.

The result of the connection attempt and the parameters used for the

connection will be returned with `connection`. Dropping `connection` will

cancel the request.

Caller provides the backing storage for FIDL message via an argument to `.buffer()`.