blob: 6db611db71e17778bf62f8a58b85ea4901c1c414 [file] [log] [blame]
// Copyright 2014 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef COMPONENTS_METRICS_METRICS_SWITCHES_H_
#define COMPONENTS_METRICS_METRICS_SWITCHES_H_
#include "base/command_line.h"
namespace metrics {
namespace switches {
// Alphabetical list of switches specific to the metrics component. Document
// each in the .cc file.
extern const char kForceEnableMetricsReporting[];
extern const char kMetricsRecordingOnly[];
extern const char kMetricsUploadIntervalSec[];
extern const char kResetVariationState[];
} // namespace switches
// Returns true if kMetricsRecordingOnly is on the command line for the current
// process.
bool IsMetricsRecordingOnlyEnabled();
// Returns true if kForceEnableMetricsReporting is on the command line for the
// current process.
bool IsMetricsReportingForceEnabled();
// Adds kMetricsRecordingOnly to |command_line| if not already present.
void EnableMetricsRecordingOnlyForTesting(
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess());
// Adds kForceEnableMetricsReporting to |command_line| if not already present.
void ForceEnableMetricsReportingForTesting(
base::CommandLine* command_line = base::CommandLine::ForCurrentProcess());
} // namespace metrics
#endif // COMPONENTS_METRICS_METRICS_SWITCHES_H_