Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(144)

Side by Side Diff: webrtc/common_audio/fir_filter.cc

Issue 1726043002: Revert of Replace scoped_ptr with unique_ptr in webrtc/common_audio/ (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « webrtc/common_audio/channel_buffer.cc ('k') | webrtc/common_audio/fir_filter_neon.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2014 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
11 #include "webrtc/common_audio/fir_filter.h" 11 #include "webrtc/common_audio/fir_filter.h"
12 12
13 #include <assert.h> 13 #include <assert.h>
14 #include <string.h> 14 #include <string.h>
15 15
16 #include <memory> 16 #include "webrtc/base/scoped_ptr.h"
17
18 #include "webrtc/common_audio/fir_filter_neon.h" 17 #include "webrtc/common_audio/fir_filter_neon.h"
19 #include "webrtc/common_audio/fir_filter_sse.h" 18 #include "webrtc/common_audio/fir_filter_sse.h"
20 #include "webrtc/system_wrappers/include/cpu_features_wrapper.h" 19 #include "webrtc/system_wrappers/include/cpu_features_wrapper.h"
21 20
22 namespace webrtc { 21 namespace webrtc {
23 22
24 class FIRFilterC : public FIRFilter { 23 class FIRFilterC : public FIRFilter {
25 public: 24 public:
26 FIRFilterC(const float* coefficients, 25 FIRFilterC(const float* coefficients,
27 size_t coefficients_length); 26 size_t coefficients_length);
28 27
29 void Filter(const float* in, size_t length, float* out) override; 28 void Filter(const float* in, size_t length, float* out) override;
30 29
31 private: 30 private:
32 size_t coefficients_length_; 31 size_t coefficients_length_;
33 size_t state_length_; 32 size_t state_length_;
34 std::unique_ptr<float[]> coefficients_; 33 rtc::scoped_ptr<float[]> coefficients_;
35 std::unique_ptr<float[]> state_; 34 rtc::scoped_ptr<float[]> state_;
36 }; 35 };
37 36
38 FIRFilter* FIRFilter::Create(const float* coefficients, 37 FIRFilter* FIRFilter::Create(const float* coefficients,
39 size_t coefficients_length, 38 size_t coefficients_length,
40 size_t max_input_length) { 39 size_t max_input_length) {
41 if (!coefficients || coefficients_length <= 0 || max_input_length <= 0) { 40 if (!coefficients || coefficients_length <= 0 || max_input_length <= 0) {
42 assert(false); 41 assert(false);
43 return NULL; 42 return NULL;
44 } 43 }
45 44
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
108 state_.get(), &in[length - state_length_], state_length_ * sizeof(*in)); 107 state_.get(), &in[length - state_length_], state_length_ * sizeof(*in));
109 } else { 108 } else {
110 memmove(state_.get(), 109 memmove(state_.get(),
111 &state_[length], 110 &state_[length],
112 (state_length_ - length) * sizeof(state_[0])); 111 (state_length_ - length) * sizeof(state_[0]));
113 memcpy(&state_[state_length_ - length], in, length * sizeof(*in)); 112 memcpy(&state_[state_length_ - length], in, length * sizeof(*in));
114 } 113 }
115 } 114 }
116 115
117 } // namespace webrtc 116 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/common_audio/channel_buffer.cc ('k') | webrtc/common_audio/fir_filter_neon.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698