Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(634)

Unified Diff: webrtc/modules/rtp_rtcp/source/rtcp_receiver.h

Issue 2274573002: Adjust RtcpReceiver to be testable with callbacks: (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@master
Patch Set: Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « no previous file | webrtc/modules/rtp_rtcp/source/rtcp_receiver.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: webrtc/modules/rtp_rtcp/source/rtcp_receiver.h
diff --git a/webrtc/modules/rtp_rtcp/source/rtcp_receiver.h b/webrtc/modules/rtp_rtcp/source/rtcp_receiver.h
index 747a75e87b66f180cebdca197d7947733c181e31..49f9c0d2e3accb305d4b84fad4362fd511b8560c 100644
--- a/webrtc/modules/rtp_rtcp/source/rtcp_receiver.h
+++ b/webrtc/modules/rtp_rtcp/source/rtcp_receiver.h
@@ -11,6 +11,7 @@
#ifndef WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_RECEIVER_H_
#define WEBRTC_MODULES_RTP_RTCP_SOURCE_RTCP_RECEIVER_H_
+#include <list>
#include <map>
#include <set>
#include <vector>
@@ -20,23 +21,39 @@
#include "webrtc/modules/rtp_rtcp/include/rtp_rtcp_defines.h"
#include "webrtc/modules/rtp_rtcp/source/rtcp_receiver_help.h"
#include "webrtc/modules/rtp_rtcp/source/rtcp_utility.h"
-#include "webrtc/modules/rtp_rtcp/source/rtp_utility.h"
#include "webrtc/typedefs.h"
namespace webrtc {
-class ModuleRtpRtcpImpl;
+namespace rtcp {
+class TmmbItem;
+} // namespace rtcp
class RTCPReceiver {
public:
+ class SenderCallbacks {
philipel 2016/08/24 13:50:26 I think this name is a bit ambiguous. Maybe call i
danilchap 2016/08/26 11:47:51 Can agree name is ambigous, SenderCallbacks sounds
+ public:
+ virtual void SetTmmbn(std::vector<rtcp::TmmbItem> bounding_set) = 0;
+ virtual void OnRequestSendReport() = 0;
+ virtual void OnReceivedNACK(
philipel 2016/08/24 13:50:26 OnReceiverNack
danilchap 2016/08/26 11:47:51 done in separate CL since it is unrelated to this
+ const std::list<uint16_t>& nack_sequence_numbers) = 0;
philipel 2016/08/24 13:50:26 If it only requires a small change, use vector ins
danilchap 2016/08/26 11:47:51 Not that small, done in separate CL since it is un
+ virtual void OnReceivedRtcpReportBlocks(
+ const ReportBlockList& report_blocks) = 0;
+
+ protected:
+ virtual ~SenderCallbacks() = default;
+ };
+
RTCPReceiver(Clock* clock,
bool receiver_only,
RtcpPacketTypeCounterObserver* packet_type_counter_observer,
RtcpBandwidthObserver* rtcp_bandwidth_observer,
RtcpIntraFrameObserver* rtcp_intra_frame_observer,
TransportFeedbackObserver* transport_feedback_observer,
- ModuleRtpRtcpImpl* owner);
+ SenderCallbacks* sender_callbacks);
virtual ~RTCPReceiver();
+ bool IncomingPacket(const uint8_t* packet, size_t packet_size);
+
int64_t LastReceived();
int64_t LastReceivedReceiverReport() const;
@@ -257,7 +274,7 @@ class RTCPReceiver {
Clock* const _clock;
const bool receiver_only_;
int64_t _lastReceived;
- ModuleRtpRtcpImpl& _rtpRtcp;
+ SenderCallbacks& _rtpRtcp;
rtc::CriticalSection _criticalSectionFeedbacks;
RtcpBandwidthObserver* const _cbRtcpBandwidthObserver;
« no previous file with comments | « no previous file | webrtc/modules/rtp_rtcp/source/rtcp_receiver.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698