#ifdef UNSAFE_BUFFERS_BUILD
#pragma allow_unsafe_buffers
#endif
#include "third_party/blink/renderer/platform/graphics/filters/filter_effect.h"
#include "base/types/optional_util.h"
#include "third_party/blink/renderer/platform/graphics/filters/filter.h"
#include "third_party/skia/include/core/SkColorFilter.h"
#include "ui/gfx/geometry/skia_conversions.h"
namespace blink {
FilterEffect::FilterEffect(Filter* filter)
: … { … }
FilterEffect::~FilterEffect() = default;
void FilterEffect::Trace(Visitor* visitor) const { … }
gfx::RectF FilterEffect::AbsoluteBounds() const { … }
gfx::RectF FilterEffect::MapInputs(const gfx::RectF& rect) const { … }
gfx::RectF FilterEffect::MapEffect(const gfx::RectF& rect) const { … }
gfx::RectF FilterEffect::ApplyBounds(const gfx::RectF& rect) const { … }
gfx::RectF FilterEffect::MapRect(const gfx::RectF& rect) const { … }
FilterEffect* FilterEffect::InputEffect(unsigned number) const { … }
void FilterEffect::DisposeImageFilters() { … }
void FilterEffect::DisposeImageFiltersRecursive() { … }
Color FilterEffect::AdaptColorToOperatingInterpolationSpace(
const Color& device_color) { … }
WTF::TextStream& FilterEffect::ExternalRepresentation(WTF::TextStream& ts,
int) const { … }
sk_sp<PaintFilter> FilterEffect::CreateImageFilter() { … }
sk_sp<PaintFilter> FilterEffect::CreateImageFilterWithoutValidation() { … }
bool FilterEffect::InputsTaintOrigin() const { … }
sk_sp<PaintFilter> FilterEffect::CreateTransparentBlack() const { … }
std::optional<PaintFilter::CropRect> FilterEffect::GetCropRect() const { … }
static int GetImageFilterIndex(InterpolationSpace interpolation_space,
bool requires_pm_color_validation) { … }
PaintFilter* FilterEffect::GetImageFilter(
InterpolationSpace interpolation_space,
bool requires_pm_color_validation) const { … }
void FilterEffect::SetImageFilter(InterpolationSpace interpolation_space,
bool requires_pm_color_validation,
sk_sp<PaintFilter> image_filter) { … }
}