webkit  2cdf99a9e3038c7e01b3c37e8ad903ecbe5eecf1
https://github.com/WebKit/webkit
Classes | Public Member Functions | Public Attributes | Protected Member Functions | List of all members
cricket::RtpDataChannel Class Reference

#include <channel.h>

Inheritance diagram for cricket::RtpDataChannel:
cricket::BaseChannel cricket::BaseChannel cricket::ConnectionStatsGetter cricket::MediaChannel::NetworkInterface sigslot::has_slots<> rtc::MessageHandler cricket::ConnectionStatsGetter cricket::MediaChannel::NetworkInterface sigslot::has_slots<> rtc::MessageHandler cricket::ConnectionStatsGetter cricket::MediaChannel::NetworkInterface sigslot::has_slots<> rtc::MessageHandler cricket::ConnectionStatsGetter cricket::MediaChannel::NetworkInterface sigslot::has_slots<> rtc::MessageHandler

Public Member Functions

 RtpDataChannel (rtc::Thread *worker_thread, rtc::Thread *network_thread, rtc::Thread *signaling_thread, DataMediaChannel *channel, const std::string &content_name, bool rtcp_mux_required, bool srtp_required)
 
 ~RtpDataChannel ()
 
bool Init_w (DtlsTransportInternal *rtp_dtls_transport, DtlsTransportInternal *rtcp_dtls_transport, rtc::PacketTransportInternal *rtp_packet_transport, rtc::PacketTransportInternal *rtcp_packet_transport)
 
virtual bool SendData (const SendDataParams &params, const rtc::CopyOnWriteBuffer &payload, SendDataResult *result)
 
void StartMediaMonitor (int cms)
 
void StopMediaMonitor ()
 
bool ready_to_send_data () const
 
cricket::MediaType media_type () override
 
 RtpDataChannel (rtc::Thread *worker_thread, rtc::Thread *network_thread, rtc::Thread *signaling_thread, DataMediaChannel *channel, const std::string &content_name, bool rtcp_mux_required, bool srtp_required)
 
 ~RtpDataChannel ()
 
bool Init_w (DtlsTransportInternal *rtp_dtls_transport, DtlsTransportInternal *rtcp_dtls_transport, rtc::PacketTransportInternal *rtp_packet_transport, rtc::PacketTransportInternal *rtcp_packet_transport)
 
virtual bool SendData (const SendDataParams &params, const rtc::CopyOnWriteBuffer &payload, SendDataResult *result)
 
void StartMediaMonitor (int cms)
 
void StopMediaMonitor ()
 
bool ready_to_send_data () const
 
cricket::MediaType media_type () override
 
- Public Member Functions inherited from cricket::BaseChannel
 BaseChannel (rtc::Thread *worker_thread, rtc::Thread *network_thread, rtc::Thread *signaling_thread, MediaChannel *channel, const std::string &content_name, bool rtcp_mux_required, bool srtp_required)
 
virtual ~BaseChannel ()
 
bool Init_w (DtlsTransportInternal *rtp_dtls_transport, DtlsTransportInternal *rtcp_dtls_transport, rtc::PacketTransportInternal *rtp_packet_transport, rtc::PacketTransportInternal *rtcp_packet_transport)
 
void Deinit ()
 
rtc::Threadworker_thread () const
 
rtc::Threadnetwork_thread () const
 
const std::stringcontent_name () const
 
const std::stringtransport_name () const
 
bool enabled () const
 
bool secure () const
 
bool secure_dtls () const
 
bool writable () const
 
void SetTransports (DtlsTransportInternal *rtp_dtls_transport, DtlsTransportInternal *rtcp_dtls_transport)
 
void SetTransports (rtc::PacketTransportInternal *rtp_packet_transport, rtc::PacketTransportInternal *rtcp_packet_transport)
 
bool PushdownLocalDescription (const SessionDescription *local_desc, ContentAction action, std::string *error_desc)
 
bool PushdownRemoteDescription (const SessionDescription *remote_desc, ContentAction action, std::string *error_desc)
 
bool SetLocalContent (const MediaContentDescription *content, ContentAction action, std::string *error_desc)
 
