#ifndef CHROME_BROWSER_ASH_PLUGIN_VM_PLUGIN_VM_METRICS_UTIL_H_
#define CHROME_BROWSER_ASH_PLUGIN_VM_PLUGIN_VM_METRICS_UTIL_H_
#include "base/metrics/histogram_functions.h"
namespace plugin_vm {
extern const char kPluginVmLaunchResultHistogram[];
extern const char kPluginVmSetupResultHistogram[];
extern const char kPluginVmDlcUseResultHistogram[];
enum class PluginVmLaunchResult {
kSuccess = 0,
kError = 1,
kInvalidLicense = 2,
kVmMissing = 3,
kExpiredLicense = 4,
kNetworkError = 5,
kInsufficientDiskSpace = 6,
kStoppedWaitingForVmTools = 7,
kMaxValue = kStoppedWaitingForVmTools,
};
enum class PluginVmSetupResult {
kSuccess = 0,
kUserCancelledDownloadingPluginVmImage = 4,
kUserCancelledImportingPluginVmImage = 5,
kUserCancelledDownloadingPluginVmDlc = 7,
kVmAlreadyExists = 8,
kUserCancelledCheckingForExistingVm = 9,
kUserCancelledCheckingDiskSpace = 12,
kError = 13,
kUserCancelledWithoutStarting = 14,
kUserCancelledValidatingLicense = 15,
kUserCancelledStartingDispatcher = 16,
kMaxValue = kUserCancelledStartingDispatcher,
};
enum class PluginVmDlcUseResult {
kDlcSuccess = 0,
kInvalidDlcError = 1,
kInternalDlcError = 2,
kBusyDlcError = 3,
kNeedRebootDlcError = 4,
kNeedSpaceDlcError = 5,
kNoImageFoundDlcError = 6,
kMaxValue = kNoImageFoundDlcError,
};
void RecordPluginVmLaunchResultHistogram(PluginVmLaunchResult launch_result);
void RecordPluginVmSetupResultHistogram(PluginVmSetupResult setup_result);
void RecordPluginVmDlcUseResultHistogram(PluginVmDlcUseResult dlc_use_result);
void RecordPluginVmSetupTimeHistogram(base::TimeDelta setup_time);
}
#endif