#ifndef COMPONENTS_SAFE_BROWSING_CONTENT_COMMON_VISUAL_UTILS_H_
#define COMPONENTS_SAFE_BROWSING_CONTENT_COMMON_VISUAL_UTILS_H_
#include <string>
#include "components/safe_browsing/core/common/proto/client_model.pb.h"
#include "components/safe_browsing/core/common/proto/csd.pb.h"
#include "third_party/skia/include/core/SkBitmap.h"
#include "ui/gfx/geometry/size.h"
namespace safe_browsing::visual_utils {
enum class CanExtractVisualFeaturesResult { … };
bool GetBlurredImage(const SkBitmap& image,
VisualFeatures::BlurredImage* blurred_image);
std::unique_ptr<SkBitmap> BlockMeanAverage(const SkBitmap& image,
int block_size);
#if BUILDFLAG(IS_ANDROID)
CanExtractVisualFeaturesResult CanExtractVisualFeatures(
bool is_extended_reporting,
bool is_off_the_record,
gfx::Size size);
#else
CanExtractVisualFeaturesResult CanExtractVisualFeatures(
bool is_extended_reporting,
bool is_off_the_record,
gfx::Size size,
double zoom_level);
#endif
std::unique_ptr<VisualFeatures> ExtractVisualFeatures(const SkBitmap& bitmap);
}
#endif