LeviLamina
Loading...
Searching...
No Matches
EchoControl.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated forward declare list
6// clang-format off
7namespace webrtc { class AudioBuffer; }
8// clang-format on
9
10namespace webrtc {
11
13public:
14 // EchoControl inner types declare
15 // clang-format off
16 struct Metrics;
17 // clang-format on
18
19 // EchoControl inner types define
20 struct Metrics {
21 public:
22 // member variables
23 // NOLINTBEGIN
27 // NOLINTEND
28
29 public:
30 // prevent constructor by default
31 Metrics& operator=(Metrics const&);
32 Metrics(Metrics const&);
33 Metrics();
34 };
35
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 virtual void AnalyzeRender(::webrtc::AudioBuffer*) = 0;
40
41 virtual void AnalyzeCapture(::webrtc::AudioBuffer*) = 0;
42
43 virtual void ProcessCapture(::webrtc::AudioBuffer*, bool) = 0;
44
45 virtual void ProcessCapture(::webrtc::AudioBuffer*, ::webrtc::AudioBuffer*, bool) = 0;
46
47 virtual ::webrtc::EchoControl::Metrics GetMetrics() const = 0;
48
49 virtual void SetAudioBufferDelay(int) = 0;
50
51 virtual void SetCaptureOutputUsage(bool);
52
53 virtual bool ActiveProcessing() const = 0;
54
55 virtual ~EchoControl() = default;
56 // NOLINTEND
57
58public:
59 // virtual function thunks
60 // NOLINTBEGIN
61
62 // NOLINTEND
63};
64
65} // namespace webrtc
Definition AudioBuffer.h:7
Definition EchoControl.h:12
Definition Alias.h:14
Definition EchoControl.h:20