bool SetRemoteContent (const MediaContentDescription *content, ContentAction action, std::string *error_desc)
 
bool Enable (bool enable)
 
bool AddRecvStream (const StreamParams &sp)
 
bool RemoveRecvStream (uint32_t ssrc)
 
bool AddSendStream (const StreamParams &sp)
 
bool RemoveSendStream (uint32_t ssrc)
 
void StartConnectionMonitor (int cms)
 
void StopConnectionMonitor ()
 
bool GetConnectionStats (ConnectionInfos *infos) override
 
BundleFilterbundle_filter ()
 
const std::vector< StreamParams > & local_streams () const
 
const std::vector< StreamParams > & remote_streams () const
 
void SignalDtlsSrtpSetupFailure_n (bool rtcp)
 
void SignalDtlsSrtpSetupFailure_s (bool rtcp)
 
DtlsTransportInternalrtp_dtls_transport () const
 
DtlsTransportInternalrtcp_dtls_transport () const
 
bool NeedsRtcpTransport ()
 
void SetTransportChannelReadyToSend (bool rtcp, bool ready)
 
int SetOption (SocketType type, rtc::Socket::Option o, int val) override
 
int SetOption_n (SocketType type, rtc::Socket::Option o, int val)
 
SrtpFiltersrtp_filter ()
 
bool SetCryptoOptions (const rtc::CryptoOptions &crypto_options)
 
bool srtp_required_for_testing () const
 
 BaseChannel (rtc::Thread *worker_thread, rtc::Thread *network_thread, rtc::Thread *signaling_thread, MediaChannel *channel, const std::string &content_name, bool rtcp_mux_required, bool srtp_required)
 
virtual ~BaseChannel ()
 
bool Init_w (DtlsTransportInternal *rtp_dtls_transport, DtlsTransportInternal *rtcp_dtls_transport, rtc::PacketTransportInternal *rtp_packet_transport, rtc::PacketTransportInternal *rtcp_packet_transport)
 
void Deinit ()
 
rtc::Threadworker_thread () const
 
rtc::Threadnetwork_thread () const
 
const std::stringcontent_name () const
 
const std::stringtransport_name () const
 
bool enabled () const
 
bool secure () const
 
bool secure_dtls () const
 
bool writable () const
 
void SetTransports (DtlsTransportInternal *rtp_dtls_transport, DtlsTransportInternal *rtcp_dtls_transport)
 
void SetTransports (rtc::PacketTransportInternal *rtp_packet_transport, rtc::PacketTransportInternal *rtcp_packet_transport)
 
bool PushdownLocalDescription (const SessionDescription *local_desc, ContentAction action, std::string *error_desc)
 
bool PushdownRemoteDescription (const SessionDescription *remote_desc, ContentAction action, std::string *error_desc)
 
bool SetLocalContent (const MediaContentDescription *content, ContentAction action, std::string *error_desc)
 
bool SetRemoteContent (const MediaContentDescription *content, ContentAction action, std::string *error_desc)
 
bool Enable (bool enable)
 
bool AddRecvStream (const StreamParams &sp)
 
bool RemoveRecvStream (uint32_t ssrc)
 
bool AddSendStream (const StreamParams &sp)
 
bool RemoveSendStream (uint32_t ssrc)
 
void StartConnectionMonitor (int cms)
 
void StopConnectionMonitor ()
 
bool GetConnectionStats (ConnectionInfos *infos) override
 
BundleFilterbundle_filter ()
 
const std::vector< StreamParams > & local_streams () const
 
const std::vector< StreamParams > & remote_streams () const
 
void SignalDtlsSrtpSetupFailure_n (bool rtcp)
 
void SignalDtlsSrtpSetupFailure_s (bool rtcp)
 
DtlsTransportInternalrtp_dtls_transport () const
 
DtlsTransportInternalrtcp_dtls_transport () const
 
bool NeedsRtcpTransport ()
 
void SetTransportChannelReadyToSend (bool rtcp, bool ready)
 
int SetOption (SocketType type, rtc::Socket::Option o, int val) override
 
int SetOption_n (SocketType type, rtc::Socket::Option o, int val)
 
