template <>
class WireSyncClientImpl
Defined at line 14043 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio/fuchsia.hardware.audio/cpp/fidl/fuchsia.hardware.audio/cpp/wire_messaging.h
Methods to make a sync FIDL call directly on an unowned handle or a
const reference to a |::fidl::ClientEnd
<
::fuchsia_hardware_audio::StreamConfig>|,
avoiding setting up a client.
Public Methods
::fidl::WireResult< ::fuchsia_hardware_audio::StreamConfig::GetHealthState> GetHealthState ()
Retrieves top level health state.
A driver not responding promptly can be used as an indication of an unhealthy driver.
Allocates 16 bytes of request buffer on the stack. Response is heap-allocated.
::fidl::OneWayStatus SignalProcessingConnect (::fidl::ServerEnd< ::fuchsia_hardware_audio_signalprocessing::SignalProcessing> && protocol)
Connect to a `SignalProcessing` protocol.
Multiple connections may be supported, if a new connection request is not supported, i.e.
the maximum number of connections have already been created, for instance one, then the
`protocol` channel (not the channel upon which `SignalProcessingConnect` is being called)
will be closed with a `ZX_ERR_ALREADY_BOUND` epitaph.
If signal processing is not supported at all, then the `protocol` channel (again, not the
channel upon which `SignalProcessingConnect` is being called) will be closed with a
`ZX_ERR_NOT_SUPPORTED` epitaph.
This method is named `SignalProcessingConnect` instead of `Connect` because this protocol
is intended to be composed, and hence the more verbose name allows differentiation and
improved clarity.
Allocates 40 bytes of message buffer on the stack. No heap allocation necessary.
::fidl::WireResult< ::fuchsia_hardware_audio::StreamConfig::GetProperties> GetProperties ()
Retrieves top level static properties.
Allocates 16 bytes of request buffer on the stack. Response is heap-allocated.
::fidl::WireResult< ::fuchsia_hardware_audio::StreamConfig::GetSupportedFormats> GetSupportedFormats ()
Gets formats supported by a given driver. When not all combinations supported by the
driver can be described with one `SupportedFormats`, the driver returns more than one
`SupportedFormats` in the returned vector. For example, if one `SupportedFormats` allows
for 32 bits samples at 48KHz, and 16 bits samples at 96KHz, but not 32 bits samples at
96KHz, then the driver replies with 2 `SupportedFormats`:
<
<
32bits>,
<
48KHz>> and
<
<
16bits>,
<
96KHz>>. For simplicity, this example ignores parameters other than rate and
bits per sample. In the case where the driver supports either 16 or 32 bits samples at
either 48 or 96KHz, the driver would reply with 1 `SupportedFormats`:
<
<
16bits,32bits>,
<
48KHz,96KHz>>.
Allocates 16 bytes of request buffer on the stack. Response is heap-allocated.
::fidl::OneWayStatus CreateRingBuffer (::fuchsia_hardware_audio::wire::Format format, ::fidl::ServerEnd< ::fuchsia_hardware_audio::RingBuffer> && ring_buffer)
`CreateRingBuffer` is sent by clients to select a stream format based on information that
the driver provides in `GetSupportedFormats` what is supported by the client, and any other
requirement. The `ring_buffer` channel is used to control the audio buffer, if a previous
ring buffer channel had been established and was still active, the driver must close that
(ring buffer) channel and make every attempt to gracefully quiesce any on-going streaming
operations in the process.
Allocates 72 bytes of message buffer on the stack. No heap allocation necessary.
::fidl::WireResult< ::fuchsia_hardware_audio::StreamConfig::WatchGainState> WatchGainState ()
Get the gain state via a hanging get. The driver will reply to the first `WatchGainState`
sent by the client and this reply must include a `gain_db` set to 0dB or lower. The driver
will not respond to subsequent client `WatchGainState` calls until the gain state changes
from what was most recently reported.
If `WatchGainState` is called for a second time before the first call has completed, then
the protocol channel must be closed with the error `ZX_ERR_BAD_STATE`.
Allocates 16 bytes of request buffer on the stack. Response is heap-allocated.
::fidl::OneWayStatus SetGain (::fuchsia_hardware_audio::wire::GainState target_state)
Client update of the gain state.
Allocates 72 bytes of message buffer on the stack. No heap allocation necessary.
::fidl::WireResult< ::fuchsia_hardware_audio::StreamConfig::WatchPlugState> WatchPlugState ()
Get the plug detect state via a hanging get. The driver will reply to the first
`WatchPlugState` sent by the client. The driver will not respond to subsequent client
`WatchPlugState` calls until the plug state changes from what was most recently reported.
If `WatchPlugState` is called for a second time before the first call has completed, then
the protocol channel must be closed with the error `ZX_ERR_BAD_STATE`.
Allocates 16 bytes of request buffer on the stack. Response is heap-allocated.