#ifndef COMPONENTS_OPTIMIZATION_GUIDE_CORE_MODEL_EXECUTION_FEATURE_KEYS_H_
#define COMPONENTS_OPTIMIZATION_GUIDE_CORE_MODEL_EXECUTION_FEATURE_KEYS_H_
#include <array>
#include <optional>
#include <ostream>
#include "base/notreached.h"
#include "components/optimization_guide/proto/model_execution.pb.h"
namespace optimization_guide {
enum class ModelBasedCapabilityKey { … };
inline constexpr std::array<ModelBasedCapabilityKey, 10>
kAllModelBasedCapabilityKeys = …;
enum class UserVisibleFeatureKey { … };
inline constexpr std::array<UserVisibleFeatureKey, 4>
kAllUserVisibleFeatureKeys = …;
inline ModelBasedCapabilityKey ToModelBasedCapabilityKey(
UserVisibleFeatureKey key) { … }
inline ModelBasedCapabilityKey ToModelBasedCapabilityKey(
proto::ModelExecutionFeature feature) { … }
inline proto::ModelExecutionFeature ToModelExecutionFeatureProto(
ModelBasedCapabilityKey key) { … }
inline proto::ModelExecutionFeature ToModelExecutionFeatureProto(
UserVisibleFeatureKey key) { … }
}
#endif