SrtpFiltersrtp_filter ()
 
bool SetCryptoOptions (const rtc::CryptoOptions &crypto_options)
 
bool srtp_required_for_testing () const
 
- Public Member Functions inherited from rtc::MessageHandler
virtual WEBRTC_DYLIB_EXPORT ~MessageHandler ()
 
virtual WEBRTC_DYLIB_EXPORT ~MessageHandler ()
 
- Public Member Functions inherited from sigslot::has_slots<>
 has_slots ()
 
 has_slots ()
 
 ~has_slots ()
 
 ~has_slots ()
 
- Public Member Functions inherited from sigslot::has_slots_interface
void signal_connect (_signal_base_interface *sender)
 
void signal_disconnect (_signal_base_interface *sender)
 
void disconnect_all ()
 
void signal_connect (_signal_base_interface *sender)
 
void signal_disconnect (_signal_base_interface *sender)
 
void disconnect_all ()
 
- Public Member Functions inherited from cricket::MediaChannel::NetworkInterface
virtual ~NetworkInterface ()
 
virtual ~NetworkInterface ()
 
- Public Member Functions inherited from cricket::ConnectionStatsGetter
virtual ~ConnectionStatsGetter ()
 
virtual ~ConnectionStatsGetter ()
 

Public Attributes

sigslot::signal2< RtpDataChannel *, const DataMediaInfo & > SignalMediaMonitor
 
sigslot::signal2< RtpDataChannel *, const std::vector< ConnectionInfo > & > SignalConnectionMonitor
 
sigslot::signal2< const ReceiveDataParams &, const rtc::CopyOnWriteBuffer & > SignalDataReceived
 
sigslot::signal1< bool > SignalReadyToSendData
 
- Public Attributes inherited from cricket::BaseChannel
sigslot::signal2< BaseChannel *, bool > SignalDtlsSrtpSetupFailure
 
sigslot::signal1< BaseChannel * > SignalFirstPacketReceived
 
sigslot::signal1< const rtc::SentPacket & > SignalSentPacket
 
sigslot::signal1< const std::string & > SignalRtcpMuxFullyActive
 

Protected Member Functions

DataMediaChannelmedia_channel () const override
 
DataMediaChannelmedia_channel () const override
 
- Protected Member Functions inherited from cricket::BaseChannel
void SetTransports_n (DtlsTransportInternal *rtp_dtls_transport, DtlsTransportInternal *rtcp_dtls_transport, rtc::PacketTransportInternal *rtp_packet_transport, rtc::PacketTransportInternal *rtcp_packet_transport)
 
void SetTransport_n (bool rtcp, DtlsTransportInternal *new_dtls_transport, rtc::PacketTransportInternal *new_packet_transport)
 
bool was_ever_writable () const
 
void set_local_content_direction (MediaContentDirection direction)
 
void set_remote_content_direction (MediaContentDirection direction)
 
bool IsReadyToReceiveMedia_w () const
 
bool IsReadyToSendMedia_w () const
 
rtc::Threadsignaling_thread ()
 
void ConnectToDtlsTransport (DtlsTransportInternal *transport)
 
void DisconnectFromDtlsTransport (DtlsTransportInternal *transport)
 
void ConnectToPacketTransport (rtc::PacketTransportInternal *transport)
 
void DisconnectFromPacketTransport (rtc::PacketTransportInternal *transport)
 
void FlushRtcpMessages_n ()
 
bool SendPacket (rtc::CopyOnWriteBuffer *packet, const rtc::PacketOptions &options) override
 
bool SendRtcp (rtc::CopyOnWriteBuffer *packet, const rtc::PacketOptions &options) override
 
void OnWritableState (rtc::PacketTransportInternal *transport)
 
virtual void OnPacketRead (rtc::PacketTransportInternal *transport, const char *data, size_t len, const rtc::PacketTime &packet_time, int flags)
 
void OnReadyToSend (rtc::PacketTransportInternal *transport)
 
void OnDtlsState (DtlsTransportInternal *transport, DtlsTransportState state)
 
