blob: 2ae0e97b4b2468c02086cca0db07258a83283a5d [file] [log] [blame]
Mikhail Naganovad3f8a12017-12-12 13:24:23 -08001/*
2 * Copyright (C) 2017 The Android Open Source Project
3 *
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
7 *
8 * http://www.apache.org/licenses/LICENSE-2.0
9 *
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
15 */
16#pragma once
17
18#include "AudioPolicyInterface.h"
19
20namespace android {
21
22class AudioPolicyTestClient : public AudioPolicyClientInterface
23{
24public:
Mikhail Naganovbcbcb1b2017-12-13 13:03:35 -080025 virtual ~AudioPolicyTestClient() = default;
Mikhail Naganovad3f8a12017-12-12 13:24:23 -080026
27 // AudioPolicyClientInterface Implementation
Mikhail Naganovffd97712023-05-03 17:45:36 -070028 status_t getAudioPolicyConfig(media::AudioPolicyConfig* /*config*/) override {
29 return INVALID_OPERATION;
30 }
Mikhail Naganov04a86632017-12-15 18:01:42 -080031 audio_module_handle_t loadHwModule(const char* /*name*/) override {
32 return AUDIO_MODULE_HANDLE_NONE;
33 }
Mikhail Naganovad3f8a12017-12-12 13:24:23 -080034 status_t openOutput(audio_module_handle_t /*module*/,
35 audio_io_handle_t* /*output*/,
Eric Laurentf1f22e72021-07-13 14:04:14 +020036 audio_config_t* /*halConfig*/,
37 audio_config_base_t* /*mixerConfig*/,
jiabin43810402019-10-24 14:58:31 -070038 const sp<DeviceDescriptorBase>& /*device*/,
Mikhail Naganovad3f8a12017-12-12 13:24:23 -080039 uint32_t* /*latencyMs*/,
Mikhail Naganov04a86632017-12-15 18:01:42 -080040 audio_output_flags_t /*flags*/) override { return NO_INIT; }
Mikhail Naganovad3f8a12017-12-12 13:24:23 -080041 audio_io_handle_t openDuplicateOutput(audio_io_handle_t /*output1*/,
Mikhail Naganov04a86632017-12-15 18:01:42 -080042 audio_io_handle_t /*output2*/) override {
43 return AUDIO_IO_HANDLE_NONE;
44 }
45 status_t closeOutput(audio_io_handle_t /*output*/) override { return NO_INIT; }
46 status_t suspendOutput(audio_io_handle_t /*output*/) override { return NO_INIT; }
47 status_t restoreOutput(audio_io_handle_t /*output*/) override { return NO_INIT; }
Mikhail Naganovad3f8a12017-12-12 13:24:23 -080048 status_t openInput(audio_module_handle_t /*module*/,
49 audio_io_handle_t* /*input*/,
50 audio_config_t* /*config*/,
51 audio_devices_t* /*device*/,
52 const String8& /*address*/,
53 audio_source_t /*source*/,
Mikhail Naganov04a86632017-12-15 18:01:42 -080054 audio_input_flags_t /*flags*/) override { return NO_INIT; }
55 status_t closeInput(audio_io_handle_t /*input*/) override { return NO_INIT; }
Mikhail Naganovad3f8a12017-12-12 13:24:23 -080056 status_t setStreamVolume(audio_stream_type_t /*stream*/,
57 float /*volume*/,
58 audio_io_handle_t /*output*/,
Mikhail Naganov04a86632017-12-15 18:01:42 -080059 int /*delayMs*/) override { return NO_INIT; }
Mikhail Naganovad3f8a12017-12-12 13:24:23 -080060 void setParameters(audio_io_handle_t /*ioHandle*/,
61 const String8& /*keyValuePairs*/,
62 int /*delayMs*/) override { }
63 String8 getParameters(audio_io_handle_t /*ioHandle*/,
64 const String8& /*keys*/) override { return String8(); }
Mikhail Naganov04a86632017-12-15 18:01:42 -080065 status_t setVoiceVolume(float /*volume*/, int /*delayMs*/) override { return NO_INIT; }
Mikhail Naganovad3f8a12017-12-12 13:24:23 -080066 status_t moveEffects(audio_session_t /*session*/,
67 audio_io_handle_t /*srcOutput*/,
Mikhail Naganov04a86632017-12-15 18:01:42 -080068 audio_io_handle_t /*dstOutput*/) override { return NO_INIT; }
Mikhail Naganovad3f8a12017-12-12 13:24:23 -080069 status_t createAudioPatch(const struct audio_patch* /*patch*/,
70 audio_patch_handle_t* /*handle*/,
Mikhail Naganov04a86632017-12-15 18:01:42 -080071 int /*delayMs*/) override { return NO_INIT; }
Mikhail Naganovad3f8a12017-12-12 13:24:23 -080072 status_t releaseAudioPatch(audio_patch_handle_t /*handle*/,
Mikhail Naganov04a86632017-12-15 18:01:42 -080073 int /*delayMs*/) override { return NO_INIT; }
Mikhail Naganovad3f8a12017-12-12 13:24:23 -080074 status_t setAudioPortConfig(const struct audio_port_config* /*config*/,
Mikhail Naganov04a86632017-12-15 18:01:42 -080075 int /*delayMs*/) override { return NO_INIT; }
Mikhail Naganovad3f8a12017-12-12 13:24:23 -080076 void onAudioPortListUpdate() override { }
77 void onAudioPatchListUpdate() override { }
François Gaffiecfe17322018-11-07 13:41:29 +010078 void onAudioVolumeGroupChanged(volume_group_t /*group*/, int /*flags*/) override { }
Mikhail Naganovad3f8a12017-12-12 13:24:23 -080079 audio_unique_id_t newAudioUniqueId(audio_unique_id_use_t /*use*/) override { return 0; }
80 void onDynamicPolicyMixStateUpdate(String8 /*regId*/, int32_t /*state*/) override { }
Eric Laurenta9f86652018-11-28 17:23:11 -080081 void onRecordingConfigurationUpdate(int event __unused,
82 const record_client_info_t *clientInfo __unused,
83 const audio_config_base_t *clientConfig __unused,
84 std::vector<effect_descriptor_t> clientEffects __unused,
85 const audio_config_base_t *deviceConfig __unused,
86 std::vector<effect_descriptor_t> effects __unused,
87 audio_patch_handle_t patchHandle __unused,
88 audio_source_t source __unused) override { }
Jean-Michel Trivi9a6b9ad2020-10-22 16:46:43 -070089 void onRoutingUpdated() override { }
Jean-Michel Trivi78f2b302022-04-15 18:18:41 +000090 void onVolumeRangeInitRequest() override { }
Eric Laurentb20cf7d2019-04-05 19:37:34 -070091 void setEffectSuspended(int effectId __unused,
92 audio_session_t sessionId __unused,
93 bool suspended __unused) {}
Ytai Ben-Tsvi74cd6b02019-10-25 10:06:40 -070094 void setSoundTriggerCaptureState(bool active __unused) override {};
jiabinb4fed192020-09-22 14:45:40 -070095 status_t getAudioPort(struct audio_port_v7 *port __unused) override {
96 return INVALID_OPERATION;
97 };
jiabinf042b9b2021-05-07 23:46:28 +000098 status_t updateSecondaryOutputs(
99 const TrackSecondaryOutputsMap& trackSecondaryOutputs __unused) override {
100 return NO_INIT;
101 }
jiabinc0048632023-04-27 22:04:31 +0000102 status_t setDeviceConnectedState(const struct audio_port_v7 *port __unused,
103 media::DeviceConnectedState state __unused) override {
Mikhail Naganov516d3982022-02-01 23:53:59 +0000104 return NO_INIT;
105 }
jiabinc44b3462022-12-08 12:52:31 -0800106 status_t invalidateTracks(const std::vector<audio_port_handle_t>& /*portIds*/) override {
107 return NO_INIT;
108 }
Mikhail Naganovad3f8a12017-12-12 13:24:23 -0800109};
110
111} // namespace android