Fix clang style errors in rtp_rtcp and dependant targets
Mark functions with override instead of virtual.
Add explicit non-trivial constructors/assign operators/destructors.
Define them in .cc files instead of inlining
use auto* instead of auto when deduced type is raw pointer
Bug: webrtc:163
Change-Id: I4d8a05d6a64fcc2ca16d02c5fcf9488fda832a6d
Reviewed-on: https://webrtc-review.googlesource.com/48781
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#21927}
diff --git a/api/rtpreceiverinterface.h b/api/rtpreceiverinterface.h
index ac2e090..017c95a 100644
--- a/api/rtpreceiverinterface.h
+++ b/api/rtpreceiverinterface.h
@@ -34,19 +34,16 @@
class RtpSource {
public:
RtpSource() = delete;
- RtpSource(int64_t timestamp_ms, uint32_t source_id, RtpSourceType source_type)
- : timestamp_ms_(timestamp_ms),
- source_id_(source_id),
- source_type_(source_type) {}
-
+ RtpSource(int64_t timestamp_ms,
+ uint32_t source_id,
+ RtpSourceType source_type);
RtpSource(int64_t timestamp_ms,
uint32_t source_id,
RtpSourceType source_type,
- uint8_t audio_level)
- : timestamp_ms_(timestamp_ms),
- source_id_(source_id),
- source_type_(source_type),
- audio_level_(audio_level) {}
+ uint8_t audio_level);
+ RtpSource(const RtpSource&);
+ RtpSource& operator=(const RtpSource&);
+ ~RtpSource();
int64_t timestamp_ms() const { return timestamp_ms_; }
void update_timestamp_ms(int64_t timestamp_ms) {
@@ -98,10 +95,7 @@
// the [[AssociatedRemoteMediaStreams]] internal slot in the spec.
// https://w3c.github.io/webrtc-pc/#dfn-x%5B%5Bassociatedremotemediastreams%5D%5D
// TODO(hbos): Make pure virtual as soon as Chromium's mock implements this.
- virtual std::vector<rtc::scoped_refptr<MediaStreamInterface>> streams()
- const {
- return std::vector<rtc::scoped_refptr<MediaStreamInterface>>();
- }
+ virtual std::vector<rtc::scoped_refptr<MediaStreamInterface>> streams() const;
// Audio or video receiver?
virtual cricket::MediaType media_type() const = 0;
@@ -124,19 +118,18 @@
// TODO(zhihuang): Remove the default implementation once the subclasses
// implement this. Currently, the only relevant subclass is the
// content::FakeRtpReceiver in Chromium.
- virtual std::vector<RtpSource> GetSources() const {
- return std::vector<RtpSource>();
- }
+ virtual std::vector<RtpSource> GetSources() const;
+
// TODO(hta): Remove default implementation or move function to
// an internal interface. content::FakeRtpReceiver in Chromium needs this.
// Returns an ID that changes if the attached track changes, but
// otherwise remains constant. Used to generate IDs for stats.
// The special value zero means that no track is attached.
- virtual int AttachmentId() const { return 0; }
+ virtual int AttachmentId() const;
protected:
- virtual ~RtpReceiverInterface() {}
+ ~RtpReceiverInterface() override = default;
};
// Define proxy for RtpReceiverInterface.