template <>
class NaturalClientImpl
Defined at line 1896 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio/fuchsia.hardware.audio/cpp/fidl/fuchsia.hardware.audio/cpp/natural_messaging.h
Public Methods
::fidl::internal::NaturalThenable< ::fuchsia_hardware_audio::Dai::GetHealthState> GetHealthState ()
Retrieves top level health state.
A driver not responding promptly can be used as an indication of an unhealthy driver.
::fidl::internal::NaturalThenable< ::fuchsia_hardware_audio::Dai::Reset> Reset ()
Resets the DAI HW. The `ring_buffer` channel obtained via `CreateRingBuffer` may be closed
by the driver, in this case the client needs to obtain a new `ring_buffer`.
`Reset` returns when the reset is completed. If the driver can't successfully reset the HW,
it will close the DAI protocol channel, in this case the client may obtain a new DAI
protocol channel and retry.
::fidl::internal::NaturalThenable< ::fuchsia_hardware_audio::Dai::GetProperties> GetProperties ()
Retrieves top level static properties.
::fidl::internal::NaturalThenable< ::fuchsia_hardware_audio::Dai::GetDaiFormats> GetDaiFormats ()
Retrieves the DAI formats supported by the DAI, if not available at the time the DAI
may reply with an error status and the client may retry at a later time.
Retrieving multiple `DaiSupportedFormats` allows for cases where exclusive combinations of
the parameters in SupportedFormats may be supported.
::fidl::internal::NaturalThenable< ::fuchsia_hardware_audio::Dai::GetRingBufferFormats> GetRingBufferFormats ()
Retrieves the ring buffer formats supported by the DAI, if not available at the time the DAI
may reply with an error status and the client may retry at a later time.
Retrieving multiple `SupportedFormats` allows for cases where exclusive combinations of
the parameters in `SupportedFormats` may be supported.
::fit::result< ::fidl::OneWayError> SignalProcessingConnect (::fidl::Request< ::fuchsia_hardware_audio::Dai::SignalProcessingConnect> request)
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.
::fit::result< ::fidl::OneWayError> CreateRingBuffer (::fidl::Request< ::fuchsia_hardware_audio::Dai::CreateRingBuffer> request)
`CreateRingBuffer` is sent by clients to select both a DAI format and a ring buffer format
based on information that the driver provides in `GetDaiFormats` and `GetRingBufferFormats`,
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.