template <>
class WireServer
Defined at line 10595 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio/fuchsia.hardware.audio/cpp/fidl/fuchsia.hardware.audio/cpp/wire_messaging.h
Pure-virtual interface to be implemented by a server.
This interface uses typed channels (i.e. |::fidl::ClientEnd
<
::fuchsia_hardware_audio::Codec>|
and |::fidl::ServerEnd
<
::fuchsia_hardware_audio::Codec>|).
Public Methods
void GetHealthState (GetHealthStateCompleter::Sync & completer)
Retrieves top level health state.
A driver not responding promptly can be used as an indication of an unhealthy driver.
void SignalProcessingConnect (::fuchsia_hardware_audio_signalprocessing::wire::ConnectorSignalProcessingConnectRequest * request, SignalProcessingConnectCompleter::Sync & completer)
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.
void Reset (ResetCompleter::Sync & completer)
Resets the codec.
`Reset` returns when the reset is completed. If the driver can't successfully reset the
codec it will close the codec protocol channel, in this case the client may obtain a new
codec protocol channel and retry.
void GetProperties (GetPropertiesCompleter::Sync & completer)
Retrieves top level static properties.
void Stop (StopCompleter::Sync & completer)
Stops the codec operation.
`Stop` returns when configuring the codec to stop is completed. This method does not wait
for the hardware to actually stop playback/capture (i.e. `turn_off_delay` impact is not
taken into account), nor is any such delay reflected in the returned `stop_time`.
`stop_time` indicates when the driver finished configuring the codec to stop, as measured
in the CLOCK_MONOTONIC timeline.
If the driver cannot successfully configure the codec to stop, it will close the codec
protocol channel, in which case the client may obtain a new codec protocol channel and retry.
void Start (StartCompleter::Sync & completer)
Start/Re-start the codec operation.
`Start` returns when configuring the codec to start is completed. This method does not wait
for the hardware to actually start playback/capture (i.e. `turn_on_delay` impact is not taken
into account), nor is any such delay reflected in the returned `start_time`.
`start_time` indicates when the driver finished configuring the codec to start, as measured
in the CLOCK_MONOTONIC timeline.
If the driver can't successfully start the codec, it will close the codec protocol channel,
in which case the client may obtain a new codec protocol channel and retry.
void GetDaiFormats (GetDaiFormatsCompleter::Sync & completer)
Retrieves the DAI formats supported by the codec, if not available at the time the codec
may reply with an error status and the controller may retry at a later time.
Retrieving multiple DaiSupportedFormats allows for cases where exclusive
combinations of the parameters in DaiSupportedFormats may be supported.
void SetDaiFormat (::fuchsia_hardware_audio::wire::CodecSetDaiFormatRequest * request, SetDaiFormatCompleter::Sync & completer)
Sets the DAI format to be used in the interface between the controller and codec.
Returns an error if not supported at the time of the request (e.g. for removable hardware).
void WatchPlugState (WatchPlugStateCompleter::Sync & completer)
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.
void WireServer ()
Defined at line 10598 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio/fuchsia.hardware.audio/cpp/fidl/fuchsia.hardware.audio/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 10599 of file fidling/gen/sdk/fidl/fuchsia.hardware.audio/fuchsia.hardware.audio/cpp/fidl/fuchsia.hardware.audio/cpp/wire_messaging.h