summaryrefslogtreecommitdiffstats
path: root/services/audiopolicy/service/AudioPolicyService.h
diff options
context:
space:
mode:
Diffstat (limited to 'services/audiopolicy/service/AudioPolicyService.h')
-rw-r--r--services/audiopolicy/service/AudioPolicyService.h18
1 files changed, 17 insertions, 1 deletions
diff --git a/services/audiopolicy/service/AudioPolicyService.h b/services/audiopolicy/service/AudioPolicyService.h
index 27a62f4..9b17a26 100644
--- a/services/audiopolicy/service/AudioPolicyService.h
+++ b/services/audiopolicy/service/AudioPolicyService.h
@@ -235,6 +235,10 @@ public:
audio_unique_id_t sessionId, bool added);
void doOnOutputSessionEffectsUpdate(audio_stream_type_t stream,
audio_unique_id_t sessionId, bool added);
+ void releaseOutputSessionEffectsDelayed(audio_io_handle_t output,
+ audio_stream_type_t stream,
+ audio_unique_id_t sessionId,
+ int delayMs);
private:
AudioPolicyService() ANDROID_API;
@@ -268,7 +272,8 @@ private:
UPDATE_AUDIOPATCH_LIST,
SET_AUDIOPORT_CONFIG,
DYN_POLICY_MIX_STATE_UPDATE,
- EFFECT_SESSION_UPDATE
+ EFFECT_SESSION_UPDATE,
+ RELEASE_OUTPUT_SESSION_EFFECTS,
};
AudioCommandThread (String8 name, const wp<AudioPolicyService>& service);
@@ -313,6 +318,10 @@ private:
void insertCommand_l(AudioCommand *command, int delayMs = 0);
void effectSessionUpdateCommand(audio_stream_type_t stream,
audio_unique_id_t sessionId, bool added);
+ void releaseOutputSessionEffectsCommand(audio_io_handle_t output,
+ audio_stream_type_t stream,
+ audio_unique_id_t sessionId,
+ int delayMs = 0);
private:
class AudioCommandData;
@@ -416,6 +425,13 @@ private:
bool mAdded;
};
+ class ReleaseOutputSessionEffectsData : public AudioCommandData {
+ public:
+ audio_io_handle_t mOutput;
+ audio_stream_type_t mStream;
+ audio_unique_id_t mSessionId;
+ };
+
Mutex mLock;
Condition mWaitWorkCV;
Vector < sp<AudioCommand> > mAudioCommands; // list of pending commands