Vectorize website settings icons in omnibox
[chromium-blink-merge.git] / ppapi / cpp / private / uma_private.h
blob78d526d82be33f96545533fe1e9e7ea115c783ab
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 PPAPI_CPP_PRIVATE_UMA_PRIVATE_H_
6 #define PPAPI_CPP_PRIVATE_UMA_PRIVATE_H_
8 #include <string>
10 #include "ppapi/c/pp_instance.h"
11 #include "ppapi/cpp/instance_handle.h"
13 namespace pp {
15 class CompletionCallback;
17 class UMAPrivate {
18 public:
19 UMAPrivate();
20 explicit UMAPrivate(const InstanceHandle& instance);
21 ~UMAPrivate();
23 static bool IsAvailable();
25 void HistogramCustomTimes(const std::string& name,
26 int64_t sample,
27 int64_t min,
28 int64_t max,
29 uint32_t bucket_count);
31 void HistogramCustomCounts(const std::string& name,
32 int32_t sample,
33 int32_t min,
34 int32_t max,
35 uint32_t bucket_count);
37 void HistogramEnumeration(const std::string& name,
38 int32_t sample,
39 int32_t boundary_value);
41 int32_t IsCrashReportingEnabled(const CompletionCallback& cc);
43 private:
44 PP_Instance instance_;
47 } // namespace pp
49 #endif // PPAPI_CPP_PRIVATE_UMA_PRIVATE_H_