Upstream version 9.38.198.0
[platform/framework/web/crosswalk.git] / src / chrome / browser / chrome_browser_field_trials.h
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef CHROME_BROWSER_CHROME_BROWSER_FIELD_TRIALS_H_
6 #define CHROME_BROWSER_CHROME_BROWSER_FIELD_TRIALS_H_
7
8 #include "base/basictypes.h"
9 #include "base/command_line.h"
10
11 class PrefService;
12
13 namespace base {
14 class Time;
15 }
16
17 class ChromeBrowserFieldTrials {
18  public:
19   explicit ChromeBrowserFieldTrials(const base::CommandLine& command_line);
20   ~ChromeBrowserFieldTrials();
21
22   // Called by the browser main sequence to set up Field Trials for this client.
23   // |local_state| is used to set browser-wide properties.
24   void SetupFieldTrials(const base::Time& install_time,
25                         PrefService* local_state);
26
27  private:
28   // Instantiates dynamic trials by querying their state, to ensure they get
29   // reported as used.
30   void InstantiateDynamicTrials();
31
32   const base::CommandLine& parsed_command_line_;
33
34   DISALLOW_COPY_AND_ASSIGN(ChromeBrowserFieldTrials);
35 };
36
37 #endif  // CHROME_BROWSER_CHROME_BROWSER_FIELD_TRIALS_H_