LeviLamina
Loading...
Searching...
No Matches
DataChannelController.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/external/rtc/SSLRole.h"
7#include "mc/external/webrtc/DataMessageType.h"
8#include "mc/external/webrtc/RTCErrorOr.h"
9#include "mc/external/webrtc/scoped_refptr.h"
10
11// auto generated forward declare list
12// clang-format off
13namespace rtc { class CopyOnWriteBuffer; }
14namespace rtc { class Thread; }
15namespace webrtc { class DataChannelInterface; }
16namespace webrtc { class DataChannelTransportInterface; }
17namespace webrtc { class RTCError; }
18namespace webrtc { class SctpDataChannel; }
19namespace webrtc { class StreamId; }
20namespace webrtc { struct DataChannelStats; }
21namespace webrtc { struct InternalDataChannelInit; }
22// clang-format on
23
24namespace webrtc {
25
27public:
28 // member functions
29 // NOLINTBEGIN
30 MCAPI void AllocateSctpSids(::rtc::SSLRole);
31
32 MCAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::SctpDataChannel>>
33 CreateDataChannel(::std::string const&, ::webrtc::InternalDataChannelInit&);
34
35 MCAPI ::std::vector<::webrtc::DataChannelStats> GetDataChannelStats() const;
36
37 MCAPI bool HandleOpenMessage_n(int, ::webrtc::DataMessageType, ::rtc::CopyOnWriteBuffer const&);
38
39 MCAPI bool HasDataChannels() const;
40
41 MCAPI bool HasUsedDataChannels() const;
42
43 MCAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::DataChannelInterface>>
44 InternalCreateDataChannelWithProxy(::std::string const&, ::webrtc::InternalDataChannelInit const&);
45
46 MCAPI void NotifyDataChannelsOfTransportCreated();
47
48 MCAPI void OnDataChannelOpenMessage(::webrtc::scoped_refptr<::webrtc::SctpDataChannel>, bool);
49
50 MCAPI void OnSctpDataChannelClosed(::webrtc::SctpDataChannel*);
51
52 MCAPI void OnTransportChanged(::webrtc::DataChannelTransportInterface*);
53
54 MCAPI void PrepareForShutdown();
55
56 MCAPI ::webrtc::RTCError
57 ReserveOrAllocateSid(::std::optional<::webrtc::StreamId>&, ::std::optional<::rtc::SSLRole>);
58
59 MCAPI void SetupDataChannelTransport_n(::webrtc::DataChannelTransportInterface*);
60
61 MCAPI void TeardownDataChannelTransport_n(::webrtc::RTCError);
62
63 MCAPI ::rtc::Thread* network_thread() const;
64
65 MCAPI void set_data_channel_transport(::webrtc::DataChannelTransportInterface*);
66
67 MCAPI ::rtc::Thread* signaling_thread() const;
68 // NOLINTEND
69
70public:
71 // vftables
72 // NOLINTBEGIN
73 MCAPI static void** $vftableForDataChannelSink();
74
75 MCAPI static void** $vftableForSctpDataChannelControllerInterface();
76 // NOLINTEND
77};
78
79} // namespace webrtc
Definition CopyOnWriteBuffer.h:11
Definition DataChannelController.h:26
Definition DataChannelTransportInterface.h:7
Definition RTCError.h:10
Definition SctpDataChannel.h:28
Definition scoped_refptr.h:8
Definition InternalDataChannelInit.h:12