LeviLamina
Loading...
Searching...
No Matches
ChannelInterface.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/webrtc/MediaType.h"
7#include "mc/external/webrtc/SdpType.h"
8
9// auto generated forward declare list
10// clang-format off
11namespace webrtc { class MediaContentDescription; }
12namespace webrtc { class MediaReceiveChannelInterface; }
13namespace webrtc { class MediaSendChannelInterface; }
14namespace webrtc { class RtpTransportInternal; }
15namespace webrtc { class VideoChannel; }
16namespace webrtc { class VideoMediaReceiveChannelInterface; }
17namespace webrtc { class VideoMediaSendChannelInterface; }
18namespace webrtc { class VoiceChannel; }
19namespace webrtc { class VoiceMediaReceiveChannelInterface; }
20namespace webrtc { class VoiceMediaSendChannelInterface; }
21namespace webrtc { struct StreamParams; }
22// clang-format on
23
24namespace webrtc {
25
27public:
28 // virtual functions
29 // NOLINTBEGIN
30 virtual ~ChannelInterface() = default;
31
32 virtual ::webrtc::MediaType media_type() const = 0;
33
34 virtual ::webrtc::VideoChannel* AsVideoChannel() = 0;
35
36 virtual ::webrtc::VoiceChannel* AsVoiceChannel() = 0;
37
38 virtual ::webrtc::MediaSendChannelInterface* media_send_channel() = 0;
39
40 virtual ::webrtc::VideoMediaSendChannelInterface* video_media_send_channel() = 0;
41
42 virtual ::webrtc::VoiceMediaSendChannelInterface* voice_media_send_channel() = 0;
43
44 virtual ::webrtc::MediaReceiveChannelInterface* media_receive_channel() = 0;
45
46 virtual ::webrtc::VideoMediaReceiveChannelInterface* video_media_receive_channel() = 0;
47
48 virtual ::webrtc::VoiceMediaReceiveChannelInterface* voice_media_receive_channel() = 0;
49
50 virtual ::std::string_view transport_name() const = 0;
51
52 virtual ::std::string const& mid() const = 0;
53
54 virtual void Enable(bool enable) = 0;
55
56 virtual void SetFirstPacketReceivedCallback(::std::function<void()> callback) = 0;
57
58 virtual void SetFirstPacketSentCallback(::std::function<void()> callback) = 0;
59
60 virtual bool SetLocalContent(
62 ::webrtc::SdpType type,
63 ::std::string& error_desc
64 ) = 0;
65
66 virtual bool SetRemoteContent(
68 ::webrtc::SdpType type,
69 ::std::string& error_desc
70 ) = 0;
71
72 virtual bool SetPayloadTypeDemuxingEnabled(bool enabled) = 0;
73
74 virtual ::std::vector<::webrtc::StreamParams> const& local_streams() const = 0;
75
76 virtual ::std::vector<::webrtc::StreamParams> const& remote_streams() const = 0;
77
78 virtual bool SetRtpTransport(::webrtc::RtpTransportInternal* rtp_transport) = 0;
79 // NOLINTEND
80};
81
82} // namespace webrtc
Definition ChannelInterface.h:26
Definition MediaContentDescription.h:20
Definition MediaReceiveChannelInterface.h:22
Definition MediaSendChannelInterface.h:28
Definition RtpTransportInternal.h:21
Definition VideoChannel.h:24
Definition VideoMediaReceiveChannelInterface.h:23
Definition VideoMediaSendChannelInterface.h:21
Definition VoiceChannel.h:24
Definition VoiceMediaReceiveChannelInterface.h:20
Definition VoiceMediaSendChannelInterface.h:18
Definition StreamParams.h:12