void OnSelectedCandidatePairChanged (IceTransportInternal *ice_transport, CandidatePairInterface *selected_candidate_pair, int last_sent_packet_id, bool ready_to_send)
 
bool PacketIsRtcp (const rtc::PacketTransportInternal *transport, const char *data, size_t len)
 
bool SendPacket (bool rtcp, rtc::CopyOnWriteBuffer *packet, const rtc::PacketOptions &options)
 
bool WantsPacket (bool rtcp, const rtc::CopyOnWriteBuffer *packet)
 
void HandlePacket (bool rtcp, rtc::CopyOnWriteBuffer *packet, const rtc::PacketTime &packet_time)
 
void OnPacketReceived (bool rtcp, const rtc::CopyOnWriteBuffer &packet, const rtc::PacketTime &packet_time)
 
void EnableMedia_w ()
 
void DisableMedia_w ()
 
void UpdateWritableState_n ()
 
void ChannelWritable_n ()
 
void ChannelNotWritable_n ()
 
bool AddRecvStream_w (const StreamParams &sp)
 
bool RemoveRecvStream_w (uint32_t ssrc)
 
bool AddSendStream_w (const StreamParams &sp)
 
bool RemoveSendStream_w (uint32_t ssrc)
 
bool ShouldSetupDtlsSrtp_n () const
 
bool SetupDtlsSrtp_n (bool rtcp)
 
void MaybeSetupDtlsSrtp_n ()
 
bool SetDtlsSrtpCryptoSuites_n (DtlsTransportInternal *transport, bool rtcp)
 
void UpdateMediaSendRecvState ()
 
bool UpdateLocalStreams_w (const std::vector< StreamParams > &streams, ContentAction action, std::string *error_desc)
 
bool UpdateRemoteStreams_w (const std::vector< StreamParams > &streams, ContentAction action, std::string *error_desc)
 
bool SetRtpTransportParameters (const MediaContentDescription *content, ContentAction action, ContentSource src, std::string *error_desc)
 
bool SetRtpTransportParameters_n (const MediaContentDescription *content, ContentAction action, ContentSource src, std::string *error_desc)
 
void MaybeCacheRtpAbsSendTimeHeaderExtension_w (const std::vector< webrtc::RtpExtension > &extensions)
 
bool CheckSrtpConfig_n (const std::vector< CryptoParams > &cryptos, bool *dtls, std::string *error_desc)
 
bool SetSrtp_n (const std::vector< CryptoParams > &params, ContentAction action, ContentSource src, std::string *error_desc)
 
bool SetRtcpMux_n (bool enable, ContentAction action, ContentSource src, std::string *error_desc)
 
const rtc::CryptoOptionscrypto_options () const
 
template<class FunctorT >
bool InvokeOnWorker (const rtc::Location &posted_from, const FunctorT &functor)
 
void SetTransports_n (DtlsTransportInternal *rtp_dtls_transport, DtlsTransportInternal *rtcp_dtls_transport, rtc::PacketTransportInternal *rtp_packet_transport, rtc::PacketTransportInternal *rtcp_packet_transport)
 
void SetTransport_n (bool rtcp, DtlsTransportInternal *new_dtls_transport, rtc::PacketTransportInternal *new_packet_transport)
 
bool was_ever_writable () const
 
void set_local_content_direction (MediaContentDirection direction)
 
void set_remote_content_direction (MediaContentDirection direction)
 
bool IsReadyToReceiveMedia_w () const
 
bool IsReadyToSendMedia_w () const
 
rtc::Threadsignaling_thread ()
 
void ConnectToDtlsTransport (DtlsTransportInternal *transport)
 
void DisconnectFromDtlsTransport (DtlsTransportInternal *transport)
 
void ConnectToPacketTransport (rtc::PacketTransportInternal *transport)
 
void DisconnectFromPacketTransport (rtc::PacketTransportInternal *transport)
 
void FlushRtcpMessages_n ()
 
bool SendPacket (rtc::CopyOnWriteBuffer *packet, const rtc::PacketOptions &options) override
 
bool SendRtcp (rtc::CopyOnWriteBuffer *packet, const rtc::PacketOptions &options) override
 
