Replace rtc::Optional with absl::optional in media, ortc, p2p
This is a no-op change because rtc::Optional is an alias to absl::optional
This CL generated by running script with parameters 'media ortc p2p':
find $@ -type f \( -name \*.h -o -name \*.cc \) \
-exec sed -i 's|rtc::Optional|absl::optional|g' {} \+ \
-exec sed -i 's|rtc::nullopt|absl::nullopt|g' {} \+ \
-exec sed -i 's|#include "api/optional.h"|#include "absl/types/optional.h"|' {} \+
find $@ -type f -name BUILD.gn \
-exec sed -r -i 's|"(../)*api:optional"|"//third_party/abseil-cpp/absl/types:optional"|' {} \+;
git cl format
Bug: webrtc:9078
Change-Id: I19167714af7cc1436d34cfcba6c8b3718d8e677b
Reviewed-on: https://webrtc-review.googlesource.com/83731
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23638}
diff --git a/media/BUILD.gn b/media/BUILD.gn
index cfa81cb..0a62d4f 100644
--- a/media/BUILD.gn
+++ b/media/BUILD.gn
@@ -40,9 +40,9 @@
deps = [
"..:webrtc_common",
- "../api:optional",
"../rtc_base:rtc_base",
"../rtc_base:rtc_base_approved",
+ "//third_party/abseil-cpp/absl/types:optional",
]
}
@@ -111,7 +111,6 @@
":rtc_media_config",
"..:webrtc_common",
"../api:libjingle_peerconnection_api",
- "../api:optional",
"../api/audio_codecs:audio_codecs_api",
"../api/video:video_frame",
"../api/video:video_frame_i420",
@@ -122,6 +121,7 @@
"../rtc_base:rtc_base",
"../rtc_base:rtc_base_approved",
"../system_wrappers:field_trial_api",
+ "//third_party/abseil-cpp/absl/types:optional",
]
if (!build_with_mozilla) {
@@ -304,7 +304,6 @@
"..:webrtc_common",
"../api:call_api",
"../api:libjingle_peerconnection_api",
- "../api:optional",
"../api:transport_api",
"../api/audio_codecs:audio_codecs_api",
"../api/video:video_frame",
@@ -328,6 +327,7 @@
"../system_wrappers",
"../system_wrappers:field_trial_api",
"../system_wrappers:metrics_api",
+ "//third_party/abseil-cpp/absl/types:optional",
]
}
diff --git a/media/base/adaptedvideotracksource.h b/media/base/adaptedvideotracksource.h
index e7edb9a..7e7ba7e 100644
--- a/media/base/adaptedvideotracksource.h
+++ b/media/base/adaptedvideotracksource.h
@@ -75,7 +75,7 @@
cricket::VideoAdapter video_adapter_;
rtc::CriticalSection stats_crit_;
- rtc::Optional<Stats> stats_ RTC_GUARDED_BY(stats_crit_);
+ absl::optional<Stats> stats_ RTC_GUARDED_BY(stats_crit_);
VideoBroadcaster broadcaster_;
};
diff --git a/media/base/codec_unittest.cc b/media/base/codec_unittest.cc
index ed4ced0..36e0c38 100644
--- a/media/base/codec_unittest.cc
+++ b/media/base/codec_unittest.cc
@@ -354,7 +354,7 @@
EXPECT_EQ(cricket::MEDIA_TYPE_VIDEO, codec_params_1.kind);
EXPECT_EQ("V", codec_params_1.name);
EXPECT_EQ(cricket::kVideoCodecClockrate, codec_params_1.clock_rate);
- EXPECT_EQ(rtc::nullopt, codec_params_1.num_channels);
+ EXPECT_EQ(absl::nullopt, codec_params_1.num_channels);
ASSERT_EQ(1u, codec_params_1.parameters.size());
EXPECT_EQ("p1", codec_params_1.parameters.begin()->first);
EXPECT_EQ("v1", codec_params_1.parameters.begin()->second);
diff --git a/media/base/h264_profile_level_id.cc b/media/base/h264_profile_level_id.cc
index c441b50..65a6cf0 100644
--- a/media/base/h264_profile_level_id.cc
+++ b/media/base/h264_profile_level_id.cc
@@ -118,13 +118,13 @@
} // anonymous namespace
-rtc::Optional<ProfileLevelId> ParseProfileLevelId(const char* str) {
+absl::optional<ProfileLevelId> ParseProfileLevelId(const char* str) {
// The string should consist of 3 bytes in hexadecimal format.
if (strlen(str) != 6u)
- return rtc::nullopt;
+ return absl::nullopt;
const uint32_t profile_level_id_numeric = strtol(str, nullptr, 16);
if (profile_level_id_numeric == 0)
- return rtc::nullopt;
+ return absl::nullopt;
// Separate into three bytes.
const uint8_t level_idc =
@@ -159,7 +159,7 @@
break;
default:
// Unrecognized level_idc.
- return rtc::nullopt;
+ return absl::nullopt;
}
// Parse profile_idc/profile_iop into a Profile enum.
@@ -171,10 +171,10 @@
}
// Unrecognized profile_idc/profile_iop combination.
- return rtc::nullopt;
+ return absl::nullopt;
}
-rtc::Optional<Level> SupportedLevel(int max_frame_pixel_count, float max_fps) {
+absl::optional<Level> SupportedLevel(int max_frame_pixel_count, float max_fps) {
static const int kPixelsPerMacroblock = 16 * 16;
for (int i = arraysize(kLevelConstraints) - 1; i >= 0; --i) {
@@ -188,10 +188,10 @@
}
// No level supported.
- return rtc::nullopt;
+ return absl::nullopt;
}
-rtc::Optional<ProfileLevelId> ParseSdpProfileLevelId(
+absl::optional<ProfileLevelId> ParseSdpProfileLevelId(
const CodecParameterMap& params) {
// TODO(magjed): The default should really be kProfileBaseline and kLevel1
// according to the spec: https://tools.ietf.org/html/rfc6184#section-8.1. In
@@ -209,7 +209,7 @@
: ParseProfileLevelId(profile_level_id_it->second.c_str());
}
-rtc::Optional<std::string> ProfileLevelIdToString(
+absl::optional<std::string> ProfileLevelIdToString(
const ProfileLevelId& profile_level_id) {
// Handle special case level == 1b.
if (profile_level_id.level == kLevel1_b) {
@@ -222,7 +222,7 @@
return {"4d100b"};
// Level 1b is not allowed for other profiles.
default:
- return rtc::nullopt;
+ return absl::nullopt;
}
}
@@ -245,7 +245,7 @@
break;
// Unrecognized profile.
default:
- return rtc::nullopt;
+ return absl::nullopt;
}
char str[7];
@@ -267,9 +267,9 @@
}
// Parse profile-level-ids.
- const rtc::Optional<ProfileLevelId> local_profile_level_id =
+ const absl::optional<ProfileLevelId> local_profile_level_id =
ParseSdpProfileLevelId(local_supported_params);
- const rtc::Optional<ProfileLevelId> remote_profile_level_id =
+ const absl::optional<ProfileLevelId> remote_profile_level_id =
ParseSdpProfileLevelId(remote_offered_params);
// The local and remote codec must have valid and equal H264 Profiles.
RTC_DCHECK(local_profile_level_id);
@@ -297,9 +297,9 @@
bool IsSameH264Profile(const CodecParameterMap& params1,
const CodecParameterMap& params2) {
- const rtc::Optional<webrtc::H264::ProfileLevelId> profile_level_id =
+ const absl::optional<webrtc::H264::ProfileLevelId> profile_level_id =
webrtc::H264::ParseSdpProfileLevelId(params1);
- const rtc::Optional<webrtc::H264::ProfileLevelId> other_profile_level_id =
+ const absl::optional<webrtc::H264::ProfileLevelId> other_profile_level_id =
webrtc::H264::ParseSdpProfileLevelId(params2);
// Compare H264 profiles, but not levels.
return profile_level_id && other_profile_level_id &&
diff --git a/media/base/h264_profile_level_id.h b/media/base/h264_profile_level_id.h
index f46efd3..b4ff883 100644
--- a/media/base/h264_profile_level_id.h
+++ b/media/base/h264_profile_level_id.h
@@ -14,7 +14,7 @@
#include <map>
#include <string>
-#include "api/optional.h"
+#include "absl/types/optional.h"
#include "common_types.h" // NOLINT(build/include)
namespace webrtc {
@@ -55,24 +55,24 @@
// Parse profile level id that is represented as a string of 3 hex bytes.
// Nothing will be returned if the string is not a recognized H264
// profile level id.
-rtc::Optional<ProfileLevelId> ParseProfileLevelId(const char* str);
+absl::optional<ProfileLevelId> ParseProfileLevelId(const char* str);
// Parse profile level id that is represented as a string of 3 hex bytes
// contained in an SDP key-value map. A default profile level id will be
// returned if the profile-level-id key is missing. Nothing will be returned if
// the key is present but the string is invalid.
-rtc::Optional<ProfileLevelId> ParseSdpProfileLevelId(
+absl::optional<ProfileLevelId> ParseSdpProfileLevelId(
const CodecParameterMap& params);
// Given that a decoder supports up to a given frame size (in pixels) at up to a
// given number of frames per second, return the highest H.264 level where it
// can guarantee that it will be able to support all valid encoded streams that
// are within that level.
-rtc::Optional<Level> SupportedLevel(int max_frame_pixel_count, float max_fps);
+absl::optional<Level> SupportedLevel(int max_frame_pixel_count, float max_fps);
// Returns canonical string representation as three hex bytes of the profile
// level id, or returns nothing for invalid profile level ids.
-rtc::Optional<std::string> ProfileLevelIdToString(
+absl::optional<std::string> ProfileLevelIdToString(
const ProfileLevelId& profile_level_id);
// Generate codec parameters that will be used as answer in an SDP negotiation
diff --git a/media/base/mediachannel.h b/media/base/mediachannel.h
index a316c70..a9b586a 100644
--- a/media/base/mediachannel.h
+++ b/media/base/mediachannel.h
@@ -17,9 +17,9 @@
#include <utility>
#include <vector>
+#include "absl/types/optional.h"
#include "api/audio_codecs/audio_encoder.h"
#include "api/audio_options.h"
-#include "api/optional.h"
#include "api/rtcerror.h"
#include "api/rtpparameters.h"
#include "api/rtpreceiverinterface.h"
@@ -62,7 +62,8 @@
const int kScreencastDefaultFps = 5;
template <class T>
-static std::string ToStringIfSet(const char* key, const rtc::Optional<T>& val) {
+static std::string ToStringIfSet(const char* key,
+ const absl::optional<T>& val) {
std::string str;
if (val) {
str = key;
@@ -122,20 +123,20 @@
// Enable denoising? This flag comes from the getUserMedia
// constraint 'googNoiseReduction', and WebRtcVideoEngine passes it
// on to the codec options. Disabled by default.
- rtc::Optional<bool> video_noise_reduction;
+ absl::optional<bool> video_noise_reduction;
// Force screencast to use a minimum bitrate. This flag comes from
// the PeerConnection constraint 'googScreencastMinBitrate'. It is
// copied to the encoder config by WebRtcVideoChannel.
- rtc::Optional<int> screencast_min_bitrate_kbps;
+ absl::optional<int> screencast_min_bitrate_kbps;
// Set by screencast sources. Implies selection of encoding settings
// suitable for screencast. Most likely not the right way to do
// things, e.g., screencast of a text document and screencast of a
// youtube video have different needs.
- rtc::Optional<bool> is_screencast;
+ absl::optional<bool> is_screencast;
private:
template <typename T>
- static void SetFrom(rtc::Optional<T>* s, const rtc::Optional<T>& o) {
+ static void SetFrom(absl::optional<T>* s, const absl::optional<T>& o) {
if (o) {
*s = o;
}
@@ -328,7 +329,7 @@
float fraction_lost = 0.0f;
int64_t rtt_ms = 0;
std::string codec_name;
- rtc::Optional<int> codec_payload_type;
+ absl::optional<int> codec_payload_type;
std::vector<SsrcSenderInfo> local_stats;
std::vector<SsrcReceiverInfo> remote_stats;
};
@@ -374,7 +375,7 @@
int packets_lost = 0;
float fraction_lost = 0.0f;
std::string codec_name;
- rtc::Optional<int> codec_payload_type;
+ absl::optional<int> codec_payload_type;
std::vector<SsrcReceiverInfo> local_stats;
std::vector<SsrcSenderInfo> remote_stats;
};
@@ -468,7 +469,7 @@
int encode_usage_percent = 0;
uint32_t frames_encoded = 0;
bool has_entered_low_resolution = false;
- rtc::Optional<uint64_t> qp_sum;
+ absl::optional<uint64_t> qp_sum;
webrtc::VideoContentType content_type = webrtc::VideoContentType::UNSPECIFIED;
// https://w3c.github.io/webrtc-stats/#dom-rtcvideosenderstats-hugeframessent
uint32_t huge_frames_sent = 0;
@@ -496,7 +497,7 @@
uint32_t frames_received = 0;
uint32_t frames_decoded = 0;
uint32_t frames_rendered = 0;
- rtc::Optional<uint64_t> qp_sum;
+ absl::optional<uint64_t> qp_sum;
int64_t interframe_delay_max_ms = -1;
webrtc::VideoContentType content_type = webrtc::VideoContentType::UNSPECIFIED;
@@ -526,7 +527,7 @@
// Timing frame info: all important timestamps for a full lifetime of a
// single 'timing frame'.
- rtc::Optional<webrtc::TimingFrameInfo> timing_frame_info;
+ absl::optional<webrtc::TimingFrameInfo> timing_frame_info;
};
struct DataSenderInfo : public MediaSenderInfo {
diff --git a/media/base/videoadapter.cc b/media/base/videoadapter.cc
index 5261983..ded1cc6 100644
--- a/media/base/videoadapter.cc
+++ b/media/base/videoadapter.cc
@@ -16,7 +16,7 @@
#include <limits>
#include <utility>
-#include "api/optional.h"
+#include "absl/types/optional.h"
#include "media/base/mediaconstants.h"
#include "media/base/videocommon.h"
#include "rtc_base/arraysize.h"
@@ -256,14 +256,14 @@
}
void VideoAdapter::OnOutputFormatRequest(
- const rtc::Optional<VideoFormat>& format) {
+ const absl::optional<VideoFormat>& format) {
rtc::CritScope cs(&critical_section_);
requested_format_ = format;
- next_frame_timestamp_ns_ = rtc::nullopt;
+ next_frame_timestamp_ns_ = absl::nullopt;
}
void VideoAdapter::OnResolutionFramerateRequest(
- const rtc::Optional<int>& target_pixel_count,
+ const absl::optional<int>& target_pixel_count,
int max_pixel_count,
int max_framerate_fps) {
rtc::CritScope cs(&critical_section_);
diff --git a/media/base/videoadapter.h b/media/base/videoadapter.h
index abf6069..4bb6574 100644
--- a/media/base/videoadapter.h
+++ b/media/base/videoadapter.h
@@ -11,7 +11,7 @@
#ifndef MEDIA_BASE_VIDEOADAPTER_H_
#define MEDIA_BASE_VIDEOADAPTER_H_
-#include "api/optional.h"
+#include "absl/types/optional.h"
#include "media/base/videocommon.h"
#include "rtc_base/constructormagic.h"
#include "rtc_base/criticalsection.h"
@@ -48,7 +48,7 @@
// requested aspect ratio is orientation agnostic and will be adjusted to
// maintain the input orientation, so it doesn't matter if e.g. 1280x720 or
// 720x1280 is requested.
- void OnOutputFormatRequest(const rtc::Optional<VideoFormat>& format);
+ void OnOutputFormatRequest(const absl::optional<VideoFormat>& format);
// Requests the output frame size from |AdaptFrameResolution| to have as close
// as possible to |target_pixel_count| pixels (if set) but no more than
@@ -58,7 +58,7 @@
// Set |max_pixel_count| and/or |max_framerate_fps| to
// std::numeric_limit<int>::max() if no upper limit is desired.
void OnResolutionFramerateRequest(
- const rtc::Optional<int>& target_pixel_count,
+ const absl::optional<int>& target_pixel_count,
int max_pixel_count,
int max_framerate_fps);
@@ -75,13 +75,13 @@
// Resolution must be divisible by this factor.
const int required_resolution_alignment_;
// The target timestamp for the next frame based on requested format.
- rtc::Optional<int64_t> next_frame_timestamp_ns_
+ absl::optional<int64_t> next_frame_timestamp_ns_
RTC_GUARDED_BY(critical_section_);
// Max number of pixels requested via calls to OnOutputFormatRequest,
// OnResolutionRequest respectively.
// The adapted output format is the minimum of these.
- rtc::Optional<VideoFormat> requested_format_
+ absl::optional<VideoFormat> requested_format_
RTC_GUARDED_BY(critical_section_);
int resolution_request_target_pixel_count_ RTC_GUARDED_BY(critical_section_);
int resolution_request_max_pixel_count_ RTC_GUARDED_BY(critical_section_);
diff --git a/media/base/videoadapter_unittest.cc b/media/base/videoadapter_unittest.cc
index 1d6fd51..a973778 100644
--- a/media/base/videoadapter_unittest.cc
+++ b/media/base/videoadapter_unittest.cc
@@ -379,7 +379,7 @@
// Do not adapt the frame rate or the resolution. Expect no frame drop, no
// cropping, and no resolution change.
TEST_F(VideoAdapterTest, AdaptFramerateRequestMax) {
- adapter_.OnResolutionFramerateRequest(rtc::nullopt,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt,
std::numeric_limits<int>::max(),
std::numeric_limits<int>::max());
@@ -396,7 +396,7 @@
}
TEST_F(VideoAdapterTest, AdaptFramerateRequestZero) {
- adapter_.OnResolutionFramerateRequest(rtc::nullopt,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt,
std::numeric_limits<int>::max(), 0);
for (int i = 0; i < 10; ++i)
adapter_wrapper_->AdaptFrame(frame_source_->GetFrame());
@@ -411,7 +411,7 @@
// the number of dropped frames to be half of the number the captured frames.
TEST_F(VideoAdapterTest, AdaptFramerateRequestHalf) {
adapter_.OnResolutionFramerateRequest(
- rtc::nullopt, std::numeric_limits<int>::max(), kDefaultFps / 2);
+ absl::nullopt, std::numeric_limits<int>::max(), kDefaultFps / 2);
for (int i = 0; i < 10; ++i)
adapter_wrapper_->AdaptFrame(frame_source_->GetFrame());
@@ -732,7 +732,7 @@
EXPECT_EQ(720, out_height_);
// Adapt down one step.
- adapter_.OnResolutionFramerateRequest(rtc::nullopt, 1280 * 720 - 1,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt, 1280 * 720 - 1,
std::numeric_limits<int>::max());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
@@ -743,7 +743,7 @@
EXPECT_EQ(540, out_height_);
// Adapt down one step more.
- adapter_.OnResolutionFramerateRequest(rtc::nullopt, 960 * 540 - 1,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt, 960 * 540 - 1,
std::numeric_limits<int>::max());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
@@ -754,7 +754,7 @@
EXPECT_EQ(360, out_height_);
// Adapt down one step more.
- adapter_.OnResolutionFramerateRequest(rtc::nullopt, 640 * 360 - 1,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt, 640 * 360 - 1,
std::numeric_limits<int>::max());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
@@ -810,7 +810,7 @@
EXPECT_EQ(1280, out_width_);
EXPECT_EQ(720, out_height_);
- adapter_.OnResolutionFramerateRequest(rtc::nullopt, 0,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt, 0,
std::numeric_limits<int>::max());
EXPECT_FALSE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
@@ -819,7 +819,7 @@
TEST_F(VideoAdapterTest, TestOnResolutionRequestInLargeSteps) {
// Large step down.
- adapter_.OnResolutionFramerateRequest(rtc::nullopt, 640 * 360 - 1,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt, 640 * 360 - 1,
std::numeric_limits<int>::max());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
@@ -842,7 +842,7 @@
}
TEST_F(VideoAdapterTest, TestOnOutputFormatRequestCapsMaxResolution) {
- adapter_.OnResolutionFramerateRequest(rtc::nullopt, 640 * 360 - 1,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt, 640 * 360 - 1,
std::numeric_limits<int>::max());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
@@ -862,7 +862,7 @@
EXPECT_EQ(480, out_width_);
EXPECT_EQ(270, out_height_);
- adapter_.OnResolutionFramerateRequest(rtc::nullopt, 960 * 720,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt, 960 * 720,
std::numeric_limits<int>::max());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
@@ -882,7 +882,7 @@
EXPECT_EQ(1280, out_width_);
EXPECT_EQ(720, out_height_);
- adapter_.OnResolutionFramerateRequest(rtc::nullopt, 640 * 360 - 1,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt, 640 * 360 - 1,
std::numeric_limits<int>::max());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
&cropped_width_, &cropped_height_,
@@ -892,7 +892,7 @@
EXPECT_EQ(480, out_width_);
EXPECT_EQ(270, out_height_);
- adapter_.OnResolutionFramerateRequest(rtc::nullopt,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt,
std::numeric_limits<int>::max(),
std::numeric_limits<int>::max());
EXPECT_TRUE(adapter_.AdaptFrameResolution(1280, 720, 0,
@@ -918,7 +918,7 @@
EXPECT_EQ(360, out_height_);
// Adapt down one step.
- adapter_.OnResolutionFramerateRequest(rtc::nullopt, 640 * 360 - 1,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt, 640 * 360 - 1,
std::numeric_limits<int>::max());
// Expect cropping to 16:9 format and 3/4 scaling.
EXPECT_TRUE(adapter_.AdaptFrameResolution(640, 480, 0,
@@ -930,7 +930,7 @@
EXPECT_EQ(270, out_height_);
// Adapt down one step more.
- adapter_.OnResolutionFramerateRequest(rtc::nullopt, 480 * 270 - 1,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt, 480 * 270 - 1,
std::numeric_limits<int>::max());
// Expect cropping to 16:9 format and 1/2 scaling.
EXPECT_TRUE(adapter_.AdaptFrameResolution(640, 480, 0,
@@ -982,7 +982,7 @@
// Ask for 640x360 (16:9 aspect), with 3/16 scaling.
adapter_.OnOutputFormatRequest(
VideoFormat(640, 360, 0, FOURCC_I420));
- adapter_.OnResolutionFramerateRequest(rtc::nullopt,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt,
640 * 360 * 3 / 16 * 3 / 16,
std::numeric_limits<int>::max());
@@ -1004,8 +1004,7 @@
const int w = 1920;
const int h = 1080;
adapter_.OnOutputFormatRequest(VideoFormat(w, h, 0, FOURCC_I420));
- adapter_.OnResolutionFramerateRequest(rtc::nullopt,
- w * h * 1 / 16 * 1 / 16,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt, w * h * 1 / 16 * 1 / 16,
std::numeric_limits<int>::max());
// Send 1920x1080 (16:9 aspect).
@@ -1052,7 +1051,7 @@
&cropped_width_, &cropped_height_,
&out_width_, &out_height_));
- adapter_.OnResolutionFramerateRequest(rtc::nullopt, 640 * 480 - 1,
+ adapter_.OnResolutionFramerateRequest(absl::nullopt, 640 * 480 - 1,
std::numeric_limits<int>::max());
// Still expect all frames to be dropped
diff --git a/media/engine/fakewebrtccall.h b/media/engine/fakewebrtccall.h
index 2c10965..00bd079 100644
--- a/media/engine/fakewebrtccall.h
+++ b/media/engine/fakewebrtccall.h
@@ -184,7 +184,7 @@
bool framerate_scaling_enabled_;
rtc::VideoSourceInterface<webrtc::VideoFrame>* source_;
int num_swapped_frames_;
- rtc::Optional<webrtc::VideoFrame> last_frame_;
+ absl::optional<webrtc::VideoFrame> last_frame_;
webrtc::VideoSendStream::Stats stats_;
int num_encoder_reconfigurations_ = 0;
};
diff --git a/media/engine/payload_type_mapper.cc b/media/engine/payload_type_mapper.cc
index 1927f43..57397d1 100644
--- a/media/engine/payload_type_mapper.cc
+++ b/media/engine/payload_type_mapper.cc
@@ -85,7 +85,7 @@
PayloadTypeMapper::~PayloadTypeMapper() = default;
-rtc::Optional<int> PayloadTypeMapper::GetMappingFor(
+absl::optional<int> PayloadTypeMapper::GetMappingFor(
const webrtc::SdpAudioFormat& format) {
auto iter = mappings_.find(format);
if (iter != mappings_.end())
@@ -102,19 +102,19 @@
}
}
- return rtc::nullopt;
+ return absl::nullopt;
}
-rtc::Optional<int> PayloadTypeMapper::FindMappingFor(
+absl::optional<int> PayloadTypeMapper::FindMappingFor(
const webrtc::SdpAudioFormat& format) const {
auto iter = mappings_.find(format);
if (iter != mappings_.end())
return iter->second;
- return rtc::nullopt;
+ return absl::nullopt;
}
-rtc::Optional<AudioCodec> PayloadTypeMapper::ToAudioCodec(
+absl::optional<AudioCodec> PayloadTypeMapper::ToAudioCodec(
const webrtc::SdpAudioFormat& format) {
// TODO(ossu): We can safely set bitrate to zero here, since that field is
// not presented in the SDP. It is used to ferry around some target bitrate
@@ -129,7 +129,7 @@
return std::move(codec);
}
- return rtc::nullopt;
+ return absl::nullopt;
}
bool PayloadTypeMapper::SdpAudioFormatOrdering::operator()(
diff --git a/media/engine/payload_type_mapper.h b/media/engine/payload_type_mapper.h
index 914c08c..d8ab4a4 100644
--- a/media/engine/payload_type_mapper.h
+++ b/media/engine/payload_type_mapper.h
@@ -14,8 +14,8 @@
#include <map>
#include <set>
+#include "absl/types/optional.h"
#include "api/audio_codecs/audio_format.h"
-#include "api/optional.h"
#include "media/base/codec.h"
namespace cricket {
@@ -30,15 +30,16 @@
// Finds the current payload type for |format| or assigns a new one, if no
// current mapping exists. Will return an empty value if it was unable to
// create a mapping, i.e. if all dynamic payload type ids have been used up.
- rtc::Optional<int> GetMappingFor(const webrtc::SdpAudioFormat& format);
+ absl::optional<int> GetMappingFor(const webrtc::SdpAudioFormat& format);
// Finds the current payload type for |format|, if any. Returns an empty value
// if no payload type mapping exists for the format.
- rtc::Optional<int> FindMappingFor(const webrtc::SdpAudioFormat& format) const;
+ absl::optional<int> FindMappingFor(
+ const webrtc::SdpAudioFormat& format) const;
// Like GetMappingFor, but fills in an AudioCodec structure with the necessary
// information instead.
- rtc::Optional<AudioCodec> ToAudioCodec(const webrtc::SdpAudioFormat& format);
+ absl::optional<AudioCodec> ToAudioCodec(const webrtc::SdpAudioFormat& format);
private:
struct SdpAudioFormatOrdering {
diff --git a/media/engine/webrtcvideoengine.cc b/media/engine/webrtcvideoengine.cc
index bce0090..aff2529 100644
--- a/media/engine/webrtcvideoengine.cc
+++ b/media/engine/webrtcvideoengine.cc
@@ -358,46 +358,46 @@
return true;
}
-rtc::Optional<size_t> GetVp9SpatialLayersFromFieldTrial() {
+absl::optional<size_t> GetVp9SpatialLayersFromFieldTrial() {
size_t num_sl;
size_t num_tl;
if (GetVp9LayersFromFieldTrialGroup(&num_sl, &num_tl)) {
return num_sl;
}
- return rtc::nullopt;
+ return absl::nullopt;
}
-rtc::Optional<size_t> GetVp9TemporalLayersFromFieldTrial() {
+absl::optional<size_t> GetVp9TemporalLayersFromFieldTrial() {
size_t num_sl;
size_t num_tl;
if (GetVp9LayersFromFieldTrialGroup(&num_sl, &num_tl)) {
return num_tl;
}
- return rtc::nullopt;
+ return absl::nullopt;
}
const char kForcedFallbackFieldTrial[] =
"WebRTC-VP8-Forced-Fallback-Encoder-v2";
-rtc::Optional<int> GetFallbackMinBpsFromFieldTrial() {
+absl::optional<int> GetFallbackMinBpsFromFieldTrial() {
if (!webrtc::field_trial::IsEnabled(kForcedFallbackFieldTrial))
- return rtc::nullopt;
+ return absl::nullopt;
std::string group =
webrtc::field_trial::FindFullName(kForcedFallbackFieldTrial);
if (group.empty())
- return rtc::nullopt;
+ return absl::nullopt;
int min_pixels;
int max_pixels;
int min_bps;
if (sscanf(group.c_str(), "Enabled-%d,%d,%d", &min_pixels, &max_pixels,
&min_bps) != 3) {
- return rtc::nullopt;
+ return absl::nullopt;
}
if (min_bps <= 0)
- return rtc::nullopt;
+ return absl::nullopt;
return min_bps;
}
@@ -493,7 +493,7 @@
UnsignalledSsrcHandler::Action DefaultUnsignalledSsrcHandler::OnUnsignalledSsrc(
WebRtcVideoChannel* channel,
uint32_t ssrc) {
- rtc::Optional<uint32_t> default_recv_ssrc =
+ absl::optional<uint32_t> default_recv_ssrc =
channel->GetDefaultReceiveStreamSsrc();
if (default_recv_ssrc) {
@@ -524,7 +524,7 @@
WebRtcVideoChannel* channel,
rtc::VideoSinkInterface<webrtc::VideoFrame>* sink) {
default_sink_ = sink;
- rtc::Optional<uint32_t> default_recv_ssrc =
+ absl::optional<uint32_t> default_recv_ssrc =
channel->GetDefaultReceiveStreamSsrc();
if (default_recv_ssrc) {
channel->SetSink(*default_recv_ssrc, default_sink_);
@@ -629,7 +629,7 @@
delete kv.second;
}
-rtc::Optional<WebRtcVideoChannel::VideoCodecSettings>
+absl::optional<WebRtcVideoChannel::VideoCodecSettings>
WebRtcVideoChannel::SelectSendVideoCodec(
const std::vector<VideoCodecSettings>& remote_mapped_codecs) const {
const std::vector<VideoCodec> local_supported_codecs =
@@ -645,7 +645,7 @@
return remote_mapped_codec;
}
// No remote codec was supported.
- return rtc::nullopt;
+ return absl::nullopt;
}
bool WebRtcVideoChannel::NonFlexfecReceiveCodecsHaveChanged(
@@ -686,7 +686,7 @@
}
// Select one of the remote codecs that will be used as send codec.
- rtc::Optional<VideoCodecSettings> selected_send_codec =
+ absl::optional<VideoCodecSettings> selected_send_codec =
SelectSendVideoCodec(MapCodecs(params.codecs));
if (!selected_send_codec) {
@@ -712,7 +712,7 @@
params.extensions, webrtc::RtpExtension::IsSupportedForVideo, true);
if (!send_rtp_extensions_ || (*send_rtp_extensions_ != filtered_extensions)) {
changed_params->rtp_header_extensions =
- rtc::Optional<std::vector<webrtc::RtpExtension>>(filtered_extensions);
+ absl::optional<std::vector<webrtc::RtpExtension>>(filtered_extensions);
}
if (params.mid != send_params_.mid) {
@@ -965,7 +965,7 @@
if (NonFlexfecReceiveCodecsHaveChanged(recv_codecs_, mapped_codecs)) {
changed_params->codec_settings =
- rtc::Optional<std::vector<VideoCodecSettings>>(mapped_codecs);
+ absl::optional<std::vector<VideoCodecSettings>>(mapped_codecs);
}
// Handle RTP header extensions.
@@ -973,7 +973,7 @@
params.extensions, webrtc::RtpExtension::IsSupportedForVideo, false);
if (filtered_extensions != recv_rtp_extensions_) {
changed_params->rtp_header_extensions =
- rtc::Optional<std::vector<webrtc::RtpExtension>>(filtered_extensions);
+ absl::optional<std::vector<webrtc::RtpExtension>>(filtered_extensions);
}
int flexfec_payload_type = mapped_codecs.front().flexfec_payload_type;
@@ -1532,9 +1532,9 @@
kVideoRtpBufferSize);
}
-rtc::Optional<uint32_t> WebRtcVideoChannel::GetDefaultReceiveStreamSsrc() {
+absl::optional<uint32_t> WebRtcVideoChannel::GetDefaultReceiveStreamSsrc() {
rtc::CritScope stream_lock(&stream_crit_);
- rtc::Optional<uint32_t> ssrc;
+ absl::optional<uint32_t> ssrc;
for (auto it = receive_streams_.begin(); it != receive_streams_.end(); ++it) {
if (it->second->IsDefaultStream()) {
ssrc.emplace(it->first);
@@ -1563,7 +1563,7 @@
webrtc::VideoSendStream::Config config,
const VideoOptions& options,
int max_bitrate_bps,
- const rtc::Optional<VideoCodecSettings>& codec_settings)
+ const absl::optional<VideoCodecSettings>& codec_settings)
: config(std::move(config)),
options(options),
max_bitrate_bps(max_bitrate_bps),
@@ -1577,8 +1577,8 @@
const VideoOptions& options,
bool enable_cpu_overuse_detection,
int max_bitrate_bps,
- const rtc::Optional<VideoCodecSettings>& codec_settings,
- const rtc::Optional<std::vector<webrtc::RtpExtension>>& rtp_extensions,
+ const absl::optional<VideoCodecSettings>& codec_settings,
+ const absl::optional<std::vector<webrtc::RtpExtension>>& rtp_extensions,
// TODO(deadbeef): Don't duplicate information between send_params,
// rtp_extensions, options, etc.
const VideoSendParameters& send_params)
@@ -2201,7 +2201,7 @@
return stream_params_.ssrcs;
}
-rtc::Optional<uint32_t>
+absl::optional<uint32_t>
WebRtcVideoChannel::WebRtcVideoReceiveStream::GetFirstPrimarySsrc() const {
std::vector<uint32_t> primary_ssrcs;
stream_params_.GetPrimarySsrcs(&primary_ssrcs);
@@ -2209,7 +2209,7 @@
if (primary_ssrcs.empty()) {
RTC_LOG(LS_WARNING)
<< "Empty primary ssrcs vector, returning empty optional";
- return rtc::nullopt;
+ return absl::nullopt;
} else {
return primary_ssrcs[0];
}
diff --git a/media/engine/webrtcvideoengine.h b/media/engine/webrtcvideoengine.h
index 867fd28..041eb6a 100644
--- a/media/engine/webrtcvideoengine.h
+++ b/media/engine/webrtcvideoengine.h
@@ -17,8 +17,8 @@
#include <string>
#include <vector>
+#include "absl/types/optional.h"
#include "api/call/transport.h"
-#include "api/optional.h"
#include "api/video/video_frame.h"
#include "api/video/video_sink_interface.h"
#include "api/video/video_source_interface.h"
@@ -162,7 +162,7 @@
// Implemented for VideoMediaChannelTest.
bool sending() const { return sending_; }
- rtc::Optional<uint32_t> GetDefaultReceiveStreamSsrc();
+ absl::optional<uint32_t> GetDefaultReceiveStreamSsrc();
StreamParams unsignaled_stream_params() { return unsignaled_stream_params_; }
@@ -200,22 +200,22 @@
struct ChangedSendParameters {
// These optionals are unset if not changed.
- rtc::Optional<VideoCodecSettings> codec;
- rtc::Optional<std::vector<webrtc::RtpExtension>> rtp_header_extensions;
- rtc::Optional<std::string> mid;
- rtc::Optional<int> max_bandwidth_bps;
- rtc::Optional<bool> conference_mode;
- rtc::Optional<webrtc::RtcpMode> rtcp_mode;
+ absl::optional<VideoCodecSettings> codec;
+ absl::optional<std::vector<webrtc::RtpExtension>> rtp_header_extensions;
+ absl::optional<std::string> mid;
+ absl::optional<int> max_bandwidth_bps;
+ absl::optional<bool> conference_mode;
+ absl::optional<webrtc::RtcpMode> rtcp_mode;
};
struct ChangedRecvParameters {
// These optionals are unset if not changed.
- rtc::Optional<std::vector<VideoCodecSettings>> codec_settings;
- rtc::Optional<std::vector<webrtc::RtpExtension>> rtp_header_extensions;
+ absl::optional<std::vector<VideoCodecSettings>> codec_settings;
+ absl::optional<std::vector<webrtc::RtpExtension>> rtp_header_extensions;
// Keep track of the FlexFEC payload type separately from |codec_settings|.
// This allows us to recreate the FlexfecReceiveStream separately from the
// VideoReceiveStream when the FlexFEC payload type is changed.
- rtc::Optional<int> flexfec_payload_type;
+ absl::optional<int> flexfec_payload_type;
};
bool GetChangedSendParameters(const VideoSendParameters& params,
@@ -250,8 +250,8 @@
const VideoOptions& options,
bool enable_cpu_overuse_detection,
int max_bitrate_bps,
- const rtc::Optional<VideoCodecSettings>& codec_settings,
- const rtc::Optional<std::vector<webrtc::RtpExtension>>& rtp_extensions,
+ const absl::optional<VideoCodecSettings>& codec_settings,
+ const absl::optional<std::vector<webrtc::RtpExtension>>& rtp_extensions,
const VideoSendParameters& send_params);
virtual ~WebRtcVideoSendStream();
@@ -286,12 +286,12 @@
webrtc::VideoSendStream::Config config,
const VideoOptions& options,
int max_bitrate_bps,
- const rtc::Optional<VideoCodecSettings>& codec_settings);
+ const absl::optional<VideoCodecSettings>& codec_settings);
webrtc::VideoSendStream::Config config;
VideoOptions options;
int max_bitrate_bps;
bool conference_mode;
- rtc::Optional<VideoCodecSettings> codec_settings;
+ absl::optional<VideoCodecSettings> codec_settings;
// Sent resolutions + bitrates etc. by the underlying VideoSendStream,
// typically changes when setting a new resolution or reconfiguring
// bitrates.
@@ -402,7 +402,7 @@
std::string GetCodecNameFromPayloadType(int payload_type);
- rtc::Optional<uint32_t> GetFirstPrimarySsrc() const;
+ absl::optional<uint32_t> GetFirstPrimarySsrc() const;
webrtc::Call* const call_;
StreamParams stream_params_;
@@ -444,7 +444,7 @@
// Select what video codec will be used for sending, i.e. what codec is used
// for local encoding, based on supported remote codecs. The first remote
// codec that is supported locally will be selected.
- rtc::Optional<VideoCodecSettings> SelectSendVideoCodec(
+ absl::optional<VideoCodecSettings> SelectSendVideoCodec(
const std::vector<VideoCodecSettings>& remote_mapped_codecs) const;
static bool NonFlexfecReceiveCodecsHaveChanged(
@@ -477,8 +477,8 @@
std::set<uint32_t> send_ssrcs_ RTC_GUARDED_BY(stream_crit_);
std::set<uint32_t> receive_ssrcs_ RTC_GUARDED_BY(stream_crit_);
- rtc::Optional<VideoCodecSettings> send_codec_;
- rtc::Optional<std::vector<webrtc::RtpExtension>> send_rtp_extensions_;
+ absl::optional<VideoCodecSettings> send_codec_;
+ absl::optional<std::vector<webrtc::RtpExtension>> send_rtp_extensions_;
webrtc::VideoEncoderFactory* const encoder_factory_;
DecoderFactoryAdapter* const decoder_factory_;
diff --git a/media/engine/webrtcvideoengine_unittest.cc b/media/engine/webrtcvideoengine_unittest.cc
index 2cb2b20..2fc5bec 100644
--- a/media/engine/webrtcvideoengine_unittest.cc
+++ b/media/engine/webrtcvideoengine_unittest.cc
@@ -584,7 +584,7 @@
// The tests only use H264 Constrained Baseline. Make sure we don't return
// an internal H264 codec from the engine with a different H264 profile.
if (CodecNamesEq(name.c_str(), kH264CodecName)) {
- const rtc::Optional<webrtc::H264::ProfileLevelId> profile_level_id =
+ const absl::optional<webrtc::H264::ProfileLevelId> profile_level_id =
webrtc::H264::ParseSdpProfileLevelId(engine_codec.params);
if (profile_level_id->profile !=
webrtc::H264::kProfileConstrainedBaseline) {
@@ -5320,7 +5320,7 @@
// Check that the vector of VideoStreams also was propagated correctly. Note
// that this is testing the behavior of the FakeVideoSendStream, which mimics
// the calls to CreateEncoderStreams to get the VideoStreams.
- EXPECT_EQ(rtc::Optional<double>(new_bitrate_priority),
+ EXPECT_EQ(absl::optional<double>(new_bitrate_priority),
video_send_stream->GetVideoStreams()[0].bitrate_priority);
}
@@ -5381,13 +5381,13 @@
// these are created appropriately for the simulcast case.
EXPECT_EQ(rtc::checked_cast<size_t>(kNumSimulcastStreams),
video_send_stream->GetVideoStreams().size());
- EXPECT_EQ(rtc::Optional<double>(new_bitrate_priority),
+ EXPECT_EQ(absl::optional<double>(new_bitrate_priority),
video_send_stream->GetVideoStreams()[0].bitrate_priority);
// Since we are only setting bitrate priority per-sender, the other
// VideoStreams should have a bitrate priority of 0.
- EXPECT_EQ(rtc::nullopt,
+ EXPECT_EQ(absl::nullopt,
video_send_stream->GetVideoStreams()[1].bitrate_priority);
- EXPECT_EQ(rtc::nullopt,
+ EXPECT_EQ(absl::nullopt,
video_send_stream->GetVideoStreams()[2].bitrate_priority);
EXPECT_TRUE(channel_->SetVideoSend(primary_ssrc, nullptr, nullptr));
}
diff --git a/media/engine/webrtcvoiceengine.cc b/media/engine/webrtcvoiceengine.cc
index 60f8193..fd34d08 100644
--- a/media/engine/webrtcvoiceengine.cc
+++ b/media/engine/webrtcvoiceengine.cc
@@ -147,7 +147,7 @@
return it == payload_types.end();
}
-rtc::Optional<std::string> GetAudioNetworkAdaptorConfig(
+absl::optional<std::string> GetAudioNetworkAdaptorConfig(
const AudioOptions& options) {
if (options.audio_network_adaptor && *options.audio_network_adaptor &&
options.audio_network_adaptor_config) {
@@ -155,14 +155,14 @@
// equals true and |options_.audio_network_adaptor_config| has a value.
return options.audio_network_adaptor_config;
}
- return rtc::nullopt;
+ return absl::nullopt;
}
// |max_send_bitrate_bps| is the bitrate from "b=" in SDP.
// |rtp_max_bitrate_bps| is the bitrate from RtpSender::SetParameters.
-rtc::Optional<int> ComputeSendBitrate(int max_send_bitrate_bps,
- rtc::Optional<int> rtp_max_bitrate_bps,
- const webrtc::AudioCodecSpec& spec) {
+absl::optional<int> ComputeSendBitrate(int max_send_bitrate_bps,
+ absl::optional<int> rtp_max_bitrate_bps,
+ const webrtc::AudioCodecSpec& spec) {
// If application-configured bitrate is set, take minimum of that and SDP
// bitrate.
const int bps =
@@ -181,7 +181,7 @@
<< " to bitrate " << bps << " bps"
<< ", requires at least " << spec.info.min_bitrate_bps
<< " bps.";
- return rtc::nullopt;
+ return absl::nullopt;
}
if (spec.info.HasFixedBitrate()) {
@@ -683,7 +683,7 @@
auto map_format = [&mapper](const webrtc::SdpAudioFormat& format,
AudioCodecs* out) {
- rtc::Optional<AudioCodec> opt_codec = mapper.ToAudioCodec(format);
+ absl::optional<AudioCodec> opt_codec = mapper.ToAudioCodec(format);
if (opt_codec) {
if (out) {
out->push_back(*opt_codec);
@@ -698,7 +698,7 @@
for (const auto& spec : specs) {
// We need to do some extra stuff before adding the main codecs to out.
- rtc::Optional<AudioCodec> opt_codec = map_format(spec.format, nullptr);
+ absl::optional<AudioCodec> opt_codec = map_format(spec.format, nullptr);
if (opt_codec) {
AudioCodec& codec = *opt_codec;
if (spec.info.supports_network_adaption) {
@@ -750,15 +750,15 @@
const std::string& mid,
const std::string& c_name,
const std::string track_id,
- const rtc::Optional<webrtc::AudioSendStream::Config::SendCodecSpec>&
+ const absl::optional<webrtc::AudioSendStream::Config::SendCodecSpec>&
send_codec_spec,
const std::vector<webrtc::RtpExtension>& extensions,
int max_send_bitrate_bps,
- const rtc::Optional<std::string>& audio_network_adaptor_config,
+ const absl::optional<std::string>& audio_network_adaptor_config,
webrtc::Call* call,
webrtc::Transport* send_transport,
const rtc::scoped_refptr<webrtc::AudioEncoderFactory>& encoder_factory,
- const rtc::Optional<webrtc::AudioCodecPairId> codec_pair_id)
+ const absl::optional<webrtc::AudioCodecPairId> codec_pair_id)
: call_(call),
config_(send_transport),
send_side_bwe_with_overhead_(
@@ -815,7 +815,7 @@
}
void SetAudioNetworkAdaptorConfig(
- const rtc::Optional<std::string>& audio_network_adaptor_config) {
+ const absl::optional<std::string>& audio_network_adaptor_config) {
RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
if (config_.audio_network_adaptor_config == audio_network_adaptor_config) {
return;
@@ -976,7 +976,7 @@
return error;
}
- rtc::Optional<int> send_rate;
+ absl::optional<int> send_rate;
if (audio_codec_spec_) {
send_rate = ComputeSendBitrate(max_send_bitrate_bps_,
parameters.encodings[0].max_bitrate_bps,
@@ -986,7 +986,7 @@
}
}
- const rtc::Optional<int> old_rtp_max_bitrate =
+ const absl::optional<int> old_rtp_max_bitrate =
rtp_parameters_.encodings[0].max_bitrate_bps;
double old_priority = rtp_parameters_.encodings[0].bitrate_priority;
rtp_parameters_ = parameters;
@@ -1122,7 +1122,7 @@
bool muted_ = false;
int max_send_bitrate_bps_;
webrtc::RtpParameters rtp_parameters_;
- rtc::Optional<webrtc::AudioCodecSpec> audio_codec_spec_;
+ absl::optional<webrtc::AudioCodecSpec> audio_codec_spec_;
RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(WebRtcAudioSendStream);
};
@@ -1140,7 +1140,7 @@
webrtc::Transport* rtcp_send_transport,
const rtc::scoped_refptr<webrtc::AudioDecoderFactory>& decoder_factory,
const std::map<int, webrtc::SdpAudioFormat>& decoder_map,
- rtc::Optional<webrtc::AudioCodecPairId> codec_pair_id,
+ absl::optional<webrtc::AudioCodecPairId> codec_pair_id,
size_t jitter_buffer_max_packets,
bool jitter_buffer_fast_accelerate)
: call_(call), config_() {
@@ -1515,7 +1515,7 @@
return false;
}
- rtc::Optional<std::string> audio_network_adaptor_config =
+ absl::optional<std::string> audio_network_adaptor_config =
GetAudioNetworkAdaptorConfig(options_);
for (auto& it : send_streams_) {
it.second->SetAudioNetworkAdaptorConfig(audio_network_adaptor_config);
@@ -1608,7 +1608,7 @@
bool WebRtcVoiceMediaChannel::SetSendCodecs(
const std::vector<AudioCodec>& codecs) {
RTC_DCHECK(worker_thread_checker_.CalledOnValidThread());
- dtmf_payload_type_ = rtc::nullopt;
+ dtmf_payload_type_ = absl::nullopt;
dtmf_payload_freq_ = -1;
// Validate supplied codecs list.
@@ -1638,9 +1638,10 @@
}
// Scan through the list to figure out the codec to use for sending.
- rtc::Optional<webrtc::AudioSendStream::Config::SendCodecSpec> send_codec_spec;
+ absl::optional<webrtc::AudioSendStream::Config::SendCodecSpec>
+ send_codec_spec;
webrtc::BitrateConstraints bitrate_config;
- rtc::Optional<webrtc::AudioCodecInfo> voice_codec_info;
+ absl::optional<webrtc::AudioCodecInfo> voice_codec_info;
for (const AudioCodec& voice_codec : codecs) {
if (!(IsCodec(voice_codec, kCnCodecName) ||
IsCodec(voice_codec, kDtmfCodecName) ||
@@ -1811,7 +1812,7 @@
return false;
}
- rtc::Optional<std::string> audio_network_adaptor_config =
+ absl::optional<std::string> audio_network_adaptor_config =
GetAudioNetworkAdaptorConfig(options_);
WebRtcAudioSendStream* stream = new WebRtcAudioSendStream(
ssrc, mid_, sp.cname, sp.id, send_codec_spec_, send_rtp_extensions_,
diff --git a/media/engine/webrtcvoiceengine.h b/media/engine/webrtcvoiceengine.h
index 21b352b..a95ff9f 100644
--- a/media/engine/webrtcvoiceengine.h
+++ b/media/engine/webrtcvoiceengine.h
@@ -124,10 +124,10 @@
// in case they are missing in the audio options. We need to do this because
// SetExtraOptions() will revert to defaults for options which are not
// provided.
- rtc::Optional<bool> extended_filter_aec_;
- rtc::Optional<bool> delay_agnostic_aec_;
- rtc::Optional<bool> experimental_ns_;
- rtc::Optional<bool> intelligibility_enhancer_;
+ absl::optional<bool> extended_filter_aec_;
+ absl::optional<bool> delay_agnostic_aec_;
+ absl::optional<bool> experimental_ns_;
+ absl::optional<bool> intelligibility_enhancer_;
// Jitter buffer settings for new streams.
size_t audio_jitter_buffer_max_packets_ = 50;
bool audio_jitter_buffer_fast_accelerate_ = false;
@@ -241,7 +241,7 @@
int max_send_bitrate_bps_ = 0;
AudioOptions options_;
- rtc::Optional<int> dtmf_payload_type_;
+ absl::optional<int> dtmf_payload_type_;
int dtmf_payload_freq_ = -1;
bool recv_transport_cc_enabled_ = false;
bool recv_nack_enabled_ = false;
@@ -277,7 +277,7 @@
std::map<uint32_t, WebRtcAudioReceiveStream*> recv_streams_;
std::vector<webrtc::RtpExtension> recv_rtp_extensions_;
- rtc::Optional<webrtc::AudioSendStream::Config::SendCodecSpec>
+ absl::optional<webrtc::AudioSendStream::Config::SendCodecSpec>
send_codec_spec_;
// TODO(kwiberg): Per-SSRC codec pair IDs?
diff --git a/media/engine/webrtcvoiceengine_unittest.cc b/media/engine/webrtcvoiceengine_unittest.cc
index 53c4393..b03af34 100644
--- a/media/engine/webrtcvoiceengine_unittest.cc
+++ b/media/engine/webrtcvoiceengine_unittest.cc
@@ -386,11 +386,12 @@
EXPECT_EQ(expected_bitrate, spec->target_bitrate_bps);
}
- rtc::Optional<int> GetCodecBitrate(int32_t ssrc) {
+ absl::optional<int> GetCodecBitrate(int32_t ssrc) {
return GetSendStreamConfig(ssrc).send_codec_spec->target_bitrate_bps;
}
- const rtc::Optional<std::string>& GetAudioNetworkAdaptorConfig(int32_t ssrc) {
+ const absl::optional<std::string>& GetAudioNetworkAdaptorConfig(
+ int32_t ssrc) {
return GetSendStreamConfig(ssrc).audio_network_adaptor_config;
}
@@ -1092,7 +1093,7 @@
// Now change it back to active and verify we resume sending.
// This should occur even when other parameters are updated.
parameters.encodings[0].active = true;
- parameters.encodings[0].max_bitrate_bps = rtc::Optional<int>(6000);
+ parameters.encodings[0].max_bitrate_bps = absl::optional<int>(6000);
EXPECT_TRUE(channel_->SetRtpSendParameters(kSsrcX, parameters).ok());
EXPECT_TRUE(GetSendStream(kSsrcX).IsSending());
}
@@ -1344,7 +1345,7 @@
EXPECT_EQ(22000, send_codec_spec.target_bitrate_bps);
EXPECT_STRCASEEQ("ISAC", send_codec_spec.format.name.c_str());
EXPECT_NE(send_codec_spec.format.clockrate_hz, 8000);
- EXPECT_EQ(rtc::nullopt, send_codec_spec.cng_payload_type);
+ EXPECT_EQ(absl::nullopt, send_codec_spec.cng_payload_type);
EXPECT_FALSE(channel_->CanInsertDtmf());
}
@@ -1943,7 +1944,7 @@
{
const auto& send_codec_spec = *GetSendStreamConfig(kSsrcX).send_codec_spec;
EXPECT_STRCASEEQ("PCMU", send_codec_spec.format.name.c_str());
- EXPECT_EQ(rtc::nullopt, send_codec_spec.cng_payload_type);
+ EXPECT_EQ(absl::nullopt, send_codec_spec.cng_payload_type);
}
// Set PCMU(8K) and CN(8K). VAD should be activated.
parameters.codecs[1] = kCn8000Codec;
@@ -1960,7 +1961,7 @@
{
const auto& send_codec_spec = *GetSendStreamConfig(kSsrcX).send_codec_spec;
EXPECT_STRCASEEQ("ISAC", send_codec_spec.format.name.c_str());
- EXPECT_EQ(rtc::nullopt, send_codec_spec.cng_payload_type);
+ EXPECT_EQ(absl::nullopt, send_codec_spec.cng_payload_type);
}
}
@@ -2155,7 +2156,7 @@
const auto& send_codec_spec =
*call_.GetAudioSendStream(ssrc)->GetConfig().send_codec_spec;
EXPECT_STRCASEEQ("PCMU", send_codec_spec.format.name.c_str());
- EXPECT_EQ(rtc::nullopt, send_codec_spec.cng_payload_type);
+ EXPECT_EQ(absl::nullopt, send_codec_spec.cng_payload_type);
}
}
@@ -2322,7 +2323,7 @@
cricket::AudioOptions options;
options.audio_network_adaptor = false;
SetAudioSend(kSsrcX, true, nullptr, &options);
- EXPECT_EQ(rtc::nullopt, GetAudioNetworkAdaptorConfig(kSsrcX));
+ EXPECT_EQ(absl::nullopt, GetAudioNetworkAdaptorConfig(kSsrcX));
}
TEST_F(WebRtcVoiceEngineTestFake, AudioNetworkAdaptorNotGetOverridden) {
@@ -2334,7 +2335,7 @@
GetAudioNetworkAdaptorConfig(kSsrcX));
const int initial_num = call_.GetNumCreatedSendStreams();
cricket::AudioOptions options;
- options.audio_network_adaptor = rtc::nullopt;
+ options.audio_network_adaptor = absl::nullopt;
// Unvalued |options.audio_network_adaptor|.should not reset audio network
// adaptor.
SetAudioSend(kSsrcX, true, nullptr, &options);
diff --git a/ortc/BUILD.gn b/ortc/BUILD.gn
index a45799c..08bdf8c 100644
--- a/ortc/BUILD.gn
+++ b/ortc/BUILD.gn
@@ -34,7 +34,6 @@
# libjingle_peerconnection.
deps = [
"../api:libjingle_peerconnection_api",
- "../api:optional",
"../api:ortc_api",
"../api/video_codecs:builtin_video_decoder_factory",
"../api/video_codecs:builtin_video_encoder_factory",
@@ -54,6 +53,7 @@
"../rtc_base:checks",
"../rtc_base:rtc_base",
"../rtc_base:rtc_base_approved",
+ "//third_party/abseil-cpp/absl/types:optional",
]
if (!build_with_chromium && is_clang) {
diff --git a/ortc/rtpparametersconversion.cc b/ortc/rtpparametersconversion.cc
index 1c336e2..ff5bece 100644
--- a/ortc/rtpparametersconversion.cc
+++ b/ortc/rtpparametersconversion.cc
@@ -230,7 +230,7 @@
return std::move(cricket_streams);
}
-rtc::Optional<RtcpFeedback> ToRtcpFeedback(
+absl::optional<RtcpFeedback> ToRtcpFeedback(
const cricket::FeedbackParam& cricket_feedback) {
if (cricket_feedback.id() == cricket::kRtcpFbParamCcm) {
if (cricket_feedback.param() == cricket::kRtcpFbCcmParamFir) {
@@ -238,7 +238,7 @@
} else {
RTC_LOG(LS_WARNING) << "Unsupported parameter for CCM RTCP feedback: "
<< cricket_feedback.param();
- return rtc::nullopt;
+ return absl::nullopt;
}
} else if (cricket_feedback.id() == cricket::kRtcpFbParamNack) {
if (cricket_feedback.param().empty()) {
@@ -249,13 +249,13 @@
} else {
RTC_LOG(LS_WARNING) << "Unsupported parameter for NACK RTCP feedback: "
<< cricket_feedback.param();
- return rtc::nullopt;
+ return absl::nullopt;
}
} else if (cricket_feedback.id() == cricket::kRtcpFbParamRemb) {
if (!cricket_feedback.param().empty()) {
RTC_LOG(LS_WARNING) << "Unsupported parameter for REMB RTCP feedback: "
<< cricket_feedback.param();
- return rtc::nullopt;
+ return absl::nullopt;
} else {
return RtcpFeedback(RtcpFeedbackType::REMB);
}
@@ -264,14 +264,14 @@
RTC_LOG(LS_WARNING)
<< "Unsupported parameter for transport-cc RTCP feedback: "
<< cricket_feedback.param();
- return rtc::nullopt;
+ return absl::nullopt;
} else {
return RtcpFeedback(RtcpFeedbackType::TRANSPORT_CC);
}
}
RTC_LOG(LS_WARNING) << "Unsupported RTCP feedback type: "
<< cricket_feedback.id();
- return rtc::nullopt;
+ return absl::nullopt;
}
std::vector<RtpEncodingParameters> ToRtpEncodings(
@@ -328,7 +328,7 @@
codec.preferred_payload_type.emplace(cricket_codec.id);
for (const cricket::FeedbackParam& cricket_feedback :
cricket_codec.feedback_params.params()) {
- rtc::Optional<RtcpFeedback> feedback = ToRtcpFeedback(cricket_feedback);
+ absl::optional<RtcpFeedback> feedback = ToRtcpFeedback(cricket_feedback);
if (feedback) {
codec.rtcp_feedback.push_back(feedback.value());
}
@@ -368,7 +368,7 @@
codec_param.payload_type = cricket_codec.id;
for (const cricket::FeedbackParam& cricket_feedback :
cricket_codec.feedback_params.params()) {
- rtc::Optional<RtcpFeedback> feedback = ToRtcpFeedback(cricket_feedback);
+ absl::optional<RtcpFeedback> feedback = ToRtcpFeedback(cricket_feedback);
if (feedback) {
codec_param.rtcp_feedback.push_back(feedback.value());
}
diff --git a/ortc/rtpparametersconversion.h b/ortc/rtpparametersconversion.h
index c75e354..c5aa16b 100644
--- a/ortc/rtpparametersconversion.h
+++ b/ortc/rtpparametersconversion.h
@@ -14,7 +14,7 @@
#include <memory>
#include <vector>
-#include "api/optional.h"
+#include "absl/types/optional.h"
#include "api/rtcerror.h"
#include "api/rtpparameters.h"
#include "media/base/codec.h"
@@ -80,7 +80,7 @@
// Returns empty value if |cricket_feedback| is a feedback type not
// supported/recognized.
-rtc::Optional<RtcpFeedback> ToRtcpFeedback(
+absl::optional<RtcpFeedback> ToRtcpFeedback(
const cricket::FeedbackParam& cricket_feedback);
std::vector<RtpEncodingParameters> ToRtpEncodings(
diff --git a/ortc/rtpparametersconversion_unittest.cc b/ortc/rtpparametersconversion_unittest.cc
index d08ce9a..ddf761d 100644
--- a/ortc/rtpparametersconversion_unittest.cc
+++ b/ortc/rtpparametersconversion_unittest.cc
@@ -373,7 +373,7 @@
}
TEST(RtpParametersConversionTest, ToRtcpFeedback) {
- rtc::Optional<RtcpFeedback> result = ToRtcpFeedback({"ccm", "fir"});
+ absl::optional<RtcpFeedback> result = ToRtcpFeedback({"ccm", "fir"});
EXPECT_EQ(RtcpFeedback(RtcpFeedbackType::CCM, RtcpFeedbackMessageType::FIR),
*result);
result = ToRtcpFeedback(cricket::FeedbackParam("nack"));
@@ -391,7 +391,7 @@
TEST(RtpParametersConversionTest, ToRtcpFeedbackErrors) {
// CCM with missing or invalid message type.
- rtc::Optional<RtcpFeedback> result = ToRtcpFeedback({"ccm", "pli"});
+ absl::optional<RtcpFeedback> result = ToRtcpFeedback({"ccm", "pli"});
EXPECT_FALSE(result);
result = ToRtcpFeedback(cricket::FeedbackParam("ccm"));
EXPECT_FALSE(result);
diff --git a/p2p/BUILD.gn b/p2p/BUILD.gn
index 07d1f71..55e96ca 100644
--- a/p2p/BUILD.gn
+++ b/p2p/BUILD.gn
@@ -83,7 +83,6 @@
deps = [
"../api:libjingle_peerconnection_api",
- "../api:optional",
"../api:ortc_api",
"../logging:ice_log",
"../rtc_base:checks",
@@ -91,6 +90,7 @@
"../rtc_base:safe_minmax",
"../rtc_base:stringutils",
"../system_wrappers:field_trial_api",
+ "//third_party/abseil-cpp/absl/types:optional",
]
if (build_with_chromium) {
diff --git a/p2p/base/dtlstransport.cc b/p2p/base/dtlstransport.cc
index e17d5c3..1bb1a6a 100644
--- a/p2p/base/dtlstransport.cc
+++ b/p2p/base/dtlstransport.cc
@@ -457,7 +457,7 @@
return ice_transport_->GetError();
}
-rtc::Optional<rtc::NetworkRoute> DtlsTransport::network_route() const {
+absl::optional<rtc::NetworkRoute> DtlsTransport::network_route() const {
return ice_transport_->network_route();
}
@@ -693,7 +693,7 @@
}
void DtlsTransport::OnNetworkRouteChanged(
- rtc::Optional<rtc::NetworkRoute> network_route) {
+ absl::optional<rtc::NetworkRoute> network_route) {
SignalNetworkRouteChanged(network_route);
}
@@ -799,7 +799,7 @@
void DtlsTransport::ConfigureHandshakeTimeout() {
RTC_DCHECK(dtls_);
- rtc::Optional<int> rtt = ice_transport_->GetRttEstimate();
+ absl::optional<int> rtt = ice_transport_->GetRttEstimate();
if (rtt) {
// Limit the timeout to a reasonable range in case the ICE RTT takes
// extreme values.
diff --git a/p2p/base/dtlstransport.h b/p2p/base/dtlstransport.h
index a4b1c6c..4003ab6 100644
--- a/p2p/base/dtlstransport.h
+++ b/p2p/base/dtlstransport.h
@@ -171,7 +171,7 @@
int GetError() override;
- rtc::Optional<rtc::NetworkRoute> network_route() const override;
+ absl::optional<rtc::NetworkRoute> network_route() const override;
int SetOption(rtc::Socket::Option opt, int value) override;
@@ -198,7 +198,7 @@
void OnReadyToSend(rtc::PacketTransportInternal* transport);
void OnReceivingState(rtc::PacketTransportInternal* transport);
void OnDtlsEvent(rtc::StreamInterface* stream_, int sig, int err);
- void OnNetworkRouteChanged(rtc::Optional<rtc::NetworkRoute> network_route);
+ void OnNetworkRouteChanged(absl::optional<rtc::NetworkRoute> network_route);
bool SetupDtls();
void MaybeStartDtls();
bool HandleDtlsPacket(const char* data, size_t size);
@@ -223,7 +223,7 @@
std::vector<int> srtp_ciphers_; // SRTP ciphers to use with DTLS.
bool dtls_active_ = false;
rtc::scoped_refptr<rtc::RTCCertificate> local_certificate_;
- rtc::Optional<rtc::SSLRole> dtls_role_;
+ absl::optional<rtc::SSLRole> dtls_role_;
rtc::SSLProtocolVersion ssl_max_version_;
rtc::CryptoOptions crypto_options_;
rtc::Buffer remote_fingerprint_value_;
diff --git a/p2p/base/fakedtlstransport.h b/p2p/base/fakedtlstransport.h
index a1bea13..5907f07 100644
--- a/p2p/base/fakedtlstransport.h
+++ b/p2p/base/fakedtlstransport.h
@@ -225,7 +225,7 @@
}
int GetError() override { return ice_transport_->GetError(); }
- rtc::Optional<rtc::NetworkRoute> network_route() const override {
+ absl::optional<rtc::NetworkRoute> network_route() const override {
return ice_transport_->network_route();
}
@@ -257,7 +257,7 @@
SignalWritableState(this);
}
- void OnNetworkRouteChanged(rtc::Optional<rtc::NetworkRoute> network_route) {
+ void OnNetworkRouteChanged(absl::optional<rtc::NetworkRoute> network_route) {
SignalNetworkRouteChanged(network_route);
}
@@ -271,7 +271,7 @@
bool do_dtls_ = false;
rtc::SSLProtocolVersion ssl_max_version_ = rtc::SSL_PROTOCOL_DTLS_12;
rtc::SSLFingerprint dtls_fingerprint_;
- rtc::Optional<rtc::SSLRole> dtls_role_;
+ absl::optional<rtc::SSLRole> dtls_role_;
int crypto_suite_ = rtc::SRTP_AES128_CM_SHA1_80;
rtc::CryptoOptions crypto_options_;
diff --git a/p2p/base/fakeicetransport.h b/p2p/base/fakeicetransport.h
index aa6afb8..25eb8a4 100644
--- a/p2p/base/fakeicetransport.h
+++ b/p2p/base/fakeicetransport.h
@@ -168,7 +168,7 @@
return true;
}
- rtc::Optional<int> GetRttEstimate() override { return rtc::nullopt; }
+ absl::optional<int> GetRttEstimate() override { return absl::nullopt; }
void SetMetricsObserver(webrtc::MetricsObserverInterface* observer) override {
}
@@ -224,10 +224,10 @@
rtc::CopyOnWriteBuffer last_sent_packet() { return last_sent_packet_; }
- rtc::Optional<rtc::NetworkRoute> network_route() const override {
+ absl::optional<rtc::NetworkRoute> network_route() const override {
return network_route_;
}
- void SetNetworkRoute(rtc::Optional<rtc::NetworkRoute> network_route) {
+ void SetNetworkRoute(absl::optional<rtc::NetworkRoute> network_route) {
network_route_ = network_route;
}
@@ -282,7 +282,7 @@
bool receiving_ = false;
bool combine_outgoing_packets_ = false;
rtc::CopyOnWriteBuffer send_packet_;
- rtc::Optional<rtc::NetworkRoute> network_route_;
+ absl::optional<rtc::NetworkRoute> network_route_;
std::map<rtc::Socket::Option, int> socket_options_;
rtc::CopyOnWriteBuffer last_sent_packet_;
};
diff --git a/p2p/base/icetransportinternal.h b/p2p/base/icetransportinternal.h
index c60059e..84e3386 100644
--- a/p2p/base/icetransportinternal.h
+++ b/p2p/base/icetransportinternal.h
@@ -63,14 +63,14 @@
};
// Information about ICE configuration.
-// TODO(deadbeef): Use rtc::Optional to represent unset values, instead of
+// TODO(deadbeef): Use absl::optional to represent unset values, instead of
// -1.
struct IceConfig {
// The ICE connection receiving timeout value in milliseconds.
- rtc::Optional<int> receiving_timeout;
+ absl::optional<int> receiving_timeout;
// Time interval in milliseconds to ping a backup connection when the ICE
// channel is strongly connected.
- rtc::Optional<int> backup_connection_ping_interval;
+ absl::optional<int> backup_connection_ping_interval;
ContinualGatheringPolicy continual_gathering_policy = GATHER_ONCE;
@@ -83,7 +83,7 @@
bool prioritize_most_likely_candidate_pairs = false;
// Writable connections are pinged at a slower rate once stablized.
- rtc::Optional<int> stable_writable_connection_ping_interval;
+ absl::optional<int> stable_writable_connection_ping_interval;
// If set to true, this means the ICE transport should presume TURN-to-TURN
// candidate pairs will succeed, even before a binding response is received.
@@ -91,16 +91,16 @@
// Interval to check on all networks and to perform ICE regathering on any
// active network having no connection on it.
- rtc::Optional<int> regather_on_failed_networks_interval;
+ absl::optional<int> regather_on_failed_networks_interval;
// Interval to perform ICE regathering on all networks
// The delay in milliseconds is sampled from the uniform distribution [a, b]
- rtc::Optional<rtc::IntervalRange> regather_all_networks_interval_range;
+ absl::optional<rtc::IntervalRange> regather_all_networks_interval_range;
// The time period in which we will not switch the selected connection
// when a new connection becomes receiving but the selected connection is not
// in case that the selected connection may become receiving soon.
- rtc::Optional<int> receiving_switching_delay;
+ absl::optional<int> receiving_switching_delay;
// TODO(honghaiz): Change the default to regular nomination.
// Default nomination mode if the remote does not support renomination.
@@ -110,12 +110,12 @@
// for a candidate pair when it is both writable and receiving (strong
// connectivity). This parameter overrides the default value given by
// |STRONG_PING_INTERVAL| in p2ptransport.h if set.
- rtc::Optional<int> ice_check_interval_strong_connectivity;
+ absl::optional<int> ice_check_interval_strong_connectivity;
// The interval in milliseconds at which ICE checks (STUN pings) will be sent
// for a candidate pair when it is either not writable or not receiving (weak
// connectivity). This parameter overrides the default value given by
// |WEAK_PING_INTERVAL| in p2ptransport.h if set.
- rtc::Optional<int> ice_check_interval_weak_connectivity;
+ absl::optional<int> ice_check_interval_weak_connectivity;
// ICE checks (STUN pings) will not be sent at higher rate (lower interval)
// than this, no matter what other settings there are.
// Measure in milliseconds.
@@ -123,23 +123,23 @@
// Note that this parameter overrides both the above check intervals for
// candidate pairs with strong or weak connectivity, if either of the above
// interval is shorter than the min interval.
- rtc::Optional<int> ice_check_min_interval;
+ absl::optional<int> ice_check_min_interval;
// The min time period for which a candidate pair must wait for response to
// connectivity checks before it becomes unwritable. This parameter
// overrides the default value given by |CONNECTION_WRITE_CONNECT_TIMEOUT|
// in port.h if set, when determining the writability of a candidate pair.
- rtc::Optional<int> ice_unwritable_timeout;
+ absl::optional<int> ice_unwritable_timeout;
// The min number of connectivity checks that a candidate pair must sent
// without receiving response before it becomes unwritable. This parameter
// overrides the default value given by |CONNECTION_WRITE_CONNECT_FAILURES| in
// port.h if set, when determining the writability of a candidate pair.
- rtc::Optional<int> ice_unwritable_min_checks;
+ absl::optional<int> ice_unwritable_min_checks;
// The interval in milliseconds at which STUN candidates will resend STUN
// binding requests to keep NAT bindings open.
- rtc::Optional<int> stun_keepalive_interval;
+ absl::optional<int> stun_keepalive_interval;
- rtc::Optional<rtc::AdapterType> network_preference;
+ absl::optional<rtc::AdapterType> network_preference;
IceConfig();
IceConfig(int receiving_timeout_ms,
@@ -154,7 +154,7 @@
// Helper getters for parameters with implementation-specific default value.
// By convention, parameters with default value are represented by
- // rtc::Optional and setting a parameter to null restores its default value.
+ // absl::optional and setting a parameter to null restores its default value.
int receiving_timeout_or_default() const;
int backup_connection_ping_interval_or_default() const;
int stable_writable_connection_ping_interval_or_default() const;
@@ -240,8 +240,8 @@
CandidateStatsList* candidate_stats_list) = 0;
// Returns RTT estimate over the currently active connection, or an empty
- // rtc::Optional if there is none.
- virtual rtc::Optional<int> GetRttEstimate() = 0;
+ // absl::optional if there is none.
+ virtual absl::optional<int> GetRttEstimate() = 0;
sigslot::signal1<IceTransportInternal*> SignalGatheringState;
diff --git a/p2p/base/mockicetransport.h b/p2p/base/mockicetransport.h
index c30d797..8baab37 100644
--- a/p2p/base/mockicetransport.h
+++ b/p2p/base/mockicetransport.h
@@ -57,7 +57,7 @@
void SetRemoteIceParameters(const IceParameters& ice_params) override {}
void SetRemoteIceMode(IceMode mode) override {}
void SetIceConfig(const IceConfig& config) override {}
- rtc::Optional<int> GetRttEstimate() override { return rtc::nullopt; }
+ absl::optional<int> GetRttEstimate() override { return absl::nullopt; }
void MaybeStartGathering() override {}
void SetMetricsObserver(webrtc::MetricsObserverInterface* observer) override {
}
diff --git a/p2p/base/p2ptransportchannel.cc b/p2p/base/p2ptransportchannel.cc
index d1c58c2..dca8d63 100644
--- a/p2p/base/p2ptransportchannel.cc
+++ b/p2p/base/p2ptransportchannel.cc
@@ -61,7 +61,7 @@
bool LocalCandidateUsesPreferredNetwork(
const cricket::Connection* conn,
- rtc::Optional<rtc::AdapterType> network_preference) {
+ absl::optional<rtc::AdapterType> network_preference) {
rtc::AdapterType network_type = conn->port()->Network()->type();
return network_preference.has_value() && (network_type == network_preference);
}
@@ -69,7 +69,7 @@
int CompareCandidatePairsByNetworkPreference(
const cricket::Connection* a,
const cricket::Connection* b,
- rtc::Optional<rtc::AdapterType> network_preference) {
+ absl::optional<rtc::AdapterType> network_preference) {
bool a_uses_preferred_network =
LocalCandidateUsesPreferredNetwork(a, network_preference);
bool b_uses_preferred_network =
@@ -236,7 +236,7 @@
return false;
}
- rtc::Optional<int64_t> receiving_unchanged_threshold(
+ absl::optional<int64_t> receiving_unchanged_threshold(
rtc::TimeMillis() - config_.receiving_switching_delay_or_default());
int cmp = CompareConnections(selected_connection_, new_connection,
receiving_unchanged_threshold,
@@ -331,12 +331,12 @@
return gathering_state_;
}
-rtc::Optional<int> P2PTransportChannel::GetRttEstimate() {
+absl::optional<int> P2PTransportChannel::GetRttEstimate() {
if (selected_connection_ != nullptr
&& selected_connection_->rtt_samples() > 0) {
return selected_connection_->rtt();
} else {
- return rtc::nullopt;
+ return absl::nullopt;
}
}
@@ -419,9 +419,9 @@
remote_ice_mode_ = mode;
}
-// TODO(qingsi): We apply the convention that setting a rtc::Optional parameter
+// TODO(qingsi): We apply the convention that setting a absl::optional parameter
// to null restores its default value in the implementation. However, some
-// rtc::Optional parameters are only processed below if non-null, e.g.,
+// absl::optional parameters are only processed below if non-null, e.g.,
// regather_on_failed_networks_interval, and thus there is no way to restore the
// defaults. Fix this issue later for consistency.
void P2PTransportChannel::SetIceConfig(const IceConfig& config) {
@@ -1261,7 +1261,7 @@
return true;
}
-rtc::Optional<rtc::NetworkRoute> P2PTransportChannel::network_route() const {
+absl::optional<rtc::NetworkRoute> P2PTransportChannel::network_route() const {
return network_route_;
}
@@ -1319,7 +1319,7 @@
int P2PTransportChannel::CompareCandidatePairNetworks(
const Connection* a,
const Connection* b,
- rtc::Optional<rtc::AdapterType> network_preference) const {
+ absl::optional<rtc::AdapterType> network_preference) const {
int compare_a_b_by_network_preference =
CompareCandidatePairsByNetworkPreference(a, b,
config_.network_preference);
@@ -1345,7 +1345,7 @@
int P2PTransportChannel::CompareConnectionStates(
const Connection* a,
const Connection* b,
- rtc::Optional<int64_t> receiving_unchanged_threshold,
+ absl::optional<int64_t> receiving_unchanged_threshold,
bool* missed_receiving_unchanged_threshold) const {
// First, prefer a connection that's writable or presumed writable over
// one that's not writable.
@@ -1474,7 +1474,7 @@
int P2PTransportChannel::CompareConnections(
const Connection* a,
const Connection* b,
- rtc::Optional<int64_t> receiving_unchanged_threshold,
+ absl::optional<int64_t> receiving_unchanged_threshold,
bool* missed_receiving_unchanged_threshold) const {
RTC_CHECK(a != nullptr);
RTC_CHECK(b != nullptr);
@@ -1538,7 +1538,7 @@
// TODO(honghaiz): Don't sort; Just use std::max_element in the right places.
std::stable_sort(connections_.begin(), connections_.end(),
[this](const Connection* a, const Connection* b) {
- int cmp = CompareConnections(a, b, rtc::nullopt, nullptr);
+ int cmp = CompareConnections(a, b, absl::nullopt, nullptr);
if (cmp != 0) {
return cmp > 0;
}
diff --git a/p2p/base/p2ptransportchannel.h b/p2p/base/p2ptransportchannel.h
index 8e3b06c..421bf8f 100644
--- a/p2p/base/p2ptransportchannel.h
+++ b/p2p/base/p2ptransportchannel.h
@@ -104,7 +104,7 @@
// only update the parameter if it is considered set in |config|. For example,
// a negative value of receiving_timeout will be considered "not set" and we
// will not use it to update the respective parameter in |config_|.
- // TODO(deadbeef): Use rtc::Optional instead of negative values.
+ // TODO(deadbeef): Use absl::optional instead of negative values.
void SetIceConfig(const IceConfig& config) override;
const IceConfig& config() const;
static webrtc::RTCError ValidateIceConfig(const IceConfig& config);
@@ -120,7 +120,7 @@
int GetError() override;
bool GetStats(std::vector<ConnectionInfo>* candidate_pair_stats_list,
std::vector<CandidateStats>* candidate_stats_list) override;
- rtc::Optional<int> GetRttEstimate() override;
+ absl::optional<int> GetRttEstimate() override;
// TODO(honghaiz): Remove this method once the reference of it in
// Chromoting is removed.
@@ -138,7 +138,7 @@
void PruneAllPorts();
int check_receiving_interval() const;
- rtc::Optional<rtc::NetworkRoute> network_route() const override;
+ absl::optional<rtc::NetworkRoute> network_route() const override;
// Helper method used only in unittest.
rtc::DiffServCodePoint DefaultDscpValue() const;
@@ -202,7 +202,7 @@
int CompareCandidatePairNetworks(
const Connection* a,
const Connection* b,
- rtc::Optional<rtc::AdapterType> network_preference) const;
+ absl::optional<rtc::AdapterType> network_preference) const;
// The methods below return a positive value if |a| is preferable to |b|,
// a negative value if |b| is preferable, and 0 if they're equally preferable.
@@ -214,7 +214,7 @@
int CompareConnectionStates(
const cricket::Connection* a,
const cricket::Connection* b,
- rtc::Optional<int64_t> receiving_unchanged_threshold,
+ absl::optional<int64_t> receiving_unchanged_threshold,
bool* missed_receiving_unchanged_threshold) const;
int CompareConnectionCandidates(const cricket::Connection* a,
const cricket::Connection* b) const;
@@ -225,7 +225,7 @@
// Returns a positive value if |a| is better than |b|.
int CompareConnections(const cricket::Connection* a,
const cricket::Connection* b,
- rtc::Optional<int64_t> receiving_unchanged_threshold,
+ absl::optional<int64_t> receiving_unchanged_threshold,
bool* missed_receiving_unchanged_threshold) const;
bool PresumedWritable(const cricket::Connection* conn) const;
@@ -408,7 +408,7 @@
rtc::AsyncInvoker invoker_;
webrtc::MetricsObserverInterface* metrics_observer_ = nullptr;
- rtc::Optional<rtc::NetworkRoute> network_route_;
+ absl::optional<rtc::NetworkRoute> network_route_;
webrtc::IceEventLog ice_event_log_;
RTC_DISALLOW_COPY_AND_ASSIGN(P2PTransportChannel);
diff --git a/p2p/base/p2ptransportchannel_unittest.cc b/p2p/base/p2ptransportchannel_unittest.cc
index fb44e51..39dfaa3 100644
--- a/p2p/base/p2ptransportchannel_unittest.cc
+++ b/p2p/base/p2ptransportchannel_unittest.cc
@@ -113,7 +113,7 @@
cricket::IceConfig CreateIceConfig(
int receiving_timeout,
cricket::ContinualGatheringPolicy continual_gathering_policy,
- rtc::Optional<int> backup_ping_interval = rtc::nullopt) {
+ absl::optional<int> backup_ping_interval = absl::nullopt) {
cricket::IceConfig config;
config.receiving_timeout = receiving_timeout;
config.continual_gathering_policy = continual_gathering_policy;
@@ -709,7 +709,7 @@
}
}
- void OnNetworkRouteChanged(rtc::Optional<rtc::NetworkRoute> network_route) {
+ void OnNetworkRouteChanged(absl::optional<rtc::NetworkRoute> network_route) {
// If the |network_route| is unset, don't count. This is used in the case
// when the network on remote side is down, the signal will be fired with an
// unset network route and it shouldn't trigger a connection switch.
@@ -3153,7 +3153,7 @@
conn->SignalNominated(conn);
}
- void OnNetworkRouteChanged(rtc::Optional<rtc::NetworkRoute> network_route) {
+ void OnNetworkRouteChanged(absl::optional<rtc::NetworkRoute> network_route) {
last_network_route_ = network_route;
if (last_network_route_) {
last_sent_packet_id_ = last_network_route_->last_sent_packet_id;
@@ -3220,7 +3220,7 @@
int last_sent_packet_id_ = -1;
bool channel_ready_to_send_ = false;
IceTransportState channel_state_ = IceTransportState::STATE_INIT;
- rtc::Optional<rtc::NetworkRoute> last_network_route_;
+ absl::optional<rtc::NetworkRoute> last_network_route_;
};
TEST_F(P2PTransportChannelPingTest, TestTriggeredChecks) {
diff --git a/p2p/base/packettransportinternal.cc b/p2p/base/packettransportinternal.cc
index 2d28ffb..ba5f1e9 100644
--- a/p2p/base/packettransportinternal.cc
+++ b/p2p/base/packettransportinternal.cc
@@ -24,8 +24,8 @@
return false;
}
-rtc::Optional<NetworkRoute> PacketTransportInternal::network_route() const {
- return rtc::Optional<NetworkRoute>();
+absl::optional<NetworkRoute> PacketTransportInternal::network_route() const {
+ return absl::optional<NetworkRoute>();
}
} // namespace rtc
diff --git a/p2p/base/packettransportinternal.h b/p2p/base/packettransportinternal.h
index a5b9772..dfa6577 100644
--- a/p2p/base/packettransportinternal.h
+++ b/p2p/base/packettransportinternal.h
@@ -14,7 +14,7 @@
#include <string>
#include <vector>
-#include "api/optional.h"
+#include "absl/types/optional.h"
// This is included for PacketOptions.
#include "api/ortc/packettransportinterface.h"
#include "p2p/base/port.h"
@@ -66,7 +66,7 @@
// Returns the current network route with transport overhead.
// TODO(zhihuang): Make it pure virtual once the Chrome/remoting is updated.
- virtual rtc::Optional<NetworkRoute> network_route() const;
+ virtual absl::optional<NetworkRoute> network_route() const;
// Emitted when the writable state, represented by |writable()|, changes.
sigslot::signal1<PacketTransportInternal*> SignalWritableState;
@@ -94,7 +94,7 @@
SignalSentPacket;
// Signalled when the current network route has changed.
- sigslot::signal1<rtc::Optional<rtc::NetworkRoute>> SignalNetworkRouteChanged;
+ sigslot::signal1<absl::optional<rtc::NetworkRoute>> SignalNetworkRouteChanged;
protected:
PacketTransportInternal();
diff --git a/p2p/base/port.cc b/p2p/base/port.cc
index a0bf51d..e77baf5 100644
--- a/p2p/base/port.cc
+++ b/p2p/base/port.cc
@@ -1740,7 +1740,7 @@
}
// TODO(deadbeef): A value of '0' for the generation is used for both
// generation 0 and "generation unknown". It should be changed to an
- // rtc::Optional to fix this.
+ // absl::optional to fix this.
if (remote_candidate_.username() == ice_params.ufrag &&
remote_candidate_.password() == ice_params.pwd &&
remote_candidate_.generation() == 0) {
diff --git a/p2p/base/port.h b/p2p/base/port.h
index 81554e8..de025e6 100644
--- a/p2p/base/port.h
+++ b/p2p/base/port.h
@@ -17,8 +17,8 @@
#include <string>
#include <vector>
+#include "absl/types/optional.h"
#include "api/candidate.h"
-#include "api/optional.h"
#include "api/rtcerror.h"
#include "logging/rtc_event_log/events/rtc_event_ice_candidate_pair.h"
#include "logging/rtc_event_log/events/rtc_event_ice_candidate_pair_config.h"
@@ -107,7 +107,7 @@
Candidate candidate;
// STUN port stats if this candidate is a STUN candidate.
- rtc::Optional<StunStats> stun_stats;
+ absl::optional<StunStats> stun_stats;
};
typedef std::vector<CandidateStats> CandidateStatsList;
@@ -152,7 +152,7 @@
// https://w3c.github.io/webrtc-stats/#dom-rtcicecandidatepairstats-totalroundtriptime
uint64_t total_round_trip_time_ms;
// https://w3c.github.io/webrtc-stats/#dom-rtcicecandidatepairstats-currentroundtriptime
- rtc::Optional<uint32_t> current_round_trip_time_ms;
+ absl::optional<uint32_t> current_round_trip_time_ms;
};
// Information about all the candidate pairs of a channel.
@@ -379,7 +379,7 @@
int16_t network_cost() const { return network_cost_; }
- void GetStunStats(rtc::Optional<StunStats>* stats) override{};
+ void GetStunStats(absl::optional<StunStats>* stats) override{};
protected:
enum { MSG_DESTROY_IF_DEAD = 0, MSG_FIRST_AVAILABLE };
@@ -554,11 +554,11 @@
int rtt() const { return rtt_; }
int unwritable_timeout() const;
- void set_unwritable_timeout(const rtc::Optional<int>& value_ms) {
+ void set_unwritable_timeout(const absl::optional<int>& value_ms) {
unwritable_timeout_ = value_ms;
}
int unwritable_min_checks() const;
- void set_unwritable_min_checks(const rtc::Optional<int>& value) {
+ void set_unwritable_min_checks(const absl::optional<int>& value) {
unwritable_min_checks_ = value;
}
@@ -626,7 +626,7 @@
}
int receiving_timeout() const;
- void set_receiving_timeout(rtc::Optional<int> receiving_timeout_ms) {
+ void set_receiving_timeout(absl::optional<int> receiving_timeout_ms) {
receiving_timeout_ = receiving_timeout_ms;
}
@@ -801,7 +801,7 @@
// https://w3c.github.io/webrtc-stats/#dom-rtcicecandidatepairstats-totalroundtriptime
uint64_t total_round_trip_time_ms_ = 0;
// https://w3c.github.io/webrtc-stats/#dom-rtcicecandidatepairstats-currentroundtriptime
- rtc::Optional<uint32_t> current_round_trip_time_ms_;
+ absl::optional<uint32_t> current_round_trip_time_ms_;
int64_t last_ping_sent_; // last time we sent a ping to the other side
int64_t last_ping_received_; // last time we received a ping from the other
// side
@@ -812,17 +812,17 @@
PacketLossEstimator packet_loss_estimator_;
- rtc::Optional<int> unwritable_timeout_;
- rtc::Optional<int> unwritable_min_checks_;
+ absl::optional<int> unwritable_timeout_;
+ absl::optional<int> unwritable_min_checks_;
bool reported_;
IceCandidatePairState state_;
// Time duration to switch from receiving to not receiving.
- rtc::Optional<int> receiving_timeout_;
+ absl::optional<int> receiving_timeout_;
int64_t time_created_ms_;
int num_pings_sent_ = 0;
- rtc::Optional<webrtc::IceCandidatePairDescription> log_description_;
+ absl::optional<webrtc::IceCandidatePairDescription> log_description_;
uint32_t hash_;
webrtc::IceEventLog* ice_event_log_ = nullptr;
diff --git a/p2p/base/port_unittest.cc b/p2p/base/port_unittest.cc
index 5a0dc1a..5588705 100644
--- a/p2p/base/port_unittest.cc
+++ b/p2p/base/port_unittest.cc
@@ -502,7 +502,7 @@
PacketSocketFactory* socket_factory) {
return UDPPort::Create(&main_, socket_factory, MakeNetwork(addr), 0, 0,
username_, password_, std::string(), true,
- rtc::nullopt);
+ absl::nullopt);
}
TCPPort* CreateTcpPort(const SocketAddress& addr) {
return CreateTcpPort(addr, &socket_factory_);
@@ -518,7 +518,7 @@
stun_servers.insert(kStunAddr);
return StunPort::Create(&main_, factory, MakeNetwork(addr), 0, 0, username_,
password_, stun_servers, std::string(),
- rtc::nullopt);
+ absl::nullopt);
}
Port* CreateRelayPort(const SocketAddress& addr, RelayType rtype,
ProtocolType int_proto, ProtocolType ext_proto) {
diff --git a/p2p/base/portallocator.cc b/p2p/base/portallocator.cc
index d938361..ee0466f 100644
--- a/p2p/base/portallocator.cc
+++ b/p2p/base/portallocator.cc
@@ -127,7 +127,7 @@
int candidate_pool_size,
bool prune_turn_ports,
webrtc::TurnCustomizer* turn_customizer,
- const rtc::Optional<int>& stun_candidate_keepalive_interval) {
+ const absl::optional<int>& stun_candidate_keepalive_interval) {
CheckRunOnValidThreadIfInitialized();
bool ice_servers_changed =
(stun_servers != stun_servers_ || turn_servers != turn_servers_);
diff --git a/p2p/base/portallocator.h b/p2p/base/portallocator.h
index 30ace5e..4d128b0 100644
--- a/p2p/base/portallocator.h
+++ b/p2p/base/portallocator.h
@@ -250,7 +250,7 @@
// The default value of the interval in implementation is restored if a null
// optional value is passed.
virtual void SetStunKeepaliveIntervalForReadyPorts(
- const rtc::Optional<int>& stun_keepalive_interval) {}
+ const absl::optional<int>& stun_keepalive_interval) {}
// Another way of getting the information provided by the signals below.
//
// Ports and candidates are not guaranteed to be in the same order as the
@@ -353,8 +353,8 @@
int candidate_pool_size,
bool prune_turn_ports,
webrtc::TurnCustomizer* turn_customizer = nullptr,
- const rtc::Optional<int>&
- stun_candidate_keepalive_interval = rtc::nullopt);
+ const absl::optional<int>&
+ stun_candidate_keepalive_interval = absl::nullopt);
const ServerAddresses& stun_servers() const {
CheckRunOnValidThreadIfInitialized();
@@ -371,7 +371,7 @@
return candidate_pool_size_;
}
- const rtc::Optional<int>& stun_candidate_keepalive_interval() const {
+ const absl::optional<int>& stun_candidate_keepalive_interval() const {
CheckRunOnValidThreadIfInitialized();
return stun_candidate_keepalive_interval_;
}
@@ -607,7 +607,7 @@
// all TurnPort(s) created.
webrtc::TurnCustomizer* turn_customizer_ = nullptr;
- rtc::Optional<int> stun_candidate_keepalive_interval_;
+ absl::optional<int> stun_candidate_keepalive_interval_;
};
} // namespace cricket
diff --git a/p2p/base/portinterface.h b/p2p/base/portinterface.h
index 49a4164..7df4543 100644
--- a/p2p/base/portinterface.h
+++ b/p2p/base/portinterface.h
@@ -14,8 +14,8 @@
#include <string>
#include <vector>
+#include "absl/types/optional.h"
#include "api/candidate.h"
-#include "api/optional.h"
#include "p2p/base/transportdescription.h"
#include "rtc_base/asyncpacketsocket.h"
#include "rtc_base/socketaddress.h"
@@ -127,7 +127,7 @@
virtual std::string ToString() const = 0;
- virtual void GetStunStats(rtc::Optional<StunStats>* stats) = 0;
+ virtual void GetStunStats(absl::optional<StunStats>* stats) = 0;
protected:
PortInterface();
diff --git a/p2p/base/regatheringcontroller.cc b/p2p/base/regatheringcontroller.cc
index c358e6a..6d4c4fd 100644
--- a/p2p/base/regatheringcontroller.cc
+++ b/p2p/base/regatheringcontroller.cc
@@ -14,7 +14,7 @@
using Config = BasicRegatheringController::Config;
-Config::Config(const rtc::Optional<rtc::IntervalRange>&
+Config::Config(const absl::optional<rtc::IntervalRange>&
regather_on_all_networks_interval_range,
int regather_on_failed_networks_interval)
: regather_on_all_networks_interval_range(
diff --git a/p2p/base/regatheringcontroller.h b/p2p/base/regatheringcontroller.h
index e030ff0..891ec85 100644
--- a/p2p/base/regatheringcontroller.h
+++ b/p2p/base/regatheringcontroller.h
@@ -46,13 +46,13 @@
class BasicRegatheringController : public sigslot::has_slots<> {
public:
struct Config {
- Config(const rtc::Optional<rtc::IntervalRange>&
+ Config(const absl::optional<rtc::IntervalRange>&
regather_on_all_networks_interval_range,
int regather_on_failed_networks_interval);
Config(const Config& other);
~Config();
Config& operator=(const Config& other);
- rtc::Optional<rtc::IntervalRange> regather_on_all_networks_interval_range;
+ absl::optional<rtc::IntervalRange> regather_on_all_networks_interval_range;
int regather_on_failed_networks_interval;
};
@@ -82,7 +82,7 @@
void OnIceTransportStateChanged(cricket::IceTransportInternal*) {}
void OnIceTransportWritableState(rtc::PacketTransportInternal*) {}
void OnIceTransportReceivingState(rtc::PacketTransportInternal*) {}
- void OnIceTransportNetworkRouteChanged(rtc::Optional<rtc::NetworkRoute>) {}
+ void OnIceTransportNetworkRouteChanged(absl::optional<rtc::NetworkRoute>) {}
// Schedules delayed and repeated regathering of local candidates on all
// networks, where the delay in milliseconds is randomly sampled from the
// range in the config. The delay of each repetition is independently sampled
diff --git a/p2p/base/regatheringcontroller_unittest.cc b/p2p/base/regatheringcontroller_unittest.cc
index 798611b..18b23e0 100644
--- a/p2p/base/regatheringcontroller_unittest.cc
+++ b/p2p/base/regatheringcontroller_unittest.cc
@@ -54,7 +54,7 @@
ice_transport_(new cricket::MockIceTransport()),
allocator_(
new cricket::FakePortAllocator(rtc::Thread::Current(), nullptr)) {
- BasicRegatheringController::Config regathering_config(rtc::nullopt, 0);
+ BasicRegatheringController::Config regathering_config(absl::nullopt, 0);
regathering_controller_.reset(new BasicRegatheringController(
regathering_config, ice_transport_.get(), rtc::Thread::Current()));
}
@@ -171,7 +171,7 @@
rtc::ScopedFakeClock clock;
InitializeAndGatherOnceWithSessionCleared();
- BasicRegatheringController::Config config(rtc::nullopt, 2000);
+ BasicRegatheringController::Config config(absl::nullopt, 2000);
regathering_controller()->SetConfig(config);
regathering_controller()->Start();
SIMULATED_WAIT(false, 3000, clock);
diff --git a/p2p/base/stunport.cc b/p2p/base/stunport.cc
index 2f6bf61..1705d1d 100644
--- a/p2p/base/stunport.cc
+++ b/p2p/base/stunport.cc
@@ -314,11 +314,11 @@
return PROTO_UDP;
}
-void UDPPort::GetStunStats(rtc::Optional<StunStats>* stats) {
+void UDPPort::GetStunStats(absl::optional<StunStats>* stats) {
*stats = stats_;
}
-void UDPPort::set_stun_keepalive_delay(const rtc::Optional<int>& delay) {
+void UDPPort::set_stun_keepalive_delay(const absl::optional<int>& delay) {
stun_keepalive_delay_ = delay.value_or(STUN_KEEPALIVE_INTERVAL);
}
@@ -555,7 +555,7 @@
const std::string& password,
const ServerAddresses& servers,
const std::string& origin,
- rtc::Optional<int> stun_keepalive_interval) {
+ absl::optional<int> stun_keepalive_interval) {
StunPort* port = new StunPort(thread, factory, network, min_port, max_port,
username, password, servers, origin);
port->set_stun_keepalive_delay(stun_keepalive_interval);
diff --git a/p2p/base/stunport.h b/p2p/base/stunport.h
index bdaa31b..9cb479d 100644
--- a/p2p/base/stunport.h
+++ b/p2p/base/stunport.h
@@ -43,7 +43,7 @@
const std::string& password,
const std::string& origin,
bool emit_local_for_anyaddress,
- rtc::Optional<int> stun_keepalive_interval) {
+ absl::optional<int> stun_keepalive_interval) {
UDPPort* port = new UDPPort(thread, factory, network, socket, username,
password, origin, emit_local_for_anyaddress);
port->set_stun_keepalive_delay(stun_keepalive_interval);
@@ -63,7 +63,7 @@
const std::string& password,
const std::string& origin,
bool emit_local_for_anyaddress,
- rtc::Optional<int> stun_keepalive_interval) {
+ absl::optional<int> stun_keepalive_interval) {
UDPPort* port =
new UDPPort(thread, factory, network, min_port, max_port, username,
password, origin, emit_local_for_anyaddress);
@@ -105,9 +105,9 @@
bool SupportsProtocol(const std::string& protocol) const override;
ProtocolType GetProtocol() const override;
- void GetStunStats(rtc::Optional<StunStats>* stats) override;
+ void GetStunStats(absl::optional<StunStats>* stats) override;
- void set_stun_keepalive_delay(const rtc::Optional<int>& delay);
+ void set_stun_keepalive_delay(const absl::optional<int>& delay);
int stun_keepalive_delay() const {
return stun_keepalive_delay_;
}
@@ -267,7 +267,7 @@
const std::string& password,
const ServerAddresses& servers,
const std::string& origin,
- rtc::Optional<int> stun_keepalive_interval);
+ absl::optional<int> stun_keepalive_interval);
void PrepareAddress() override;
diff --git a/p2p/base/stunport_unittest.cc b/p2p/base/stunport_unittest.cc
index ef47db1..c7ced3a 100644
--- a/p2p/base/stunport_unittest.cc
+++ b/p2p/base/stunport_unittest.cc
@@ -74,7 +74,7 @@
stun_port_.reset(cricket::StunPort::Create(
rtc::Thread::Current(), &socket_factory_, &network_, 0, 0,
rtc::CreateRandomString(16), rtc::CreateRandomString(22), stun_servers,
- std::string(), rtc::nullopt));
+ std::string(), absl::nullopt));
stun_port_->set_stun_keepalive_delay(stun_keepalive_delay_);
// If |stun_keepalive_lifetime_| is negative, let the stun port
// choose its lifetime from the network type.
@@ -94,7 +94,7 @@
stun_port_.reset(cricket::UDPPort::Create(
rtc::Thread::Current(), &socket_factory_, &network_, socket_.get(),
rtc::CreateRandomString(16), rtc::CreateRandomString(22), std::string(),
- false, rtc::nullopt));
+ false, absl::nullopt));
ASSERT_TRUE(stun_port_ != NULL);
ServerAddresses stun_servers;
stun_servers.insert(server_addr);
diff --git a/p2p/base/turnport.cc b/p2p/base/turnport.cc
index a09c640..2dd67bc 100644
--- a/p2p/base/turnport.cc
+++ b/p2p/base/turnport.cc
@@ -15,7 +15,7 @@
#include <utility>
#include <vector>
-#include "api/optional.h"
+#include "absl/types/optional.h"
#include "p2p/base/stun.h"
#include "rtc_base/asyncpacketsocket.h"
#include "rtc_base/byteorder.h"
@@ -151,7 +151,7 @@
// If the destruction timestamp is set, that means destruction has been
// scheduled (will occur TURN_PERMISSION_TIMEOUT after it's scheduled).
- rtc::Optional<int64_t> destruction_timestamp() {
+ absl::optional<int64_t> destruction_timestamp() {
return destruction_timestamp_;
}
void set_destruction_timestamp(int64_t destruction_timestamp) {
@@ -185,7 +185,7 @@
// is also used as an ID of the event scheduling. When the destruction event
// actually fires, the TurnEntry will be destroyed only if the timestamp here
// matches the one in the firing event.
- rtc::Optional<int64_t> destruction_timestamp_;
+ absl::optional<int64_t> destruction_timestamp_;
};
TurnPort::TurnPort(rtc::Thread* thread,
diff --git a/p2p/base/turnport_unittest.cc b/p2p/base/turnport_unittest.cc
index bd88bd1..68654f4 100644
--- a/p2p/base/turnport_unittest.cc
+++ b/p2p/base/turnport_unittest.cc
@@ -336,7 +336,7 @@
void CreateUdpPort(const SocketAddress& address) {
udp_port_.reset(UDPPort::Create(
&main_, &socket_factory_, MakeNetwork(address), 0, 0, kIceUfrag2,
- kIcePwd2, std::string(), false, rtc::nullopt));
+ kIcePwd2, std::string(), false, absl::nullopt));
// UDP port will be controlled.
udp_port_->SetIceRole(ICEROLE_CONTROLLED);
udp_port_->SignalPortComplete.connect(
diff --git a/p2p/base/udptransport.cc b/p2p/base/udptransport.cc
index 8b4ce00..c21e5b8 100644
--- a/p2p/base/udptransport.cc
+++ b/p2p/base/udptransport.cc
@@ -96,11 +96,11 @@
return result;
}
-rtc::Optional<rtc::NetworkRoute> UdpTransport::network_route() const {
+absl::optional<rtc::NetworkRoute> UdpTransport::network_route() const {
rtc::NetworkRoute network_route;
network_route.packet_overhead =
/*kUdpOverhead=*/8 + GetIpOverhead(GetLocalAddress().family());
- return rtc::Optional<rtc::NetworkRoute>(network_route);
+ return absl::optional<rtc::NetworkRoute>(network_route);
}
int UdpTransport::SetOption(rtc::Socket::Option opt, int value) {
diff --git a/p2p/base/udptransport.h b/p2p/base/udptransport.h
index 118b596..541910e 100644
--- a/p2p/base/udptransport.h
+++ b/p2p/base/udptransport.h
@@ -14,7 +14,7 @@
#include <memory>
#include <string>
-#include "api/optional.h"
+#include "absl/types/optional.h"
#include "api/ortc/udptransportinterface.h"
#include "p2p/base/packettransportinternal.h"
#include "rtc_base/asyncpacketsocket.h" // For PacketOptions.
@@ -61,7 +61,7 @@
int GetError() override;
- rtc::Optional<rtc::NetworkRoute> network_route() const override;
+ absl::optional<rtc::NetworkRoute> network_route() const override;
protected:
PacketTransportInternal* GetInternal() override;
diff --git a/p2p/client/basicportallocator.cc b/p2p/client/basicportallocator.cc
index bca979b..6a0c02b 100644
--- a/p2p/client/basicportallocator.cc
+++ b/p2p/client/basicportallocator.cc
@@ -456,7 +456,7 @@
}
void BasicPortAllocatorSession::SetStunKeepaliveIntervalForReadyPorts(
- const rtc::Optional<int>& stun_keepalive_interval) {
+ const absl::optional<int>& stun_keepalive_interval) {
auto ports = ReadyPorts();
for (PortInterface* port : ports) {
// The port type and protocol can be used to identify different subclasses
diff --git a/p2p/client/basicportallocator.h b/p2p/client/basicportallocator.h
index 1822b7d..0925ea3 100644
--- a/p2p/client/basicportallocator.h
+++ b/p2p/client/basicportallocator.h
@@ -138,7 +138,7 @@
void RegatherOnFailedNetworks() override;
void RegatherOnAllNetworks() override;
void SetStunKeepaliveIntervalForReadyPorts(
- const rtc::Optional<int>& stun_keepalive_interval) override;
+ const absl::optional<int>& stun_keepalive_interval) override;
void PruneAllPorts() override;
protected: