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

Side by Side Diff: webrtc/modules/audio_processing/processing_component.cc

Issue 1772553002: Removed the ProcessingComponent class (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@RemoveComponentFromAGC_CL
Patch Set: Fixed changed include Created 4 years, 9 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
OLDNEW
(Empty)
1 /*
2 * Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
3 *
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
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
11 #include "webrtc/modules/audio_processing/processing_component.h"
12
13 #include <assert.h>
14
15 #include "webrtc/modules/audio_processing/include/audio_processing.h"
16
17 namespace webrtc {
18
19 ProcessingComponent::ProcessingComponent()
20 : initialized_(false),
21 enabled_(false),
22 num_handles_(0) {}
23
24 ProcessingComponent::~ProcessingComponent() {
25 assert(initialized_ == false);
26 }
27
28 int ProcessingComponent::Destroy() {
29 while (!handles_.empty()) {
30 DestroyHandle(handles_.back());
31 handles_.pop_back();
32 }
33 initialized_ = false;
34
35 return AudioProcessing::kNoError;
36 }
37
38 int ProcessingComponent::EnableComponent(bool enable) {
39 if (enable && !enabled_) {
40 enabled_ = enable; // Must be set before Initialize() is called.
41
42 int err = Initialize();
43 if (err != AudioProcessing::kNoError) {
44 enabled_ = false;
45 return err;
46 }
47 } else {
48 enabled_ = enable;
49 }
50
51 return AudioProcessing::kNoError;
52 }
53
54 bool ProcessingComponent::is_component_enabled() const {
55 return enabled_;
56 }
57
58 void* ProcessingComponent::handle(size_t index) const {
59 assert(index < num_handles_);
60 return handles_[index];
61 }
62
63 size_t ProcessingComponent::num_handles() const {
64 return num_handles_;
65 }
66
67 int ProcessingComponent::Initialize() {
68 if (!enabled_) {
69 return AudioProcessing::kNoError;
70 }
71
72 num_handles_ = num_handles_required();
73 if (num_handles_ > handles_.size()) {
74 handles_.resize(num_handles_, NULL);
75 }
76
77 assert(handles_.size() >= num_handles_);
78 for (size_t i = 0; i < num_handles_; i++) {
79 if (handles_[i] == NULL) {
80 handles_[i] = CreateHandle();
81 if (handles_[i] == NULL) {
82 return AudioProcessing::kCreationFailedError;
83 }
84 }
85
86 int err = InitializeHandle(handles_[i]);
87 if (err != AudioProcessing::kNoError) {
88 return GetHandleError(handles_[i]);
89 }
90 }
91
92 initialized_ = true;
93 return Configure();
94 }
95
96 int ProcessingComponent::Configure() {
97 if (!initialized_) {
98 return AudioProcessing::kNoError;
99 }
100
101 assert(handles_.size() >= num_handles_);
102 for (size_t i = 0; i < num_handles_; i++) {
103 int err = ConfigureHandle(handles_[i]);
104 if (err != AudioProcessing::kNoError) {
105 return GetHandleError(handles_[i]);
106 }
107 }
108
109 return AudioProcessing::kNoError;
110 }
111 } // namespace webrtc
OLDNEW
« no previous file with comments | « webrtc/modules/audio_processing/processing_component.h ('k') | webrtc/modules/audio_processing/render_queue_item_verifier.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698