// 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 CHROMEOS_ASH_COMPONENTS_STANDALONE_BROWSER_MIGRATION_PROGRESS_TRACKER_H_ #define CHROMEOS_ASH_COMPONENTS_STANDALONE_BROWSER_MIGRATION_PROGRESS_TRACKER_H_ #include "base/component_export.h" #include "base/functional/callback.h" namespace ash::standalone_browser { ProgressCallback; // Interface to be inherited by `MigrationProgressTrackerImpl` and // `FakeMigrationProgressTrackerImpl`. It is passed to // `BrowserDataMigrator::MigrateInternal()` and called whenever there is an // update in progress of the migration. class COMPONENT_EXPORT(CHROMEOS_ASH_COMPONENTS_STANDALONE_BROWSER) MigrationProgressTracker { … }; // Used to send progress updates to the UI. `progress_callback_` is posted on // the UI thread. class COMPONENT_EXPORT(CHROMEOS_ASH_COMPONENTS_STANDALONE_BROWSER) MigrationProgressTrackerImpl : public MigrationProgressTracker { … }; } // namespace ash::standalone_browser #endif // CHROMEOS_ASH_COMPONENTS_STANDALONE_BROWSER_MIGRATION_PROGRESS_TRACKER_H_