Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(2494)

Unified Diff: net/nqe/network_quality_estimator_params.h

Issue 2858743002: NQE: Move params from the estimator class to the params class (Closed)
Patch Set: ryansturm comments Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « net/nqe/network_quality_estimator.cc ('k') | net/nqe/network_quality_estimator_params.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: net/nqe/network_quality_estimator_params.h
diff --git a/net/nqe/network_quality_estimator_params.h b/net/nqe/network_quality_estimator_params.h
index 9996735c4902a6625619bf53b66c494f5b3c0877..17292b1f7ac68174938a786701c1fdfc2bdb0268 100644
--- a/net/nqe/network_quality_estimator_params.h
+++ b/net/nqe/network_quality_estimator_params.h
@@ -9,6 +9,7 @@
#include <string>
#include "base/macros.h"
+#include "base/optional.h"
#include "base/threading/thread_checker.h"
#include "net/base/network_change_notifier.h"
#include "net/nqe/effective_connection_type.h"
@@ -22,7 +23,7 @@ namespace internal {
// NetworkQualityEstimatorParams computes the configuration parameters for
// the network quality estimator.
-class NetworkQualityEstimatorParams {
+class NET_EXPORT_PRIVATE NetworkQualityEstimatorParams {
public:
// |params| is the map containing all field trial parameters related to
// NetworkQualityEstimator field trial.
@@ -36,15 +37,6 @@ class NetworkQualityEstimatorParams {
// not specified.
std::string GetEffectiveConnectionTypeAlgorithm() const;
- // Computes and returns the weight multiplier per second, which represents the
- // factor by which the weight of an observation reduces every second.
- double GetWeightMultiplierPerSecond() const;
-
- // Returns the factor by which the weight of an observation reduces for every
- // dBm difference between the current signal strength (in dBm), and the signal
- // strength at the time when the observation was taken.
- double GetWeightMultiplierPerDbm() const;
-
// Returns a descriptive name corresponding to |connection_type|.
static const char* GetNameForConnectionType(
net::NetworkChangeNotifier::ConnectionType connection_type);
@@ -67,30 +59,57 @@ class NetworkQualityEstimatorParams {
void ObtainEffectiveConnectionTypeModelParams(
nqe::internal::NetworkQuality connection_thresholds[]) const;
- // Returns the fraction of URL requests that should record the correlation
- // UMA.
- double correlation_uma_logging_probability() const;
+ // Returns the weight multiplier per second, which represents the factor by
+ // which the weight of an observation reduces every second.
+ double weight_multiplier_per_second() const {
+ return weight_multiplier_per_second_;
+ }
- // Returns true if the effective connection type has been forced via field
- // trial parameters.
- bool forced_effective_connection_type_set() const;
+ // Returns the factor by which the weight of an observation reduces for every
+ // dBm difference between the current signal strength (in dBm), and the signal
+ // strength at the time when the observation was taken.
+ double weight_multiplier_per_dbm() const {
+ return weight_multiplier_per_dbm_;
+ }
- // Returns the effective connection type if it has been forced via field trial
- // parameters.
- EffectiveConnectionType forced_effective_connection_type() const;
+ // Returns the fraction of URL requests that should record the correlation
+ // UMA.
+ double correlation_uma_logging_probability() const {
+ return correlation_uma_logging_probability_;
+ }
+
+ // Returns an unset value if the effective connection type has not been forced
+ // via the |params| provided to this class. Otherwise, returns a value set to
+ // the effective connection type that has been forced.
+ base::Optional<EffectiveConnectionType> forced_effective_connection_type()
+ const {
+ return forced_effective_connection_type_;
+ }
// Returns true if reading from the persistent cache is enabled.
- bool persistent_cache_reading_enabled() const;
+ bool persistent_cache_reading_enabled() const {
+ return persistent_cache_reading_enabled_;
+ }
// Returns the the minimum interval betweeen consecutive notifications to a
// single socket watcher.
- base::TimeDelta GetMinSocketWatcherNotificationInterval() const;
+ base::TimeDelta min_socket_watcher_notification_interval() const {
+ return min_socket_watcher_notification_interval_;
+ }
private:
// Map containing all field trial parameters related to
// NetworkQualityEstimator field trial.
const std::map<std::string, std::string> params_;
+ const double weight_multiplier_per_second_;
+ const double weight_multiplier_per_dbm_;
+ const double correlation_uma_logging_probability_;
+ const base::Optional<EffectiveConnectionType>
+ forced_effective_connection_type_;
+ const bool persistent_cache_reading_enabled_;
+ const base::TimeDelta min_socket_watcher_notification_interval_;
+
base::ThreadChecker thread_checker_;
DISALLOW_COPY_AND_ASSIGN(NetworkQualityEstimatorParams);
« no previous file with comments | « net/nqe/network_quality_estimator.cc ('k') | net/nqe/network_quality_estimator_params.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698