summaryrefslogtreecommitdiffstats
path: root/services/audiopolicy/AudioPolicyService.h
diff options
context:
space:
mode:
Diffstat (limited to 'services/audiopolicy/AudioPolicyService.h')
-rw-r--r--services/audiopolicy/AudioPolicyService.h17
1 files changed, 15 insertions, 2 deletions
diff --git a/services/audiopolicy/AudioPolicyService.h b/services/audiopolicy/AudioPolicyService.h
index a579d1d..40f589b 100644
--- a/services/audiopolicy/AudioPolicyService.h
+++ b/services/audiopolicy/AudioPolicyService.h
@@ -166,6 +166,9 @@ public:
int delayMs);
status_t clientReleaseAudioPatch(audio_patch_handle_t handle,
int delayMs);
+ virtual status_t clientSetAudioPortConfig(const struct audio_port_config *config,
+ int delayMs);
+
void removeNotificationClient(uid_t uid);
void onAudioPortListUpdate();
void doOnAudioPortListUpdate();
@@ -200,7 +203,8 @@ private:
CREATE_AUDIO_PATCH,
RELEASE_AUDIO_PATCH,
UPDATE_AUDIOPORT_LIST,
- UPDATE_AUDIOPATCH_LIST
+ UPDATE_AUDIOPATCH_LIST,
+ SET_AUDIOPORT_CONFIG,
};
AudioCommandThread (String8 name, const wp<AudioPolicyService>& service);
@@ -234,7 +238,8 @@ private:
int delayMs);
void updateAudioPortListCommand();
void updateAudioPatchListCommand();
-
+ status_t setAudioPortConfigCommand(const struct audio_port_config *config,
+ int delayMs);
void insertCommand_l(AudioCommand *command, int delayMs = 0);
private:
@@ -312,6 +317,11 @@ private:
audio_patch_handle_t mHandle;
};
+ class SetAudioPortConfigData : public AudioCommandData {
+ public:
+ struct audio_port_config mConfig;
+ };
+
Mutex mLock;
Condition mWaitWorkCV;
Vector < sp<AudioCommand> > mAudioCommands; // list of pending commands
@@ -465,6 +475,9 @@ private:
virtual status_t releaseAudioPatch(audio_patch_handle_t handle,
int delayMs);
+ /* Set audio port configuration */
+ virtual status_t setAudioPortConfig(const struct audio_port_config *config, int delayMs);
+
virtual void onAudioPortListUpdate();
virtual void onAudioPatchListUpdate();