From 93ec9c557b23c27b457240fc9885fd17aa8b571a Mon Sep 17 00:00:00 2001 From: "andresp@webrtc.org" Date: Tue, 13 May 2014 14:09:40 +0000 Subject: [PATCH] Revert "FieldTrial implementation for webrtc." (rev 6089) New wiring plans require it to be landed first in chrome for a cleaner roll of webrtc. BUG=crbug/367114 R=tommi@webrtc.org TBR=tommi@webrtc.org Review URL: https://webrtc-codereview.appspot.com/17479004 git-svn-id: http://webrtc.googlecode.com/svn/trunk@6122 4adac7df-926f-26a2-2b94-8c16560cd09d --- .../system_wrappers/interface/field_trial.h | 67 ------------------- webrtc/system_wrappers/source/field_trial.cc | 30 --------- .../source/system_wrappers.gyp | 2 - 3 files changed, 99 deletions(-) delete mode 100644 webrtc/system_wrappers/interface/field_trial.h delete mode 100644 webrtc/system_wrappers/source/field_trial.cc diff --git a/webrtc/system_wrappers/interface/field_trial.h b/webrtc/system_wrappers/interface/field_trial.h deleted file mode 100644 index 7397cafcd..000000000 --- a/webrtc/system_wrappers/interface/field_trial.h +++ /dev/null @@ -1,67 +0,0 @@ -// -// Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. -// -// Use of this source code is governed by a BSD-style license -// that can be found in the LICENSE file in the root of the source -// tree. An additional intellectual property rights grant can be found -// in the file PATENTS. All contributing project authors may -// be found in the AUTHORS file in the root of the source tree. -// - -#ifndef WEBRTC_SYSTEM_WRAPPERS_INTERFACE_FIELD_TRIAL_H_ -#define WEBRTC_SYSTEM_WRAPPERS_INTERFACE_FIELD_TRIAL_H_ - -#include - -#include "webrtc/common_types.h" - -// Field trials allow a client of webrtc (such as Chrome) to turn on feature -// code in binraries out in the field and gather information with that. -// WebRTC field trials are designed to be wired up directly to chrome field -// trials and speed up the time developers need to get features out there by -// spending less time wiring up APIs to control whether the feature is on/off. -// Note, that not every feature is candidate to be controlled by them as it may -// require proper negotiation between involved parties (e.g. SDP negotiation). -// -// E.g.: To experiment with a new method that could lead to a different -// trade-off between CPU/bandwidth: -// -// 1 - Develop the feature with default behaviour off: -// -// if (FieldTrial::FindFullName("WebRTCExperimenMethod2") == "Enabled") -// method2(); -// else -// method1(); -// -// 2 - Once the changes are rolled to chrome, the new code path can be executed -// by running chrome with --force-fieldtrials=WebRTCExperimentMethod2/Enabled/ -// or controled by finch studies. -// -// 3 - Evaluate the new feature and clean the code paths. -// -// TODO(andresp): find out how to get bots and unit tests to run with field -// trials enabled. - -namespace webrtc { -namespace field_trial { - -typedef std::string (*FindFullNameMethod)(const std::string&); - -// Returns the group name chosen for the named trial, or the empty string -// if the trial does not exists. -// -// Note: To keep things tidy append all the trial names with WebRTC. -std::string FindFullName(const std::string& name); - -// WebRTC clients MUST call this method to setup field trials. -// Failing to do so will crash the first time code tries to access a field -// trial. -// -// This method must be called before any WebRTC methods. Functions -// provided should be thread-safe. -WEBRTC_DLLEXPORT void Init(FindFullNameMethod find); - -} // namespace field_trial -} // namespace webrtc - -#endif // WEBRTC_SYSTEM_WRAPPERS_INTERFACE_FIELD_TRIAL_H_ diff --git a/webrtc/system_wrappers/source/field_trial.cc b/webrtc/system_wrappers/source/field_trial.cc deleted file mode 100644 index 53822644e..000000000 --- a/webrtc/system_wrappers/source/field_trial.cc +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. -// -// Use of this source code is governed by a BSD-style license -// that can be found in the LICENSE file in the root of the source -// tree. An additional intellectual property rights grant can be found -// in the file PATENTS. All contributing project authors may -// be found in the AUTHORS file in the root of the source tree. -// - -#include "webrtc/system_wrappers/interface/field_trial.h" - -#include - -namespace webrtc { -namespace field_trial { -namespace { -FindFullNameMethod find_full_name_method_ = NULL; -} // namespace - -void Init(FindFullNameMethod method) { - assert(find_full_name_method_ == NULL); - find_full_name_method_ = method; -} - -std::string FindFullName(const std::string& name) { - assert(find_full_name_method_ != NULL); - return find_full_name_method_(name); -} -} // namespace field_trial -} // namespace webrtc diff --git a/webrtc/system_wrappers/source/system_wrappers.gyp b/webrtc/system_wrappers/source/system_wrappers.gyp index dd25de674..36d4d9cd5 100644 --- a/webrtc/system_wrappers/source/system_wrappers.gyp +++ b/webrtc/system_wrappers/source/system_wrappers.gyp @@ -35,7 +35,6 @@ '../interface/data_log_impl.h', '../interface/event_tracer.h', '../interface/event_wrapper.h', - '../interface/field_trial.h', '../interface/file_wrapper.h', '../interface/fix_interlocked_exchange_pointer_win.h', '../interface/logcat_trace_context.h', @@ -86,7 +85,6 @@ 'event_tracer.cc', 'event_win.cc', 'event_win.h', - 'field_trial.cc', 'file_impl.cc', 'file_impl.h', 'logcat_trace_context.cc',