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

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

Issue 1712513002: Replace scoped_ptr with unique_ptr in webrtc/common_audio/ (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: rebase 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 "webrtc/base/scoped_ptr.h" 16 #include <memory>
17
17 #include "webrtc/common_audio/fir_filter_neon.h" 18 #include "webrtc/common_audio/fir_filter_neon.h"
18 #include "webrtc/common_audio/fir_filter_sse.h" 19 #include "webrtc/common_audio/fir_filter_sse.h"
19 #include "webrtc/system_wrappers/include/cpu_features_wrapper.h" 20 #include "webrtc/system_wrappers/include/cpu_features_wrapper.h"
20 21
21 namespace webrtc { 22 namespace webrtc {
22 23
23 class FIRFilterC : public FIRFilter { 24 class FIRFilterC : public FIRFilter {
24 public: 25 public:
25 FIRFilterC(const float* coefficients, 26 FIRFilterC(const float* coefficients,
26 size_t coefficients_length); 27 size_t coefficients_length);
27 28
28 void Filter(const float* in, size_t length, float* out) override; 29 void Filter(const float* in, size_t length, float* out) override;
29 30
30 private: 31 private:
31 size_t coefficients_length_; 32 size_t coefficients_length_;
32 size_t state_length_; 33 size_t state_length_;
33 rtc::scoped_ptr<float[]> coefficients_; 34 std::unique_ptr<float[]> coefficients_;
34 rtc::scoped_ptr<float[]> state_; 35 std::unique_ptr<float[]> state_;
35 }; 36 };
36 37
37 FIRFilter* FIRFilter::Create(const float* coefficients, 38 FIRFilter* FIRFilter::Create(const float* coefficients,
38 size_t coefficients_length, 39 size_t coefficients_length,
39 size_t max_input_length) { 40 size_t max_input_length) {
40 if (!coefficients || coefficients_length <= 0 || max_input_length <= 0) { 41 if (!coefficients || coefficients_length <= 0 || max_input_length <= 0) {
41 assert(false); 42 assert(false);
42 return NULL; 43 return NULL;
43 } 44 }
44 45
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
107 state_.get(), &in[length - state_length_], state_length_ * sizeof(*in)); 108 state_.get(), &in[length - state_length_], state_length_ * sizeof(*in));
108 } else { 109 } else {
109 memmove(state_.get(), 110 memmove(state_.get(),
110 &state_[length], 111 &state_[length],
111 (state_length_ - length) * sizeof(state_[0])); 112 (state_length_ - length) * sizeof(state_[0]));
112 memcpy(&state_[state_length_ - length], in, length * sizeof(*in)); 113 memcpy(&state_[state_length_ - length], in, length * sizeof(*in));
113 } 114 }
114 } 115 }
115 116
116 } // namespace webrtc 117 } // 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