Add move constructor and assign operator to RtpPacket
RtpPacket has CopyOnWriteBuffer and std::vector that can be moved more efficiently than copied, thus move of the RtpPacket is also more efficient Bug: None Change-Id: I5509346e426cd32d0fb0649ef1a6883b7176df1d Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/290726 Reviewed-by: Per Kjellander <perkj@webrtc.org> Commit-Queue: Per Kjellander <perkj@webrtc.org> Auto-Submit: Danil Chapovalov <danilchap@webrtc.org> Commit-Queue: Danil Chapovalov <danilchap@webrtc.org> Cr-Commit-Position: refs/heads/main@{#39053}
This commit is contained in:
parent
c3891e3a4e
commit
885ededbb8
@ -60,8 +60,6 @@ RtpPacket::RtpPacket() : RtpPacket(nullptr, kDefaultPacketSize) {}
|
||||
RtpPacket::RtpPacket(const ExtensionManager* extensions)
|
||||
: RtpPacket(extensions, kDefaultPacketSize) {}
|
||||
|
||||
RtpPacket::RtpPacket(const RtpPacket&) = default;
|
||||
|
||||
RtpPacket::RtpPacket(const ExtensionManager* extensions, size_t capacity)
|
||||
: extensions_(extensions ? *extensions : ExtensionManager()),
|
||||
buffer_(capacity) {
|
||||
@ -69,7 +67,11 @@ RtpPacket::RtpPacket(const ExtensionManager* extensions, size_t capacity)
|
||||
Clear();
|
||||
}
|
||||
|
||||
RtpPacket::~RtpPacket() {}
|
||||
RtpPacket::RtpPacket(const RtpPacket&) = default;
|
||||
RtpPacket::RtpPacket(RtpPacket&&) = default;
|
||||
RtpPacket& RtpPacket::operator=(const RtpPacket&) = default;
|
||||
RtpPacket& RtpPacket::operator=(RtpPacket&&) = default;
|
||||
RtpPacket::~RtpPacket() = default;
|
||||
|
||||
void RtpPacket::IdentifyExtensions(ExtensionManager extensions) {
|
||||
extensions_ = std::move(extensions);
|
||||
|
||||
@ -34,11 +34,14 @@ class RtpPacket {
|
||||
// stored.
|
||||
RtpPacket();
|
||||
explicit RtpPacket(const ExtensionManager* extensions);
|
||||
RtpPacket(const RtpPacket&);
|
||||
RtpPacket(const ExtensionManager* extensions, size_t capacity);
|
||||
~RtpPacket();
|
||||
|
||||
RtpPacket& operator=(const RtpPacket&) = default;
|
||||
RtpPacket(const RtpPacket&);
|
||||
RtpPacket(RtpPacket&&);
|
||||
RtpPacket& operator=(const RtpPacket&);
|
||||
RtpPacket& operator=(RtpPacket&&);
|
||||
|
||||
~RtpPacket();
|
||||
|
||||
// Parse and copy given buffer into Packet.
|
||||
// Does not require extension map to be registered (map is only required to
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user