3#include "mc/_HeaderOutputPredefine.h"
6#include "mc/external/rtc/SSLRole.h"
7#include "mc/external/webrtc/DataChannelInterface.h"
8#include "mc/external/webrtc/DataChannelSink.h"
9#include "mc/external/webrtc/DataMessageType.h"
10#include "mc/external/webrtc/RTCErrorOr.h"
11#include "mc/external/webrtc/SctpDataChannelControllerInterface.h"
12#include "mc/external/webrtc/scoped_refptr.h"
32 enum class DataChannelUsage : uchar {
52 DataChannelController& operator=(DataChannelController
const&);
53 DataChannelController(DataChannelController
const&);
54 DataChannelController();
59 virtual ~DataChannelController() ;
61 virtual ::webrtc::RTCError SendData(
71 virtual void OnChannelStateChanged(
73 ::webrtc::DataChannelInterface::DataState state
85 virtual void OnChannelClosing(
int channel_id) ;
87 virtual void OnChannelClosed(
int channel_id) ;
89 virtual void OnReadyToSend() ;
93 virtual void OnBufferedAmountLow(
int channel_id) ;
101 MCNAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::SctpDataChannel>>
113 MCNAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::DataChannelInterface>>
123 MCNAPI ::webrtc::RTCError
124 ReserveOrAllocateSid(::std::optional<::webrtc::StreamId>& sid, ::std::optional<::rtc::SSLRole> fallback_ssl_role);
142 MCNAPI ::webrtc::RTCError
Definition CopyOnWriteBuffer.h:11
MCAPI void $OnTransportClosed(::webrtc::RTCError error)
MCAPI void $AddSctpDataStream(::webrtc::StreamId sid)
MCAPI void SetupDataChannelTransport_n(::webrtc::DataChannelTransportInterface *transport)
MCAPI uint64 $buffered_amount_low_threshold(::webrtc::StreamId sid) const
MCAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::DataChannelInterface > > InternalCreateDataChannelWithProxy(::std::string const &label, ::webrtc::InternalDataChannelInit const &config)
MCAPI::webrtc::RTCError $SendData(::webrtc::StreamId sid, ::webrtc::SendDataParams const ¶ms, ::rtc::CopyOnWriteBuffer const &payload)
MCAPI void TeardownDataChannelTransport_n(::webrtc::RTCError error)
MCAPI ::webrtc::RTCErrorOr<::webrtc::scoped_refptr<::webrtc::SctpDataChannel > > CreateDataChannel(::std::string const &label, ::webrtc::InternalDataChannelInit &config)
MCAPI void $SetBufferedAmountLowThreshold(::webrtc::StreamId sid, uint64 bytes)
MCAPI ::std::vector<::webrtc::DataChannelStats > GetDataChannelStats() const
MCAPI bool HandleOpenMessage_n(int channel_id, ::webrtc::DataMessageType type, ::rtc::CopyOnWriteBuffer const &buffer)
static MCAPI void ** $vftableForSctpDataChannelControllerInterface()
MCAPI void OnTransportChanged(::webrtc::DataChannelTransportInterface *new_data_channel_transport)
static MCAPI void ** $vftableForDataChannelSink()
MCAPI void $OnChannelClosing(int channel_id)
MCAPI void $OnReadyToSend()
MCAPI uint64 $buffered_amount(::webrtc::StreamId sid) const
MCAPI bool HasDataChannels() const
MCAPI void $OnChannelStateChanged(::webrtc::SctpDataChannel *channel, ::webrtc::DataChannelInterface::DataState state)
MCAPI void $RemoveSctpDataStream(::webrtc::StreamId sid)
MCAPI void set_data_channel_transport(::webrtc::DataChannelTransportInterface *transport)
MCAPI void $OnDataReceived(int channel_id, ::webrtc::DataMessageType type, ::rtc::CopyOnWriteBuffer const &buffer)
MCAPI void OnDataChannelOpenMessage(::webrtc::scoped_refptr<::webrtc::SctpDataChannel > channel, bool ready_to_send)
MCAPI::webrtc::RTCError ReserveOrAllocateSid(::std::optional<::webrtc::StreamId > &sid, ::std::optional<::rtc::SSLRole > fallback_ssl_role)
MCAPI void AllocateSctpSids(::rtc::SSLRole role)
MCAPI bool HasUsedDataChannels() const
MCAPI void PrepareForShutdown()
MCAPI void $OnChannelClosed(int channel_id)
MCAPI void $OnBufferedAmountLow(int channel_id)
Definition DataChannelInterface.h:19
Definition DataChannelSink.h:16
Definition DataChannelTransportInterface.h:15
Definition SctpDataChannelControllerInterface.h:19
Definition SctpDataChannel.h:29
Definition scoped_refptr.h:8
Definition DataChannelStats.h:7
Definition InternalDataChannelInit.h:10
Definition SendDataParams.h:7