Home | History | Annotate | Download | only in metrics
      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 CHROMECAST_METRICS_PLATFORM_METRICS_PROVIDERS_H_
      6 #define CHROMECAST_METRICS_PLATFORM_METRICS_PROVIDERS_H_
      7 
      8 #include "components/metrics/proto/system_profile.pb.h"
      9 
     10 namespace metrics {
     11 class MetricsService;
     12 }
     13 
     14 namespace chromecast {
     15 namespace metrics {
     16 
     17 // Build-level hook for different platforms to provide data to MetricsService.
     18 void RegisterPlatformMetricsProviders(
     19     ::metrics::MetricsService* metrics_service);
     20 
     21 // Returns the current release channel.
     22 ::metrics::SystemProfileProto::Channel GetPlatformReleaseChannel();
     23 
     24 // Returns a string representing this build's version.
     25 std::string GetPlatformVersionString();
     26 
     27 // Returns whether or not metrics reporting should be on.
     28 bool PlatformIsReportingEnabled();
     29 
     30 // Called when the UMA client ID has been set.
     31 void PlatformSetClientID(const std::string& client_id);
     32 
     33 // Called when an upload has completed.
     34 void PlatformOnLogUploadComplete();
     35 
     36 }  // namespace metrics
     37 }  // namespace chromecast
     38 
     39 #endif  // CHROMECAST_METRICS_PLATFORM_METRICS_PROVIDERS_H_
     40