1// Copyright (c) 2011 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_AUTO_LAUNCH_TRIAL_H_
6#define CHROME_BROWSER_AUTO_LAUNCH_TRIAL_H_
7
8#include <string>
9
10// Strings used with the "auto launching Chrome at computer startup" trial.  If
11// the field trial is running then...
12// base::FieldTrialList::TrialExists(kAutoLaunchTrial_Name) returns true.
13//
14// The field trial consists of two groups of users: those that auto-launch
15// Chrome at startup and those that don't.  The group_name() of the field
16// trial object is used to determine the group that the user belongs to.
17//
18// The field trial is setup in ChromeBrowserMainParts::AutoLaunchFieldTrial()
19// based on the user's brand code:
20//
21//   - brand RNGP auto launches Chrome on computer startup.
22//   - brand RNGQ does not.
23//   - any other brand code does whatever comes natural to it.
24
25extern const char kAutoLaunchTrialName[];
26extern const char kAutoLaunchTrialAutoLaunchGroup[];
27extern const char kAutoLaunchTrialControlGroup[];
28
29namespace auto_launch_trial {
30
31// The possible responses for the auto-launch infobar.
32enum InfobarMetricResponse {
33  INFOBAR_CUT_IT_OUT = 0,
34  INFOBAR_OK,
35  INFOBAR_IGNORE,
36};
37
38// Whether the auto-launch experiment is active and the user is part of it.
39bool IsInAutoLaunchGroup();
40
41// Whether the brand is part of the experiment group for auto-launch.
42bool IsInExperimentGroup(const std::string& brand_code);
43
44// Whether the brand is part of the control group for auto-launch.
45bool IsInControlGroup(const std::string& brand_code);
46
47}  // namespace auto_launch_trial
48
49#endif  // CHROME_BROWSER_AUTO_LAUNCH_TRIAL_H_
50