void OnWritableState (rtc::PacketTransportInternal *transport)
 
virtual void OnPacketRead (rtc::PacketTransportInternal *transport, const char *data, size_t len, const rtc::PacketTime &packet_time, int flags)
 
void OnReadyToSend (rtc::PacketTransportInternal *transport)
 
void OnDtlsState (DtlsTransportInternal *transport, DtlsTransportState state)
 
void OnSelectedCandidatePairChanged (IceTransportInternal *ice_transport, CandidatePairInterface *selected_candidate_pair, int last_sent_packet_id, bool ready_to_send)
 
bool PacketIsRtcp (const rtc::PacketTransportInternal *transport, const char *data, size_t len)
 
bool SendPacket (bool rtcp, rtc::CopyOnWriteBuffer *packet, const rtc::PacketOptions &options)
 
bool WantsPacket (bool rtcp, const rtc::CopyOnWriteBuffer *packet)
 
void HandlePacket (bool rtcp, rtc::CopyOnWriteBuffer *packet, const rtc::PacketTime &packet_time)
 
void OnPacketReceived (bool rtcp, const rtc::CopyOnWriteBuffer &packet, const rtc::PacketTime &packet_time)
 
void EnableMedia_w ()
 
void DisableMedia_w ()
 
void UpdateWritableState_n ()
 
void ChannelWritable_n ()
 
void ChannelNotWritable_n ()
 
bool AddRecvStream_w (const StreamParams &sp)
 
bool RemoveRecvStream_w (uint32_t ssrc)
 
bool AddSendStream_w (const StreamParams &sp)
 
bool RemoveSendStream_w (uint32_t ssrc)
 
bool ShouldSetupDtlsSrtp_n () const
 
bool SetupDtlsSrtp_n (bool rtcp)
 
void MaybeSetupDtlsSrtp_n ()
 
bool SetDtlsSrtpCryptoSuites_n (DtlsTransportInternal *transport, bool rtcp)
 
void UpdateMediaSendRecvState ()
 
bool UpdateLocalStreams_w (const std::vector< StreamParams > &streams, ContentAction action, std::string *error_desc)
 
bool UpdateRemoteStreams_w (const std::vector< StreamParams > &streams, ContentAction action, std::string *error_desc)
 
bool SetRtpTransportParameters (const MediaContentDescription *content, ContentAction action, ContentSource src, std::string *error_desc)
 
bool SetRtpTransportParameters_n (const MediaContentDescription *content, ContentAction action, ContentSource src, std::string *error_desc)
 
void MaybeCacheRtpAbsSendTimeHeaderExtension_w (const std::vector< webrtc::RtpExtension > &extensions)
 
bool CheckSrtpConfig_n (const std::vector< CryptoParams > &cryptos, bool *dtls, std::string *error_desc)
 
bool SetSrtp_n (const std::vector< CryptoParams > &params, ContentAction action, ContentSource src, std::string *error_desc)
 
bool SetRtcpMux_n (bool enable, ContentAction action, ContentSource src, std::string *error_desc)
 
const rtc::CryptoOptionscrypto_options () const
 
template<class FunctorT >
bool InvokeOnWorker (const rtc::Location &posted_from, const FunctorT &functor)
 
- Protected Member Functions inherited from rtc::MessageHandler
 MessageHandler ()
 
 MessageHandler ()
 
- Protected Member Functions inherited from sigslot::has_slots_interface
 has_slots_interface (signal_connect_t conn, signal_disconnect_t disc, disconnect_all_t disc_all)
 
virtual ~has_slots_interface ()
 
 has_slots_interface (signal_connect_t conn, signal_disconnect_t disc, disconnect_all_t disc_all)
 
virtual ~has_slots_interface ()
 

Additional Inherited Members

- Public Types inherited from cricket::MediaChannel::NetworkInterface
enum  SocketType { ST_RTP, ST_RTCP, ST_RTP, ST_RTCP }
 
enum  SocketType { ST_RTP, ST_RTCP, ST_RTP, ST_RTCP }
 

Constructor & Destructor Documentation

◆ RtpDataChannel() [1/2]

