// Copyright 2021 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef CHROME_BROWSER_ASH_SETTINGS_HARDWARE_DATA_USAGE_CONTROLLER_H_
#define CHROME_BROWSER_ASH_SETTINGS_HARDWARE_DATA_USAGE_CONTROLLER_H_
#include "chrome/browser/ash/settings/owner_pending_setting_controller.h"
class PrefRegistrySimple;
class PrefService;
namespace ash {
// Class to control setting of cros.reven.enable_hw_data_usage device preference
// before ownership is taken.
class HWDataUsageController : public OwnerPendingSettingController {
public:
// Manage singleton instance.
static void Initialize(PrefService* local_state);
static bool IsInitialized();
static void Shutdown();
static HWDataUsageController* Get();
HWDataUsageController(const HWDataUsageController&) = delete;
HWDataUsageController& operator=(const HWDataUsageController&) = delete;
static void RegisterLocalStatePrefs(PrefRegistrySimple* registry);
private:
explicit HWDataUsageController(PrefService* local_state);
~HWDataUsageController() override;
};
} // namespace ash
#endif // CHROME_BROWSER_ASH_SETTINGS_HARDWARE_DATA_USAGE_CONTROLLER_H_