LeviLamina
Loading...
Searching...
No Matches
RemoteAudioSource.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/webrtc/AudioSinkInterface.h"
7#include "mc/external/webrtc/AudioSourceInterface.h"
8#include "mc/external/webrtc/MediaSourceInterface.h"
9#include "mc/external/webrtc/Notifier.h"
10
11// auto generated forward declare list
12// clang-format off
13namespace cricket { class VoiceMediaReceiveChannelInterface; }
14namespace webrtc { class AudioTrackSinkInterface; }
15namespace webrtc { class TaskQueueBase; }
16// clang-format on
17
18namespace webrtc {
19
20class RemoteAudioSource : public ::webrtc::Notifier<::webrtc::AudioSourceInterface> {
21public:
22 // RemoteAudioSource inner types declare
23 // clang-format off
24 class AudioDataProxy;
25 // clang-format on
26
27 // RemoteAudioSource inner types define
28 enum class OnAudioChannelGoneAction : int {
29 KSurvive = 0,
30 KEnd = 1,
31 };
32
33 class AudioDataProxy : public ::webrtc::AudioSinkInterface {
34 public:
35 // member variables
36 // NOLINTBEGIN
38 // NOLINTEND
39
40 public:
41 // prevent constructor by default
42 AudioDataProxy& operator=(AudioDataProxy const&);
43 AudioDataProxy(AudioDataProxy const&);
44 AudioDataProxy();
45
46 public:
47 // virtual functions
48 // NOLINTBEGIN
49 virtual ~AudioDataProxy() /*override*/ = default;
50
51 virtual void OnData(::webrtc::AudioSinkInterface::Data const& audio) /*override*/;
52 // NOLINTEND
53
54 public:
55 // virtual function thunks
56 // NOLINTBEGIN
58
59
60 // NOLINTEND
61
62 public:
63 // vftables
64 // NOLINTBEGIN
65 MCNAPI static void** $vftable();
66 // NOLINTEND
67 };
68
69public:
70 // member variables
71 // NOLINTBEGIN
79 // NOLINTEND
80
81public:
82 // prevent constructor by default
83 RemoteAudioSource& operator=(RemoteAudioSource const&);
84 RemoteAudioSource(RemoteAudioSource const&);
85 RemoteAudioSource();
86
87public:
88 // virtual functions
89 // NOLINTBEGIN
90 virtual ::webrtc::MediaSourceInterface::SourceState state() const /*override*/;
91
92 virtual bool remote() const /*override*/;
93
94 virtual void SetVolume(double volume) /*override*/;
95
96 virtual void RegisterAudioObserver(::webrtc::AudioSourceInterface::AudioObserver* observer) /*override*/;
97
98 virtual void UnregisterAudioObserver(::webrtc::AudioSourceInterface::AudioObserver* observer) /*override*/;
99
100 virtual void AddSink(::webrtc::AudioTrackSinkInterface* sink) /*override*/;
101
102 virtual void RemoveSink(::webrtc::AudioTrackSinkInterface* sink) /*override*/;
103
104 virtual ~RemoteAudioSource() /*override*/;
105 // NOLINTEND
106
107public:
108 // member functions
109 // NOLINTBEGIN
110 MCNAPI RemoteAudioSource(
111 ::webrtc::TaskQueueBase* worker_thread,
112 ::webrtc::RemoteAudioSource::OnAudioChannelGoneAction on_audio_channel_gone_action
113 );
114
115 MCNAPI void SetState(::webrtc::MediaSourceInterface::SourceState new_state);
116
117 MCNAPI void Start(::cricket::VoiceMediaReceiveChannelInterface* media_channel, ::std::optional<uint> ssrc);
118
119 MCNAPI void Stop(::cricket::VoiceMediaReceiveChannelInterface* media_channel, ::std::optional<uint> ssrc);
120 // NOLINTEND
121
122public:
123 // constructor thunks
124 // NOLINTBEGIN
125 MCNAPI void* $ctor(
126 ::webrtc::TaskQueueBase* worker_thread,
127 ::webrtc::RemoteAudioSource::OnAudioChannelGoneAction on_audio_channel_gone_action
128 );
129 // NOLINTEND
130
131public:
132 // destructor thunk
133 // NOLINTBEGIN
134 MCNAPI void $dtor();
135 // NOLINTEND
136
137public:
138 // virtual function thunks
139 // NOLINTBEGIN
140 MCNAPI ::webrtc::MediaSourceInterface::SourceState $state() const;
141
142 MCNAPI bool $remote() const;
143
144 MCNAPI void $SetVolume(double volume);
145
146 MCNAPI void $RegisterAudioObserver(::webrtc::AudioSourceInterface::AudioObserver* observer);
147
148 MCNAPI void $UnregisterAudioObserver(::webrtc::AudioSourceInterface::AudioObserver* observer);
149
150 MCNAPI void $AddSink(::webrtc::AudioTrackSinkInterface* sink);
151
152 MCNAPI void $RemoveSink(::webrtc::AudioTrackSinkInterface* sink);
153
154
155 // NOLINTEND
156
157public:
158 // vftables
159 // NOLINTBEGIN
160 MCNAPI static void** $vftableForNotifierInterface();
161
162 MCNAPI static void** $vftableForRefCountInterface();
163 // NOLINTEND
164};
165
166} // namespace webrtc
Definition VoiceMediaReceiveChannelInterface.h:19
Definition AudioSinkInterface.h:7
Definition AudioSourceInterface.h:16
Definition AudioTrackSinkInterface.h:7
Definition MediaSourceInterface.h:11
Definition Notifier.h:8
Definition RemoteAudioSource.h:33
MCAPI void $OnData(::webrtc::AudioSinkInterface::Data const &audio)
MCAPI void * $ctor(::webrtc::TaskQueueBase *worker_thread, ::webrtc::RemoteAudioSource::OnAudioChannelGoneAction on_audio_channel_gone_action)
MCAPI::webrtc::MediaSourceInterface::SourceState $state() const
static MCAPI void ** $vftableForNotifierInterface()
MCAPI void $RemoveSink(::webrtc::AudioTrackSinkInterface *sink)
MCAPI void $AddSink(::webrtc::AudioTrackSinkInterface *sink)
MCAPI void $UnregisterAudioObserver(::webrtc::AudioSourceInterface::AudioObserver *observer)
static MCAPI void ** $vftableForRefCountInterface()
MCAPI void SetState(::webrtc::MediaSourceInterface::SourceState new_state)
MCAPI bool $remote() const
MCAPI void $SetVolume(double volume)
MCAPI void Start(::cricket::VoiceMediaReceiveChannelInterface *media_channel, ::std::optional< uint > ssrc)
MCAPI void Stop(::cricket::VoiceMediaReceiveChannelInterface *media_channel, ::std::optional< uint > ssrc)
MCAPI void $RegisterAudioObserver(::webrtc::AudioSourceInterface::AudioObserver *observer)
Definition TaskQueueBase.h:16
STL namespace.
Definition Alias.h:14
Definition AudioSinkInterface.h:15