chromium/third_party/blink/renderer/core/layout/svg/svg_resources.cc

/*
 * Copyright (C) Research In Motion Limited 2010. All rights reserved.
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Library General Public
 * License as published by the Free Software Foundation; either
 * version 2 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Library General Public License for more details.
 *
 * You should have received a copy of the GNU Library General Public License
 * along with this library; see the file COPYING.LIB.  If not, write to
 * the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
 * Boston, MA 02110-1301, USA.
 */

#include "third_party/blink/renderer/core/layout/svg/svg_resources.h"

#include "base/ranges/algorithm.h"
#include "third_party/blink/renderer/core/css/properties/longhands.h"
#include "third_party/blink/renderer/core/layout/svg/layout_svg_resource_filter.h"
#include "third_party/blink/renderer/core/layout/svg/layout_svg_resource_paint_server.h"
#include "third_party/blink/renderer/core/layout/svg/layout_svg_text.h"
#include "third_party/blink/renderer/core/paint/filter_effect_builder.h"
#include "third_party/blink/renderer/core/style/computed_style.h"
#include "third_party/blink/renderer/core/style/reference_clip_path_operation.h"
#include "third_party/blink/renderer/core/style/style_svg_resource.h"
#include "third_party/blink/renderer/core/svg/graphics/filters/svg_filter_builder.h"
#include "third_party/blink/renderer/core/svg/svg_filter_primitive_standard_attributes.h"
#include "third_party/blink/renderer/core/svg/svg_length_functions.h"
#include "third_party/blink/renderer/core/svg/svg_resource.h"
#include "third_party/blink/renderer/platform/graphics/filters/filter.h"
#include "third_party/blink/renderer/platform/graphics/filters/filter_effect.h"
#include "third_party/blink/renderer/platform/graphics/filters/paint_filter_builder.h"
#include "third_party/blink/renderer/platform/graphics/filters/source_graphic.h"

namespace blink {

SVGElementResourceClient* SVGResources::GetClient(const LayoutObject& object) {}

SVGElementResourceClient& SVGResources::EnsureClient(
    const LayoutObject& object) {}

gfx::RectF SVGResources::ReferenceBoxForEffects(
    const LayoutObject& layout_object,
    GeometryBox geometry_box,
    ForeignObjectQuirk foreign_object_quirk) {}

void SVGResources::UpdateEffects(LayoutObject& object,
                                 StyleDifference diff,
                                 const ComputedStyle* old_style) {}

void SVGResources::ClearEffects(const LayoutObject& object) {}

void SVGResources::UpdatePaints(const LayoutObject& object,
                                const ComputedStyle* old_style,
                                const ComputedStyle& style) {}

void SVGResources::ClearPaints(const LayoutObject& object,
                               const ComputedStyle* style) {}

void SVGResources::UpdateMarkers(const LayoutObject& object,
                                 const ComputedStyle* old_style) {}

void SVGResources::ClearMarkers(const LayoutObject& object,
                                const ComputedStyle* style) {}

class SVGElementResourceClient::FilterData final
    : public GarbageCollected<SVGElementResourceClient::FilterData> {};

SVGElementResourceClient::SVGElementResourceClient(SVGElement* element)
    :{}

namespace {

template <typename ContainerType>
bool ContainsResource(const ContainerType* container, SVGResource* resource) {}

bool ContainsResource(const FilterOperations& operations,
                      SVGResource* resource) {}

}  // namespace

void SVGElementResourceClient::ResourceContentChanged(SVGResource* resource) {}

void SVGElementResourceClient::FilterPrimitiveChanged(
    SVGResource* resource,
    SVGFilterPrimitiveStandardAttributes& primitive,
    const QualifiedName& attribute) {}

SVGElementResourceClient::FilterData*
SVGElementResourceClient::CreateFilterDataWithNodeMap(
    FilterEffectBuilder& builder,
    const ReferenceFilterOperation& reference_filter) {}

void SVGElementResourceClient::UpdateFilterData(
    CompositorFilterOperations& operations) {}

void SVGElementResourceClient::InvalidateFilterData() {}

void SVGElementResourceClient::MarkFilterDataDirty() {}

void SVGElementResourceClient::Trace(Visitor* visitor) const {}

SVGResourceInvalidator::SVGResourceInvalidator(LayoutObject& object)
    :{}

void SVGResourceInvalidator::InvalidateEffects() {}

void SVGResourceInvalidator::InvalidatePaints() {}

}  // namespace blink