Index: webrtc/pc/rtptransport.h |
diff --git a/webrtc/pc/rtptransport.h b/webrtc/pc/rtptransport.h |
index f9bee1b6cc7da03d6ad5a93680b0a70f004bf8cd..711f4c9b57c2a27a50a299114bae487729c226b1 100644 |
--- a/webrtc/pc/rtptransport.h |
+++ b/webrtc/pc/rtptransport.h |
@@ -13,11 +13,13 @@ |
#include "webrtc/api/ortc/rtptransportinterface.h" |
#include "webrtc/base/sigslot.h" |
+#include "webrtc/pc/bundlefilter.h" |
namespace rtc { |
class CopyOnWriteBuffer; |
struct PacketOptions; |
+struct PacketTime; |
class PacketTransportInternal; |
} // namespace rtc |
@@ -64,11 +66,22 @@ class RtpTransport : public RtpTransportInterface, public sigslot::has_slots<> { |
const rtc::PacketOptions& options, |
int flags); |
+ bool HandlesPayloadType(int payload_type) const; |
+ |
+ void AddHandledPayloadType(int payload_type); |
+ |
+ // TODO(zstein): Consider having two signals - RtcPacketReceived and |
+ // RtcpPacketReceived. |
Taylor Brandstetter
2017/05/31 08:25:03
Could mention that the first bool argument of the
Zach Stein
2017/06/01 03:45:58
Done.
|
+ sigslot::signal3<bool, rtc::CopyOnWriteBuffer&, const rtc::PacketTime&> |
+ SignalPacketReceived; |
+ |
protected: |
// TODO(zstein): Remove this when we remove RtpTransportAdapter. |
RtpTransportAdapter* GetInternal() override; |
private: |
+ bool HandlesPacket(const uint8_t* data, size_t len); |
+ |
void OnReadyToSend(rtc::PacketTransportInternal* transport); |
// Updates "ready to send" for an individual channel and fires |
@@ -77,6 +90,14 @@ class RtpTransport : public RtpTransportInterface, public sigslot::has_slots<> { |
void MaybeSignalReadyToSend(); |
+ void OnReadPacket(rtc::PacketTransportInternal* transport, |
+ const char* data, |
+ size_t len, |
+ const rtc::PacketTime& packet_time, |
+ int flags); |
+ |
+ bool WantsPacket(bool rtcp, const rtc::CopyOnWriteBuffer* packet); |
+ |
bool rtcp_mux_enabled_; |
rtc::PacketTransportInternal* rtp_packet_transport_ = nullptr; |
@@ -87,6 +108,8 @@ class RtpTransport : public RtpTransportInterface, public sigslot::has_slots<> { |
bool rtcp_ready_to_send_ = false; |
RtcpParameters rtcp_parameters_; |
+ |
+ cricket::BundleFilter bundle_filter_; |
}; |
} // namespace webrtc |