Index: webrtc/api/peerconnectioninterface.h |
diff --git a/webrtc/api/peerconnectioninterface.h b/webrtc/api/peerconnectioninterface.h |
index 624c67f9cba562bbc111fb79fe80ca2d6eafe31c..bcb6170c1226ee57f4b26d8855a25ac5dbbd2d5e 100644 |
--- a/webrtc/api/peerconnectioninterface.h |
+++ b/webrtc/api/peerconnectioninterface.h |
@@ -227,6 +227,15 @@ class PeerConnectionInterface : public rtc::RefCountInterface { |
GATHER_CONTINUALLY |
}; |
+ enum class RTCConfigurationType { |
+ // A configuration that is safer to use, despite not having the best |
+ // performance. Currently this is the default configuration. |
+ kSafe, |
+ // An aggressive configuration that has better performance, although it |
+ // may be riskier and may need extra support in the application. |
+ kAggressive |
+ }; |
+ |
// TODO(hbos): Change into class with private data and public getters. |
// TODO(nisse): In particular, accessing fields directly from an |
// application is brittle, since the organization mirrors the |
@@ -240,16 +249,11 @@ class PeerConnectionInterface : public rtc::RefCountInterface { |
// methods for all settings which are of interest to applications, |
// Chrome in particular. |
- // A configuration that is safer to use, despite it may not have the best |
- // performance. |
- static RTCConfiguration SafeConfiguration() { return RTCConfiguration(); } |
- |
- // An aggressive configuration that has better performance, although it |
- // may be riskier and may need extra support in the application. |
- static RTCConfiguration AggressiveConfiguration() { |
- RTCConfiguration config; |
- config.redetermine_role_on_ice_restart = false; |
- return config; |
+ RTCConfiguration() = default; |
+ RTCConfiguration(RTCConfigurationType type) { |
+ if (type == RTCConfigurationType::kAggressive) { |
+ redetermine_role_on_ice_restart = false; |
+ } |
} |
bool dscp() { return media_config.enable_dscp; } |