// Copyright 2022 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef COMPONENTS_SEGMENTATION_PLATFORM_INTERNAL_UKM_DATA_MANAGER_H_ #define COMPONENTS_SEGMENTATION_PLATFORM_INTERNAL_UKM_DATA_MANAGER_H_ #include "services/metrics/public/cpp/ukm_source_id.h" #include "services/metrics/public/mojom/ukm_interface.mojom.h" #include "url/gurl.h" namespace base { class FilePath; } namespace segmentation_platform { class UkmDatabase; class UrlSignalHandler; class UkmConfig; class UkmObserver; // Manages ownership and lifetime of all UKM related classes, like database and // observer. There is only one manager per browser process. Created before // profile initialization and destroyed after all profiles are destroyed. The // database, observer and signal handler can have different lifetimes, see // comments below. class UkmDataManager { … }; } // namespace segmentation_platform #endif // COMPONENTS_SEGMENTATION_PLATFORM_INTERNAL_UKM_DATA_MANAGER_H_