class FakeCodec

Defined at line 31 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

This driver implements the audio driver interface and is configurable to simulate audio hardware.

Public Members

static const char[] kDefaultManufacturer
static const char[] kDefaultProduct
static array kDefaultUniqueInstanceId
static const bool kDefaultIsInput
static const uint32_t kDefaultNumberOfChannels
static const uint32_t kDefaultNumberOfChannels2
static DaiSampleFormat kDefaultDaiSampleFormat
static const uint32_t kDefaultFrameRate
static const uint8_t kDefaultBitsPerSlot
static const uint8_t kDefaultBitsPerSample
static PlugDetectCapabilities kDefaultDriverPlugCaps
static PlugDetectCapabilities kDefaultPlugCaps
static DaiFrameFormat kDefaultFrameFormat
static vector kDefaultNumberOfChannelsSet
static vector kDefaultSampleFormatSet
static vector kDefaultFrameFormatSet
static vector kDefaultFrameRateSet
static vector kDefaultBitsPerSlotSet
static vector kDefaultBitsPerSampleSet
static DaiSupportedFormats kDefaultDaiFormatSet
static vector kDefaultDaiFormatSets

Public Methods

void FakeCodec (zx::channel server_end, zx::channel client_end, async_dispatcher_t * dispatcher)

Defined at line 52 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.cc

void ~FakeCodec ()

Defined at line 62 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.cc

fidl::ClientEnd<fuchsia_hardware_audio::Codec> Enable ()

This returns a fidl::client_end

<Codec

>. The driver will not start serving requests until Enable

is called, which is why the construction/Enable separation exists.

Defined at line 68 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.cc

void NotImplemented_ (const std::string & name, ::fidl::CompleterBase & completer)

Defined at line 70 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

async_dispatcher_t * dispatcher ()

Defined at line 80 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

bool is_bound ()

Defined at line 81 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void DropCodec ()

Defined at line 81 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.cc

std::optional<bool> health_state ()

Defined at line 83 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void set_health_state (std::optional<bool> healthy)

Defined at line 84 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

std::optional<bool> is_input ()

Defined at line 86 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void set_is_input (std::optional<bool> is_input)

Defined at line 87 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void set_device_manufacturer (std::optional<std::string> mfgr)

Defined at line 88 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void set_device_product (std::optional<std::string> product)

Defined at line 89 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void set_stream_unique_id (std::optional<UniqueId> uid)

Defined at line 90 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void set_plug_detect_capabilities (std::optional<fuchsia_hardware_audio::PlugDetectCapabilities> plug_detect_capabilities)

Defined at line 98 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void SetDefaultFormatSets ()

By default, support 1 format set, limited to 2-channel, unsigned int 16-in-32, 48kHz, I2S.

Defined at line 104 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void clear_format_sets ()

Defined at line 115 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void add_format_set (fuchsia_hardware_audio::DaiSupportedFormats format_set)

Defined at line 116 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

bool is_running ()

Defined at line 120 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

zx::time mono_start_time ()

Defined at line 121 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

zx::time mono_stop_time ()

Defined at line 122 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

std::optional<fuchsia_hardware_audio::DaiFormat> selected_format ()

The returned optional will be empty if no |SetDaiFormat| command has been received, or if the

Codec's state has been reset.

Defined at line 126 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void set_external_delay (zx::duration external_delay)

Defined at line 130 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void clear_external_delay ()

Defined at line 131 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void set_turn_on_delay (zx::duration turn_on_delay)

Defined at line 132 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void clear_turn_on_delay ()

Defined at line 133 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void set_turn_off_delay (zx::duration turn_off_delay)

Defined at line 134 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void clear_turn_off_delay ()

Defined at line 135 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.h

void InjectPluggedAt (zx::time plug_time)

Explicitly trigger a plug change.

Defined at line 252 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.cc

void InjectUnpluggedAt (zx::time plug_time)

Defined at line 266 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.cc

void HandlePlugResponse ()

Defined at line 280 of file ../../src/media/audio/services/device_registry/testing/fakes/fake_codec.cc