chrome_browser_field_trials.h revision b2df76ea8fec9e32f6f3718986dba0d95315b29c
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
11class PrefService;
12
13class ChromeBrowserFieldTrials {
14 public:
15  explicit ChromeBrowserFieldTrials(const CommandLine& command_line);
16  ~ChromeBrowserFieldTrials();
17
18  // Called by the browser main sequence to set up Field Trials for this client.
19  // |local_state| is used to extract properties like install time.
20  void SetupFieldTrials(PrefService* local_state);
21
22 private:
23  // Instantiates dynamic trials by querying their state, to ensure they get
24  // reported as used.
25  void InstantiateDynamicTrials();
26
27  const CommandLine& parsed_command_line_;
28
29  DISALLOW_COPY_AND_ASSIGN(ChromeBrowserFieldTrials);
30};
31
32#endif  // CHROME_BROWSER_CHROME_BROWSER_FIELD_TRIALS_H_
33