#include "components/segmentation_platform/embedder/default_model/cross_device_user_segment.h"
#include <array>
#include "base/task/sequenced_task_runner.h"
#include "build/chromeos_buildflags.h"
#include "components/segmentation_platform/internal/metadata/metadata_writer.h"
#include "components/segmentation_platform/public/config.h"
#include "components/segmentation_platform/public/constants.h"
#include "components/segmentation_platform/public/features.h"
#include "components/segmentation_platform/public/model_provider.h"
#include "components/segmentation_platform/public/proto/model_metadata.pb.h"
#include "ui/base/device_form_factor.h"
namespace segmentation_platform {
namespace {
enum class CrossDeviceUserBin { … };
#define RANK(x) …
SegmentId;
constexpr int kModelVersion = …;
constexpr SegmentId kCrossDeviceUserSegmentId = …;
constexpr int64_t kCrossDeviceUserSignalStorageLength = …;
constexpr int64_t kCrossDeviceUserMinSignalCollectionLength = …;
constexpr int kCrossDeviceUserSegmentSelectionTTLDays = …;
constexpr std::array<float, 1> kCrossDeviceFeatureDefaultValue{ … };
constexpr std::array<MetadataWriter::UMAFeature, 4>
kCrossDeviceUserUMAFeatures = …;
}
std::unique_ptr<Config> CrossDeviceUserSegment::GetConfig() { … }
CrossDeviceUserSegment::CrossDeviceUserSegment()
: … { … }
std::unique_ptr<DefaultModelProvider::ModelConfig>
CrossDeviceUserSegment::GetModelConfig() { … }
void CrossDeviceUserSegment::ExecuteModelWithInput(
const ModelProvider::Request& inputs,
ExecutionCallback callback) { … }
}