chromium/services/preferences/tracked/tracked_atomic_preference.h

// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

#ifndef SERVICES_PREFERENCES_TRACKED_TRACKED_ATOMIC_PREFERENCE_H_
#define SERVICES_PREFERENCES_TRACKED_TRACKED_ATOMIC_PREFERENCE_H_

#include <stddef.h>

#include <string>

#include "base/compiler_specific.h"
#include "base/memory/raw_ptr.h"
#include "services/preferences/tracked/pref_hash_filter.h"
#include "services/preferences/tracked/tracked_preference.h"
#include "services/preferences/tracked/tracked_preference_helper.h"

namespace prefs {
namespace mojom {
class TrackedPreferenceValidationDelegate;
}
}

// A TrackedAtomicPreference is tracked as a whole. A hash is stored for its
// entire value and it is entirely reset on mismatch. An optional delegate is
// notified of the status of the preference during enforcement.
class TrackedAtomicPreference : public TrackedPreference {};

#endif  // SERVICES_PREFERENCES_TRACKED_TRACKED_ATOMIC_PREFERENCE_H_