cricket::RtpDataChannel::RtpDataChannel ( rtc::Thread worker_thread,
rtc::Thread network_thread,
rtc::Thread signaling_thread,
DataMediaChannel channel,
const std::string content_name,
bool  rtcp_mux_required,
bool  srtp_required 
)

◆ ~RtpDataChannel() [1/2]

cricket::RtpDataChannel::~RtpDataChannel ( )

◆ RtpDataChannel() [2/2]

cricket::RtpDataChannel::RtpDataChannel ( rtc::Thread worker_thread,
rtc::Thread network_thread,
rtc::Thread signaling_thread,
DataMediaChannel channel,
const std::string content_name,
bool  rtcp_mux_required,
bool  srtp_required 
)

◆ ~RtpDataChannel() [2/2]

cricket::RtpDataChannel::~RtpDataChannel ( )

Member Function Documentation

◆ Init_w() [1/2]

bool cricket::RtpDataChannel::Init_w ( DtlsTransportInternal rtp_dtls_transport,
DtlsTransportInternal rtcp_dtls_transport,
rtc::PacketTransportInternal rtp_packet_transport,
rtc::PacketTransportInternal rtcp_packet_transport 
)

◆ Init_w() [2/2]

bool cricket::RtpDataChannel::Init_w ( DtlsTransportInternal rtp_dtls_transport,
DtlsTransportInternal rtcp_dtls_transport,
rtc::PacketTransportInternal rtp_packet_transport,
rtc::PacketTransportInternal rtcp_packet_transport 
)

◆ media_channel() [1/2]

DataMediaChannel* cricket::RtpDataChannel::media_channel ( ) const
inlineoverrideprotectedvirtual

Reimplemented from cricket::BaseChannel.

◆ media_channel() [2/2]

DataMediaChannel* cricket::RtpDataChannel::media_channel ( ) const
inlineoverrideprotectedvirtual

Reimplemented from cricket::BaseChannel.

◆ media_type() [1/2]

cricket::MediaType cricket::RtpDataChannel::media_type ( )
inlineoverridevirtual

Implements cricket::BaseChannel.

◆ media_type() [2/2]

cricket::MediaType cricket::RtpDataChannel::media_type ( )
inlineoverridevirtual

Implements cricket::BaseChannel.

◆ ready_to_send_data() [1/2]

bool cricket::RtpDataChannel::ready_to_send_data ( ) const
inline

◆ ready_to_send_data() [2/2]

bool cricket::RtpDataChannel::ready_to_send_data ( ) const
inline

◆ SendData() [1/2]

virtual bool cricket::RtpDataChannel::SendData ( const SendDataParams params,
const rtc::CopyOnWriteBuffer payload,
SendDataResult result 
)
virtual

◆ SendData() [2/2]

bool cricket::RtpDataChannel::SendData ( const SendDataParams params,
const rtc::CopyOnWriteBuffer payload,
SendDataResult result 
)
virtual

◆ StartMediaMonitor() [1/2]

void cricket::RtpDataChannel::StartMediaMonitor ( int  cms)

◆ StartMediaMonitor() [2/2]

void cricket::RtpDataChannel::StartMediaMonitor ( int  cms)

◆ StopMediaMonitor() [1/2]

void cricket::RtpDataChannel::StopMediaMonitor ( )

◆ StopMediaMonitor() [2/2]

void cricket::RtpDataChannel::StopMediaMonitor ( )

Member Data Documentation

◆ SignalConnectionMonitor

sigslot::signal2< RtpDataChannel *, const std::vector< ConnectionInfo > & > cricket::RtpDataChannel::SignalConnectionMonitor

◆ SignalDataReceived

sigslot::signal2< const ReceiveDataParams &, const rtc::CopyOnWriteBuffer & > cricket::RtpDataChannel::SignalDataReceived

◆ SignalMediaMonitor

sigslot::signal2< RtpDataChannel *, const DataMediaInfo & > cricket::RtpDataChannel::SignalMediaMonitor

◆ SignalReadyToSendData

sigslot::signal1< bool > cricket::RtpDataChannel::SignalReadyToSendData

The documentation for this class was generated from the following files: