Chromium Code Reviews| Index: webrtc/modules/audio_processing/high_pass_filter_impl.h |
| diff --git a/webrtc/modules/audio_processing/high_pass_filter_impl.h b/webrtc/modules/audio_processing/high_pass_filter_impl.h |
| index 6f8079e32cba2a52a016e581b2242583dcc6c39f..7608fccd166f15ad1823a6469fb4de5b3297d1eb 100644 |
| --- a/webrtc/modules/audio_processing/high_pass_filter_impl.h |
| +++ b/webrtc/modules/audio_processing/high_pass_filter_impl.h |
| @@ -12,39 +12,31 @@ |
| #define WEBRTC_MODULES_AUDIO_PROCESSING_HIGH_PASS_FILTER_IMPL_H_ |
| #include "webrtc/base/criticalsection.h" |
| +#include "webrtc/base/scoped_ptr.h" |
| #include "webrtc/modules/audio_processing/include/audio_processing.h" |
| -#include "webrtc/modules/audio_processing/processing_component.h" |
| namespace webrtc { |
| class AudioBuffer; |
| -class HighPassFilterImpl : public HighPassFilter, |
| - public ProcessingComponent { |
| +class HighPassFilterImpl : public HighPassFilter { |
| public: |
| - HighPassFilterImpl(const AudioProcessing* apm, rtc::CriticalSection* crit); |
| - virtual ~HighPassFilterImpl(); |
| + explicit HighPassFilterImpl(rtc::CriticalSection* crit); |
| + ~HighPassFilterImpl() override; |
| - int ProcessCaptureAudio(AudioBuffer* audio); |
| + // TODO(peah): Fold into ctor, once public API is removed. |
| + void Initialize(int channels, int sample_rate_hz); |
| + void ProcessCaptureAudio(AudioBuffer* audio); |
| // HighPassFilter implementation. |
| + int Enable(bool enable) override; |
| bool is_enabled() const override; |
| private: |
| - // HighPassFilter implementation. |
| - int Enable(bool enable) override; |
| - |
| - // ProcessingComponent implementation. |
| - void* CreateHandle() const override; |
| - int InitializeHandle(void* handle) const override; |
| - int ConfigureHandle(void* handle) const override; |
| - void DestroyHandle(void* handle) const override; |
| - int num_handles_required() const override; |
| - int GetHandleError(void* handle) const override; |
| - |
| - const AudioProcessing* apm_; |
| - |
| - rtc::CriticalSection* const crit_; |
| + class MonoFilter; |
| + std::vector<rtc::scoped_ptr<MonoFilter>> filters_; |
|
hlundin-webrtc
2015/12/04 12:30:09
Shouldn't filters_ be GUARDED_BY(crit_)?
the sun
2015/12/04 14:53:31
Done.
peah-webrtc
2015/12/08 14:52:27
We should have an inclusion guard for filters_ as
the sun
2015/12/08 15:08:05
Done.
|
| + rtc::CriticalSection* const crit_ = nullptr; |
| + bool enabled_ GUARDED_BY(crit_) = false; |
| }; |
| } // namespace webrtc |