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. 4 5 #ifndef PPAPI_THUNK_PPB_UMA_PRIVATE_API_H_ 6 #define PPAPI_THUNK_PPB_UMA_PRIVATE_API_H_ 7 8 #include "ppapi/shared_impl/singleton_resource_id.h" 9 #include "ppapi/thunk/ppapi_thunk_export.h" 10 11 namespace ppapi { 12 namespace thunk { 13 14 class PPAPI_THUNK_EXPORT PPB_UMA_Singleton_API { 15 public: 16 virtual ~PPB_UMA_Singleton_API() {} 17 18 virtual void HistogramCustomTimes(PP_Instance instance, 19 struct PP_Var name, 20 int64_t sample, 21 int64_t min, 22 int64_t max, 23 uint32_t bucket_count) = 0; 24 25 virtual void HistogramCustomCounts(PP_Instance instance, 26 struct PP_Var name, 27 int32_t sample, 28 int32_t min, 29 int32_t max, 30 uint32_t bucket_count) = 0; 31 32 virtual void HistogramEnumeration(PP_Instance instance, 33 struct PP_Var name, 34 int32_t sample, 35 int32_t boundary_value) = 0; 36 37 virtual int32_t IsCrashReportingEnabled( 38 PP_Instance instance, 39 scoped_refptr<TrackedCallback> cc) = 0; 40 41 static const SingletonResourceID kSingletonResourceID = UMA_SINGLETON_ID; 42 }; 43 44 } // namespace thunk 45 } // namespace ppapi 46 47 #endif // PPAPI_THUNK_PPB_UMA_PRIVATE_API_H_ 48