template <>

class WireServer

Defined at line 3119 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/wire_messaging.h

Pure-virtual interface to be implemented by a server.

This interface uses typed channels (i.e. |::fidl::ClientEnd

<

::fuchsia_media::AudioDeviceEnumerator>|

and |::fidl::ServerEnd

<

::fuchsia_media::AudioDeviceEnumerator>|).

Public Methods

void GetDevices (GetDevicesCompleter::Sync & completer)

Obtain the list of currently active audio devices.

void GetDeviceGain (::fuchsia_media::wire::AudioDeviceEnumeratorGetDeviceGainRequest * request, GetDeviceGainCompleter::Sync & completer)

Gain/Mute/AGC control

Note that each of these operations requires a device_token in order to

target the proper input/output.

The Get command returns the device_token of the device whose gain is

being reported, or `ZX_KOID_INVALID` in the case that the requested

device_token was invalid or the device had been removed from the system

before the Get command could be processed.

Set commands which are given an invalid device token are ignored and

have no effect on the system. In addition, users do not need to control

all of the gain settings for an audio device with each call. Only the

settings with a corresponding flag set in the set_flags parameter will

be affected. For example, passing SetAudioGainFlag_MuteValid will cause

a SetDeviceGain call to care only about the mute setting in the

gain_info structure, while passing (SetAudioGainFlag_GainValid |

SetAudioGainFlag_MuteValid) will cause both the mute and the gain

status to be changed simultaneously.

void SetDeviceGain (::fuchsia_media::wire::AudioDeviceEnumeratorSetDeviceGainRequest * request, SetDeviceGainCompleter::Sync & completer)
void AddDeviceByChannel (::fuchsia_media::wire::AudioDeviceEnumeratorAddDeviceByChannelRequest * request, AddDeviceByChannelCompleter::Sync & completer)

# Deprecation

StreamConfig is not supported anymore, instead use an

[Audio Composite](https://fuchsia.dev/fuchsia-src/development/audio/drivers/composite)

, see

[Audio Drivers Architecture](https://fuchsia.dev/fuchsia-src/development/audio/drivers/architecture)

void WireServer ()

Defined at line 3122 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/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 3123 of file fidling/gen/sdk/fidl/fuchsia.media/fuchsia.media/cpp/fidl/fuchsia.media/cpp/wire_messaging.h