Use array declaration for extension URIs.

Allows using sizeof() on the class constants and reduces space usage by
a pointer.

Bug: None
Change-Id: Ie919b13094903d50bdadc92b23a5aa5b6cc100ec
Reviewed-on: https://chromium-review.googlesource.com/581878
Reviewed-by: Tommi <tommi@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19113}
This commit is contained in:
Steve Anton 2017-07-21 10:59:39 -07:00 committed by Commit Bot
parent ad9561404c
commit d14d9f7414
2 changed files with 22 additions and 22 deletions

View File

@ -33,7 +33,7 @@ namespace webrtc {
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
constexpr RTPExtensionType AbsoluteSendTime::kId;
constexpr uint8_t AbsoluteSendTime::kValueSizeBytes;
constexpr const char* AbsoluteSendTime::kUri;
constexpr const char AbsoluteSendTime::kUri[];
bool AbsoluteSendTime::Parse(rtc::ArrayView<const uint8_t> data,
uint32_t* time_24bits) {
@ -63,7 +63,7 @@ bool AbsoluteSendTime::Write(uint8_t* data, uint32_t time_24bits) {
//
constexpr RTPExtensionType AudioLevel::kId;
constexpr uint8_t AudioLevel::kValueSizeBytes;
constexpr const char* AudioLevel::kUri;
constexpr const char AudioLevel::kUri[];
bool AudioLevel::Parse(rtc::ArrayView<const uint8_t> data,
bool* voice_activity,
@ -101,7 +101,7 @@ bool AudioLevel::Write(uint8_t* data,
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
constexpr RTPExtensionType TransmissionOffset::kId;
constexpr uint8_t TransmissionOffset::kValueSizeBytes;
constexpr const char* TransmissionOffset::kUri;
constexpr const char TransmissionOffset::kUri[];
bool TransmissionOffset::Parse(rtc::ArrayView<const uint8_t> data,
int32_t* rtp_time) {
@ -124,7 +124,7 @@ bool TransmissionOffset::Write(uint8_t* data, int32_t rtp_time) {
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
constexpr RTPExtensionType TransportSequenceNumber::kId;
constexpr uint8_t TransportSequenceNumber::kValueSizeBytes;
constexpr const char* TransportSequenceNumber::kUri;
constexpr const char TransportSequenceNumber::kUri[];
bool TransportSequenceNumber::Parse(rtc::ArrayView<const uint8_t> data,
uint16_t* value) {
@ -152,7 +152,7 @@ bool TransportSequenceNumber::Write(uint8_t* data, uint16_t value) {
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
constexpr RTPExtensionType VideoOrientation::kId;
constexpr uint8_t VideoOrientation::kValueSizeBytes;
constexpr const char* VideoOrientation::kUri;
constexpr const char VideoOrientation::kUri[];
bool VideoOrientation::Parse(rtc::ArrayView<const uint8_t> data,
VideoRotation* rotation) {
@ -187,7 +187,7 @@ bool VideoOrientation::Write(uint8_t* data, uint8_t value) {
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
constexpr RTPExtensionType PlayoutDelayLimits::kId;
constexpr uint8_t PlayoutDelayLimits::kValueSizeBytes;
constexpr const char* PlayoutDelayLimits::kUri;
constexpr const char PlayoutDelayLimits::kUri[];
bool PlayoutDelayLimits::Parse(rtc::ArrayView<const uint8_t> data,
PlayoutDelay* playout_delay) {
@ -227,7 +227,7 @@ bool PlayoutDelayLimits::Write(uint8_t* data,
// +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
constexpr RTPExtensionType VideoContentTypeExtension::kId;
constexpr uint8_t VideoContentTypeExtension::kValueSizeBytes;
constexpr const char* VideoContentTypeExtension::kUri;
constexpr const char VideoContentTypeExtension::kUri[];
bool VideoContentTypeExtension::Parse(rtc::ArrayView<const uint8_t> data,
VideoContentType* content_type) {
@ -263,7 +263,7 @@ bool VideoContentTypeExtension::Write(uint8_t* data,
constexpr RTPExtensionType VideoTimingExtension::kId;
constexpr uint8_t VideoTimingExtension::kValueSizeBytes;
constexpr const char* VideoTimingExtension::kUri;
constexpr const char VideoTimingExtension::kUri[];
bool VideoTimingExtension::Parse(rtc::ArrayView<const uint8_t> data,
VideoSendTiming* timing) {
@ -351,12 +351,12 @@ bool BaseRtpStringExtension::Write(uint8_t* data, const std::string& str) {
// Constant declarations for string RTP header extension types.
constexpr RTPExtensionType RtpStreamId::kId;
constexpr const char* RtpStreamId::kUri;
constexpr const char RtpStreamId::kUri[];
constexpr RTPExtensionType RepairedRtpStreamId::kId;
constexpr const char* RepairedRtpStreamId::kUri;
constexpr const char RepairedRtpStreamId::kUri[];
constexpr RTPExtensionType RtpMid::kId;
constexpr const char* RtpMid::kUri;
constexpr const char RtpMid::kUri[];
} // namespace webrtc

View File

@ -25,7 +25,7 @@ class AbsoluteSendTime {
public:
static constexpr RTPExtensionType kId = kRtpExtensionAbsoluteSendTime;
static constexpr uint8_t kValueSizeBytes = 3;
static constexpr const char* kUri =
static constexpr const char kUri[] =
"http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time";
static bool Parse(rtc::ArrayView<const uint8_t> data, uint32_t* time_24bits);
@ -41,7 +41,7 @@ class AudioLevel {
public:
static constexpr RTPExtensionType kId = kRtpExtensionAudioLevel;
static constexpr uint8_t kValueSizeBytes = 1;
static constexpr const char* kUri =
static constexpr const char kUri[] =
"urn:ietf:params:rtp-hdrext:ssrc-audio-level";
static bool Parse(rtc::ArrayView<const uint8_t> data,
@ -57,7 +57,7 @@ class TransmissionOffset {
public:
static constexpr RTPExtensionType kId = kRtpExtensionTransmissionTimeOffset;
static constexpr uint8_t kValueSizeBytes = 3;
static constexpr const char* kUri = "urn:ietf:params:rtp-hdrext:toffset";
static constexpr const char kUri[] = "urn:ietf:params:rtp-hdrext:toffset";
static bool Parse(rtc::ArrayView<const uint8_t> data, int32_t* rtp_time);
static size_t ValueSize(int32_t rtp_time) { return kValueSizeBytes; }
@ -68,7 +68,7 @@ class TransportSequenceNumber {
public:
static constexpr RTPExtensionType kId = kRtpExtensionTransportSequenceNumber;
static constexpr uint8_t kValueSizeBytes = 2;
static constexpr const char* kUri =
static constexpr const char kUri[] =
"http://www.ietf.org/id/"
"draft-holmer-rmcat-transport-wide-cc-extensions-01";
static bool Parse(rtc::ArrayView<const uint8_t> data, uint16_t* value);
@ -80,7 +80,7 @@ class VideoOrientation {
public:
static constexpr RTPExtensionType kId = kRtpExtensionVideoRotation;
static constexpr uint8_t kValueSizeBytes = 1;
static constexpr const char* kUri = "urn:3gpp:video-orientation";
static constexpr const char kUri[] = "urn:3gpp:video-orientation";
static bool Parse(rtc::ArrayView<const uint8_t> data, VideoRotation* value);
static size_t ValueSize(VideoRotation) { return kValueSizeBytes; }
@ -94,7 +94,7 @@ class PlayoutDelayLimits {
public:
static constexpr RTPExtensionType kId = kRtpExtensionPlayoutDelay;
static constexpr uint8_t kValueSizeBytes = 3;
static constexpr const char* kUri =
static constexpr const char kUri[] =
"http://www.webrtc.org/experiments/rtp-hdrext/playout-delay";
// Playout delay in milliseconds. A playout delay limit (min or max)
@ -116,7 +116,7 @@ class VideoContentTypeExtension {
public:
static constexpr RTPExtensionType kId = kRtpExtensionVideoContentType;
static constexpr uint8_t kValueSizeBytes = 1;
static constexpr const char* kUri =
static constexpr const char kUri[] =
"http://www.webrtc.org/experiments/rtp-hdrext/video-content-type";
static bool Parse(rtc::ArrayView<const uint8_t> data,
@ -131,7 +131,7 @@ class VideoTimingExtension {
public:
static constexpr RTPExtensionType kId = kRtpExtensionVideoTiming;
static constexpr uint8_t kValueSizeBytes = 12;
static constexpr const char* kUri =
static constexpr const char kUri[] =
"http://www.webrtc.org/experiments/rtp-hdrext/video-timing";
static bool Parse(rtc::ArrayView<const uint8_t> data,
@ -165,21 +165,21 @@ class BaseRtpStringExtension {
class RtpStreamId : public BaseRtpStringExtension {
public:
static constexpr RTPExtensionType kId = kRtpExtensionRtpStreamId;
static constexpr const char* kUri =
static constexpr const char kUri[] =
"urn:ietf:params:rtp-hdrext:sdes:rtp-stream-id";
};
class RepairedRtpStreamId : public BaseRtpStringExtension {
public:
static constexpr RTPExtensionType kId = kRtpExtensionRepairedRtpStreamId;
static constexpr const char* kUri =
static constexpr const char kUri[] =
"urn:ietf:params:rtp-hdrext:sdes:repaired-rtp-stream-id";
};
class RtpMid : public BaseRtpStringExtension {
public:
static constexpr RTPExtensionType kId = kRtpExtensionMid;
static constexpr const char* kUri = "urn:ietf:params:rtp-hdrext:sdes:mid";
static constexpr const char kUri[] = "urn:ietf:params:rtp-hdrext:sdes:mid";
};
} // namespace webrtc