don't pretend to support dbus on windows in dbus_export.h
[chromium-blink-merge.git] / components / google / core / browser / google_search_metrics.h
blobd6d1211b13d6f35e0227f8baa407cc3233de9628
1 // Copyright 2014 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.
5 #ifndef COMPONENTS_GOOGLE_CORE_BROWSER_GOOGLE_SEARCH_METRICS_H_
6 #define COMPONENTS_GOOGLE_CORE_BROWSER_GOOGLE_SEARCH_METRICS_H_
8 #include "build/build_config.h"
10 // A thin helper class used by parties interested in reporting Google search
11 // metrics (mostly counts of searches from different access points). This class
12 // partly exists to make testing easier.
13 class GoogleSearchMetrics {
14 public:
15 // Various Google Search access points, to be used with UMA enumeration
16 // histograms.
17 enum AccessPoint {
18 AP_OMNIBOX,
19 AP_OMNIBOX_INSTANT,
20 AP_DIRECT_NAV,
21 AP_DIRECT_NAV_INSTANT,
22 AP_HOME_PAGE,
23 AP_HOME_PAGE_INSTANT,
24 AP_SEARCH_APP,
25 AP_SEARCH_APP_INSTANT,
26 AP_OTHER,
27 AP_OTHER_INSTANT,
28 AP_BOUNDARY,
31 GoogleSearchMetrics();
32 virtual ~GoogleSearchMetrics();
34 // Record a single Google search from source |ap|.
35 virtual void RecordGoogleSearch(AccessPoint ap) const;
37 #if defined(OS_ANDROID)
38 // Record a single Android Google search from source |ap|. |prerender_enabled|
39 // is set to true when prerendering is enabled via settings.
40 virtual void RecordAndroidGoogleSearch(AccessPoint ap,
41 bool prerender_enabled) const;
42 #endif
45 #endif // COMPONENTS_GOOGLE_CORE_BROWSER_GOOGLE_SEARCH_METRICS_H_