Chromium Code Reviews| Index: webrtc/modules/audio_device/ios/audio_device_not_implemented_ios.h |
| diff --git a/webrtc/modules/audio_device/dummy/audio_device_dummy.h b/webrtc/modules/audio_device/ios/audio_device_not_implemented_ios.h |
| similarity index 65% |
| copy from webrtc/modules/audio_device/dummy/audio_device_dummy.h |
| copy to webrtc/modules/audio_device/ios/audio_device_not_implemented_ios.h |
| index 75c599e69d7fb9f191904e2ac28862c4005e7705..69b25e28424e39437678d89f5c4af9728d8a6f39 100644 |
| --- a/webrtc/modules/audio_device/dummy/audio_device_dummy.h |
| +++ b/webrtc/modules/audio_device/ios/audio_device_not_implemented_ios.h |
| @@ -1,5 +1,5 @@ |
| /* |
| - * Copyright (c) 2012 The WebRTC project authors. All Rights Reserved. |
| + * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. |
|
tkchin_webrtc
2015/07/06 03:46:28
ditto don't change copyright years
henrika_webrtc
2015/07/07 16:01:38
Please note that this file is new. Not sure why we
tkchin_webrtc
2015/07/08 19:41:13
whoops, my bad.
|
| * |
| * Use of this source code is governed by a BSD-style license |
| * that can be found in the LICENSE file in the root of the source |
| @@ -8,30 +8,31 @@ |
| * be found in the AUTHORS file in the root of the source tree. |
| */ |
| -#ifndef WEBRTC_AUDIO_DEVICE_AUDIO_DEVICE_DUMMY_H |
| -#define WEBRTC_AUDIO_DEVICE_AUDIO_DEVICE_DUMMY_H |
| - |
| -#include <stdio.h> |
| +#ifndef WEBRTC_AUDIO_DEVICE_AUDIO_DEVICE_NOT_IMPLEMENTED_IOS_H |
| +#define WEBRTC_AUDIO_DEVICE_AUDIO_DEVICE_NOT_IMPLEMENTED_IOS_H |
| #include "webrtc/modules/audio_device/audio_device_generic.h" |
| namespace webrtc { |
| -class AudioDeviceDummy : public AudioDeviceGeneric { |
| +// AudioDeviceNotImplementedIOS contains default implementations of all methods |
| +// in the webrtc::AudioDeviceModule which are currently not supported for iOS. |
| +// The real implementation is in AudioDeviceIOS and it derives from this class. |
| +// The main purpose of breaking out non-implemented methods into a separate |
| +// unit is to make AudioDeviceIOS more readable and easier to maintain. |
| +class AudioDeviceNotImplementedIOS : public AudioDeviceGeneric { |
|
tkchin_webrtc
2015/07/06 03:46:28
Instead of introducing an intermediate abstract cl
henrika_webrtc
2015/07/07 16:01:38
Forgive me for being lazy here but I was advised t
tkchin_webrtc
2015/07/08 19:41:14
I think intermediate class makes sense if there ar
henrika_webrtc
2015/07/09 12:58:01
Nop. Will remove this class ;-)
|
| public: |
| - AudioDeviceDummy(const int32_t id) {} |
| - virtual ~AudioDeviceDummy() {} |
| - |
| - // Retrieve the currently utilized audio layer |
| - int32_t ActiveAudioLayer( |
| - AudioDeviceModule::AudioLayer& audioLayer) const override; |
| + AudioDeviceNotImplementedIOS(); |
| - // Main initializaton and termination |
| - int32_t Init() override; |
| - int32_t Terminate() override; |
| - bool Initialized() const override; |
| - |
| - // Device enumeration |
| + // Methods in webrtc::AudioDeviceModule which are not yet implemented. |
| + // The idea is that we can move methods from this class to the real |
| + // implementation in AudioDeviceIOS when needed. |
| + int32_t ActiveAudioLayer(AudioDeviceModule::AudioLayer& audioLayer) const; |
| + int32_t ResetAudioDevice() override; |
| + int32_t PlayoutIsAvailable(bool& available) override; |
| + int32_t RecordingIsAvailable(bool& available) override; |
| + int32_t SetAGC(bool enable) override; |
| + bool AGC() const override; |
| int16_t PlayoutDevices() override; |
| int16_t RecordingDevices() override; |
| int32_t PlayoutDeviceName(uint16_t index, |
| @@ -40,108 +41,62 @@ class AudioDeviceDummy : public AudioDeviceGeneric { |
| int32_t RecordingDeviceName(uint16_t index, |
| char name[kAdmMaxDeviceNameSize], |
| char guid[kAdmMaxGuidSize]) override; |
| - |
| - // Device selection |
| int32_t SetPlayoutDevice(uint16_t index) override; |
| int32_t SetPlayoutDevice( |
| AudioDeviceModule::WindowsDeviceType device) override; |
| int32_t SetRecordingDevice(uint16_t index) override; |
| int32_t SetRecordingDevice( |
| AudioDeviceModule::WindowsDeviceType device) override; |
| - |
| - // Audio transport initialization |
| - int32_t PlayoutIsAvailable(bool& available) override; |
| - int32_t InitPlayout() override; |
| - bool PlayoutIsInitialized() const override; |
| - int32_t RecordingIsAvailable(bool& available) override; |
| - int32_t InitRecording() override; |
| - bool RecordingIsInitialized() const override; |
| - |
| - // Audio transport control |
| - int32_t StartPlayout() override; |
| - int32_t StopPlayout() override; |
| - bool Playing() const override; |
| - int32_t StartRecording() override; |
| - int32_t StopRecording() override; |
| - bool Recording() const override; |
| - |
| - // Microphone Automatic Gain Control (AGC) |
| - int32_t SetAGC(bool enable) override; |
| - bool AGC() const override; |
| - |
| - // Volume control based on the Windows Wave API (Windows only) |
| int32_t SetWaveOutVolume(uint16_t volumeLeft, uint16_t volumeRight) override; |
| int32_t WaveOutVolume(uint16_t& volumeLeft, |
| uint16_t& volumeRight) const override; |
| - |
| - // Audio mixer initialization |
| int32_t InitSpeaker() override; |
| bool SpeakerIsInitialized() const override; |
| int32_t InitMicrophone() override; |
| bool MicrophoneIsInitialized() const override; |
| - |
| - // Speaker volume controls |
| int32_t SpeakerVolumeIsAvailable(bool& available) override; |
| int32_t SetSpeakerVolume(uint32_t volume) override; |
| int32_t SpeakerVolume(uint32_t& volume) const override; |
| int32_t MaxSpeakerVolume(uint32_t& maxVolume) const override; |
| int32_t MinSpeakerVolume(uint32_t& minVolume) const override; |
| int32_t SpeakerVolumeStepSize(uint16_t& stepSize) const override; |
| - |
| - // Microphone volume controls |
| int32_t MicrophoneVolumeIsAvailable(bool& available) override; |
| int32_t SetMicrophoneVolume(uint32_t volume) override; |
| int32_t MicrophoneVolume(uint32_t& volume) const override; |
| int32_t MaxMicrophoneVolume(uint32_t& maxVolume) const override; |
| int32_t MinMicrophoneVolume(uint32_t& minVolume) const override; |
| int32_t MicrophoneVolumeStepSize(uint16_t& stepSize) const override; |
| - |
| - // Speaker mute control |
| - int32_t SpeakerMuteIsAvailable(bool& available) override; |
| - int32_t SetSpeakerMute(bool enable) override; |
| - int32_t SpeakerMute(bool& enabled) const override; |
| - |
| - // Microphone mute control |
| int32_t MicrophoneMuteIsAvailable(bool& available) override; |
| int32_t SetMicrophoneMute(bool enable) override; |
| int32_t MicrophoneMute(bool& enabled) const override; |
| - |
| - // Microphone boost control |
| + int32_t SpeakerMuteIsAvailable(bool& available) override; |
| + int32_t SetSpeakerMute(bool enable) override; |
| + int32_t SpeakerMute(bool& enabled) const override; |
| int32_t MicrophoneBoostIsAvailable(bool& available) override; |
| int32_t SetMicrophoneBoost(bool enable) override; |
| int32_t MicrophoneBoost(bool& enabled) const override; |
| - |
| - // Stereo support |
| int32_t StereoPlayoutIsAvailable(bool& available) override; |
| int32_t SetStereoPlayout(bool enable) override; |
| int32_t StereoPlayout(bool& enabled) const override; |
| int32_t StereoRecordingIsAvailable(bool& available) override; |
| int32_t SetStereoRecording(bool enable) override; |
| int32_t StereoRecording(bool& enabled) const override; |
| - |
| - // Delay information and control |
| int32_t SetPlayoutBuffer(const AudioDeviceModule::BufferType type, |
| uint16_t sizeMS) override; |
| - int32_t PlayoutBuffer(AudioDeviceModule::BufferType& type, |
| - uint16_t& sizeMS) const override; |
| - int32_t PlayoutDelay(uint16_t& delayMS) const override; |
| - int32_t RecordingDelay(uint16_t& delayMS) const override; |
| - |
| - // CPU load |
| int32_t CPULoad(uint16_t& load) const override; |
| - |
| bool PlayoutWarning() const override; |
| bool PlayoutError() const override; |
| bool RecordingWarning() const override; |
| bool RecordingError() const override; |
| - void ClearPlayoutWarning() override; |
| - void ClearPlayoutError() override; |
| - void ClearRecordingWarning() override; |
| - void ClearRecordingError() override; |
| + void ClearPlayoutWarning() override{}; |
| + void ClearPlayoutError() override{}; |
| + void ClearRecordingWarning() override{}; |
| + void ClearRecordingError() override{}; |
| - void AttachAudioBuffer(AudioDeviceBuffer* audioBuffer) override; |
| + protected: |
| + ~AudioDeviceNotImplementedIOS() {} |
| }; |
| } // namespace webrtc |
| -#endif // WEBRTC_AUDIO_DEVICE_AUDIO_DEVICE_DUMMY_H |
| +#endif // WEBRTC_AUDIO_DEVICE_AUDIO_DEVICE_NOT_IMPLEMENTED_IOS_H |