123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105 |
- #ifndef PC_RTP_TRANSPORT_INTERNAL_H_
- #define PC_RTP_TRANSPORT_INTERNAL_H_
- #include <string>
- #include "call/rtp_demuxer.h"
- #include "p2p/base/ice_transport_internal.h"
- #include "pc/session_description.h"
- #include "rtc_base/network_route.h"
- #include "rtc_base/ssl_stream_adapter.h"
- #include "rtc_base/third_party/sigslot/sigslot.h"
- namespace rtc {
- class CopyOnWriteBuffer;
- struct PacketOptions;
- }
- namespace webrtc {
- class RtpTransportInternal : public sigslot::has_slots<> {
- public:
- virtual ~RtpTransportInternal() = default;
- virtual void SetRtcpMuxEnabled(bool enable) = 0;
- virtual const std::string& transport_name() const = 0;
-
- virtual int SetRtpOption(rtc::Socket::Option opt, int value) = 0;
- virtual int SetRtcpOption(rtc::Socket::Option opt, int value) = 0;
- virtual bool rtcp_mux_enabled() const = 0;
- virtual bool IsReadyToSend() const = 0;
-
-
-
- sigslot::signal1<bool> SignalReadyToSend;
-
-
-
- sigslot::signal2<rtc::CopyOnWriteBuffer*, int64_t> SignalRtcpPacketReceived;
-
-
- sigslot::signal1<absl::optional<rtc::NetworkRoute>> SignalNetworkRouteChanged;
-
-
- sigslot::signal1<bool> SignalWritableState;
- sigslot::signal1<const rtc::SentPacket&> SignalSentPacket;
- virtual bool IsWritable(bool rtcp) const = 0;
-
-
- virtual bool SendRtpPacket(rtc::CopyOnWriteBuffer* packet,
- const rtc::PacketOptions& options,
- int flags) = 0;
- virtual bool SendRtcpPacket(rtc::CopyOnWriteBuffer* packet,
- const rtc::PacketOptions& options,
- int flags) = 0;
-
-
-
-
-
-
-
-
-
-
- virtual void UpdateRtpHeaderExtensionMap(
- const cricket::RtpHeaderExtensions& header_extensions) = 0;
- virtual bool IsSrtpActive() const = 0;
- virtual bool RegisterRtpDemuxerSink(const RtpDemuxerCriteria& criteria,
- RtpPacketSinkInterface* sink) = 0;
- virtual bool UnregisterRtpDemuxerSink(RtpPacketSinkInterface* sink) = 0;
- };
- }
- #endif
|