Remove AudioDeviceObserver and make ADM not inherit from the Module interface.

(Re-upload of https://codereview.webrtc.org/3020493002/)

Bug: webrtc:4690, webrtc:7306
Change-Id: I67fb9ebca1296aabc08eae8a292a5c69832dc35e
Reviewed-on: https://webrtc-review.googlesource.com/5360
Commit-Queue: Fredrik Solenberg <solenberg@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20083}
This commit is contained in:
Fredrik Solenberg
2017-10-02 14:55:33 +02:00
committed by Commit Bot
parent c007857ab9
commit 34cdd2d402
35 changed files with 14 additions and 698 deletions

View File

@ -44,15 +44,11 @@ class AudioDeviceModuleImpl : public AudioDeviceModule {
AudioDeviceModuleImpl(const int32_t id, const AudioLayer audioLayer);
~AudioDeviceModuleImpl() override;
int64_t TimeUntilNextProcess() override;
void Process() override;
// Retrieve the currently utilized audio layer
int32_t ActiveAudioLayer(AudioLayer* audioLayer) const override;
// Error handling
ErrorCode LastError() const override;
int32_t RegisterEventObserver(AudioDeviceObserver* eventCallback) override;
// Full-duplex transportation of PCM audio
int32_t RegisterAudioCallback(AudioTransport* audioCallback) override;
@ -178,11 +174,8 @@ class AudioDeviceModuleImpl : public AudioDeviceModule {
AudioLayer PlatformAudioLayer() const;
rtc::CriticalSection _critSect;
rtc::CriticalSection _critSectEventCb;
rtc::CriticalSection _critSectAudioCb;
AudioDeviceObserver* _ptrCbAudioDeviceObserver;
AudioDeviceGeneric* _ptrAudioDevice;
AudioDeviceBuffer _audioDeviceBuffer;
@ -191,7 +184,6 @@ class AudioDeviceModuleImpl : public AudioDeviceModule {
#endif
int32_t _id;
AudioLayer _platformAudioLayer;
int64_t _lastProcessTime;
PlatformType _platformType;
bool _initialized;
mutable ErrorCode _lastError;