Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1163)

Side by Side Diff: chrome/browser/extensions/api/metrics_private/metrics_private_api.h

Issue 12089062: Move API functions registrations out of ExtensionFunctionRegistry. (Closed) Base URL: http://src.chromium.org/svn/trunk/src/
Patch Set: Created 7 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
(Empty)
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_EXTENSIONS_API_METRICS_PRIVATE_METRICS_PRIVATE_API_H_
6 #define CHROME_BROWSER_EXTENSIONS_API_METRICS_PRIVATE_METRICS_PRIVATE_API_H_
7
8 #include <string>
9
10 #include "base/metrics/histogram.h"
11 #include "chrome/browser/extensions/extension_function.h"
12
13 namespace extensions {
14
15 class MetricsPrivateRecordUserActionFunction : public SyncExtensionFunction {
16 public:
17 DECLARE_EXTENSION_FUNCTION("metricsPrivate.recordUserAction",
18 METRICSPRIVATE_RECORDUSERACTION)
19
20 protected:
21 virtual ~MetricsPrivateRecordUserActionFunction() {}
22
23 // ExtensionFunction:
24 virtual bool RunImpl() OVERRIDE;
25 };
26
27 class MetricsHistogramHelperFunction : public SyncExtensionFunction {
28 protected:
29 virtual ~MetricsHistogramHelperFunction() {}
30 bool GetNameAndSample(std::string* name, int* sample);
31 virtual bool RecordValue(const std::string& name,
32 base::HistogramType type,
33 int min, int max, size_t buckets,
34 int sample);
35 };
36
37 class MetricsPrivateRecordValueFunction
38 : public MetricsHistogramHelperFunction {
39 public:
40 DECLARE_EXTENSION_FUNCTION("metricsPrivate.recordValue",
41 METRICSPRIVATE_RECORDVALUE)
42
43 protected:
44 virtual ~MetricsPrivateRecordValueFunction() {}
45
46 // ExtensionFunction:
47 virtual bool RunImpl() OVERRIDE;
48 };
49
50 class MetricsPrivateRecordPercentageFunction
51 : public MetricsHistogramHelperFunction {
52 public:
53 DECLARE_EXTENSION_FUNCTION("metricsPrivate.recordPercentage",
54 METRICSPRIVATE_RECORDPERCENTAGE)
55
56 protected:
57 virtual ~MetricsPrivateRecordPercentageFunction() {}
58
59 // ExtensionFunction:
60 virtual bool RunImpl() OVERRIDE;
61 };
62
63 class MetricsPrivateRecordCountFunction
64 : public MetricsHistogramHelperFunction {
65 public:
66 DECLARE_EXTENSION_FUNCTION("metricsPrivate.recordCount",
67 METRICSPRIVATE_RECORDCOUNT)
68
69 protected:
70 virtual ~MetricsPrivateRecordCountFunction() {}
71
72 // ExtensionFunction:
73 virtual bool RunImpl() OVERRIDE;
74 };
75
76 class MetricsPrivateRecordSmallCountFunction
77 : public MetricsHistogramHelperFunction {
78 public:
79 DECLARE_EXTENSION_FUNCTION("metricsPrivate.recordSmallCount",
80 METRICSPRIVATE_RECORDSMALLCOUNT)
81
82 protected:
83 virtual ~MetricsPrivateRecordSmallCountFunction() {}
84
85 // ExtensionFunction:
86 virtual bool RunImpl() OVERRIDE;
87 };
88
89 class MetricsPrivateRecordMediumCountFunction
90 : public MetricsHistogramHelperFunction {
91 public:
92 DECLARE_EXTENSION_FUNCTION("metricsPrivate.recordMediumCount",
93 METRICSPRIVATE_RECORDMEDIUMCOUNT)
94
95 protected:
96 virtual ~MetricsPrivateRecordMediumCountFunction() {}
97
98 // ExtensionFunction:
99 virtual bool RunImpl() OVERRIDE;
100 };
101
102 class MetricsPrivateRecordTimeFunction : public MetricsHistogramHelperFunction {
103 public:
104 DECLARE_EXTENSION_FUNCTION("metricsPrivate.recordTime",
105 METRICSPRIVATE_RECORDTIME)
106
107 protected:
108 virtual ~MetricsPrivateRecordTimeFunction() {}
109
110 // ExtensionFunction:
111 virtual bool RunImpl() OVERRIDE;
112 };
113
114 class MetricsPrivateRecordMediumTimeFunction
115 : public MetricsHistogramHelperFunction {
116 public:
117 DECLARE_EXTENSION_FUNCTION("metricsPrivate.recordMediumTime",
118 METRICSPRIVATE_RECORDMEDIUMTIME)
119
120 protected:
121 virtual ~MetricsPrivateRecordMediumTimeFunction() {}
122
123 // ExtensionFunction:
124 virtual bool RunImpl() OVERRIDE;
125 };
126
127 class MetricsPrivateRecordLongTimeFunction
128 : public MetricsHistogramHelperFunction {
129 public:
130 DECLARE_EXTENSION_FUNCTION("metricsPrivate.recordLongTime",
131 METRICSPRIVATE_RECORDLONGTIME)
132
133 protected:
134 virtual ~MetricsPrivateRecordLongTimeFunction() {}
135
136 // ExtensionFunction:
137 virtual bool RunImpl() OVERRIDE;
138 };
139
140 } // namespace extensions
141
142 #endif // CHROME_BROWSER_EXTENSIONS_API_METRICS_PRIVATE_METRICS_PRIVATE_API_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698