/src/skia/modules/sksg/include/SkSGNode.h
Line | Count | Source (jump to first uncovered line) |
1 | | /* |
2 | | * Copyright 2017 Google Inc. |
3 | | * |
4 | | * Use of this source code is governed by a BSD-style license that can be |
5 | | * found in the LICENSE file. |
6 | | */ |
7 | | |
8 | | #ifndef SkSGNode_DEFINED |
9 | | #define SkSGNode_DEFINED |
10 | | |
11 | | #include "include/core/SkRect.h" |
12 | | #include "include/core/SkRefCnt.h" |
13 | | #include "include/private/base/SkAssert.h" |
14 | | |
15 | | #include <cstdint> |
16 | | #include <vector> |
17 | | |
18 | | class SkMatrix; |
19 | | |
20 | | namespace sksg { |
21 | | |
22 | | class InvalidationController; |
23 | | |
24 | | /** |
25 | | * Base class for all scene graph nodes. |
26 | | * |
27 | | * Handles ingress edge management for the DAG (i.e. node -> "parent" node mapping), |
28 | | * and invalidation. |
29 | | * |
30 | | * Note: egress edges are only implemented/supported in container subclasses |
31 | | * (e.g. Group, Effect, Draw). |
32 | | */ |
33 | | class Node : public SkRefCnt { |
34 | | public: |
35 | | // Traverse the DAG and revalidate any dependant/invalidated nodes. |
36 | | // Returns the bounding box for the DAG fragment. |
37 | | const SkRect& revalidate(InvalidationController*, const SkMatrix&); |
38 | | |
39 | | // Tag this node for invalidation and optional damage. |
40 | | void invalidate(bool damage = true); |
41 | | |
42 | | protected: |
43 | | enum InvalTraits { |
44 | | // Nodes with this trait never generate direct damage -- instead, |
45 | | // the damage bubbles up to ancestors. |
46 | | kBubbleDamage_Trait = 1 << 0, |
47 | | |
48 | | // Nodes with this trait obscure the descendants' damage and always override it. |
49 | | kOverrideDamage_Trait = 1 << 1, |
50 | | }; |
51 | | |
52 | | explicit Node(uint32_t invalTraits); |
53 | | ~Node() override; |
54 | | |
55 | 141k | const SkRect& bounds() const { |
56 | 141k | SkASSERT(!this->hasInval()); |
57 | 141k | return fBounds; |
58 | 141k | } |
59 | | |
60 | 6.31M | bool hasInval() const { return fFlags & kInvalidated_Flag; } |
61 | | |
62 | | // Dispatched on revalidation. Subclasses are expected to recompute/cache their properties |
63 | | // and return their bounding box in local coordinates. |
64 | | virtual SkRect onRevalidate(InvalidationController*, const SkMatrix& ctm) = 0; |
65 | | |
66 | | // Register/unregister |this| to receive invalidation events from a descendant. |
67 | | void observeInval(const sk_sp<Node>&); |
68 | | void unobserveInval(const sk_sp<Node>&); |
69 | | |
70 | | private: |
71 | | enum Flags { |
72 | | kInvalidated_Flag = 1 << 0, // the node or its descendants require revalidation |
73 | | kDamage_Flag = 1 << 1, // the node contributes damage during revalidation |
74 | | kObserverArray_Flag = 1 << 2, // the node has more than one inval observer |
75 | | kInTraversal_Flag = 1 << 3, // the node is part of a traversal (cycle detection) |
76 | | }; |
77 | | |
78 | | template <typename Func> |
79 | | void forEachInvalObserver(Func&&) const; |
80 | | |
81 | | class ScopedFlag; |
82 | | |
83 | | union { |
84 | | Node* fInvalObserver; |
85 | | std::vector<Node*>* fInvalObserverArray; |
86 | | }; |
87 | | SkRect fBounds; |
88 | | const uint32_t fInvalTraits : 2; |
89 | | uint32_t fFlags : 4; // Internal flags. |
90 | | uint32_t fNodeFlags : 8; // Accessible from select subclasses. |
91 | | // Free bits : 18; |
92 | | |
93 | | friend class NodePriv; |
94 | | friend class RenderNode; // node flags access |
95 | | |
96 | | using INHERITED = SkRefCnt; |
97 | | }; |
98 | | |
99 | | // Helper for defining attribute getters/setters in subclasses. |
100 | | #define SG_ATTRIBUTE(attr_name, attr_type, attr_container) \ |
101 | 116k | const attr_type& get##attr_name() const { return attr_container; } \ Unexecuted instantiation: sksg::PaintNode::getAntiAlias() const Unexecuted instantiation: sksg::PaintNode::getOpacity() const Unexecuted instantiation: sksg::PaintNode::getBlendMode() const Unexecuted instantiation: sksg::PaintNode::getStrokeWidth() const Unexecuted instantiation: sksg::PaintNode::getStrokeMiter() const Unexecuted instantiation: sksg::PaintNode::getStyle() const Unexecuted instantiation: sksg::PaintNode::getStrokeJoin() const Unexecuted instantiation: sksg::PaintNode::getStrokeCap() const sksg::Color::getColor() const Line | Count | Source | 101 | 30.6k | const attr_type& get##attr_name() const { return attr_container; } \ |
Unexecuted instantiation: sksg::MaskShaderEffect::getShader() const sksg::ImageFilter::getCropRect() const Line | Count | Source | 101 | 10.0k | const attr_type& get##attr_name() const { return attr_container; } \ |
Unexecuted instantiation: sksg::ImageFilterEffect::getCropping() const Unexecuted instantiation: sksg::ExternalImageFilter::getImageFilter() const Unexecuted instantiation: sksg::DropShadowImageFilter::getOffset() const Unexecuted instantiation: sksg::DropShadowImageFilter::getSigma() const Unexecuted instantiation: sksg::DropShadowImageFilter::getColor() const Unexecuted instantiation: sksg::DropShadowImageFilter::getMode() const Unexecuted instantiation: sksg::BlurImageFilter::getSigma() const Unexecuted instantiation: sksg::BlurImageFilter::getTileMode() const Unexecuted instantiation: sksg::BlenderEffect::getBlender() const Unexecuted instantiation: sksg::LayerEffect::getMode() const sksg::OpacityEffect::getOpacity() const Line | Count | Source | 101 | 70.6k | const attr_type& get##attr_name() const { return attr_container; } \ |
Unexecuted instantiation: sksg::Path::getPath() const Unexecuted instantiation: sksg::Rect::getL() const Unexecuted instantiation: sksg::Rect::getT() const Unexecuted instantiation: sksg::Rect::getR() const Unexecuted instantiation: sksg::Rect::getB() const Unexecuted instantiation: sksg::RRect::getRRect() const Unexecuted instantiation: skottie::internal::MotionBlurEffect::getT() const Unexecuted instantiation: sksg::ExternalColorFilter::getColorFilter() const Unexecuted instantiation: sksg::GradientColorFilter::getWeight() const Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::getMatrix() const Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::getSubMatrix() const Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::getNoiseFilter() const Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::getNoiseFractal() const Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::getNoisePlanes() const Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::getNoiseWeight() const Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::getOctaves() const Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::getPersistence() const Unexecuted instantiation: sksg::Gradient::getColorStops() const sksg::Gradient::getTileMode() const Line | Count | Source | 101 | 4.99k | const attr_type& get##attr_name() const { return attr_container; } \ |
Unexecuted instantiation: sksg::LinearGradient::getStartPoint() const Unexecuted instantiation: sksg::LinearGradient::getEndPoint() const Unexecuted instantiation: sksg::RadialGradient::getStartCenter() const Unexecuted instantiation: sksg::RadialGradient::getEndCenter() const Unexecuted instantiation: sksg::RadialGradient::getStartRadius() const Unexecuted instantiation: sksg::RadialGradient::getEndRadius() const Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::getTileCenter() const Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::getTileWidth() const Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::getTileHeight() const Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::getOutputWidth() const Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::getOutputHeight() const Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::getPhase() const Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::getMirrorEdges() const Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::getHorizontalPhase() const Unexecuted instantiation: RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::getCompletion() const Unexecuted instantiation: RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::getStartAngle() const Unexecuted instantiation: RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::getWipeCenter() const Unexecuted instantiation: RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::getWipe() const Unexecuted instantiation: RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::getFeather() const Unexecuted instantiation: SkSLEffect.cpp:skottie::internal::(anonymous namespace)::SkSLShaderNode::getShader() const Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::getCenter() const Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::getRadius() const Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::getRotation() const Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::getSide() const Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::getLightVec() const Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::getLightColor() const Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::getAmbientLight() const Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::getDiffuseLight() const Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::getSpecularLight() const Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::getSpecularExp() const Unexecuted instantiation: sksg::Image::getImage() const Unexecuted instantiation: sksg::Image::getSamplingOptions() const Unexecuted instantiation: sksg::Matrix<SkMatrix>::getMatrix() const Unexecuted instantiation: sksg::Image::getAntiAlias() const Unexecuted instantiation: PrecompLayer.cpp:skottie::internal::AnimationBuilder::attachExternalPrecompLayer(skjson::ObjectValue const&, skottie::internal::AnimationBuilder::LayerInfo const&) const::SGAdapter::getT() const Unexecuted instantiation: sksg::TrimEffect::getStart() const Unexecuted instantiation: sksg::TrimEffect::getStop() const Unexecuted instantiation: sksg::TrimEffect::getMode() const Unexecuted instantiation: sksg::DashEffect::getIntervals() const Unexecuted instantiation: sksg::DashEffect::getPhase() const Unexecuted instantiation: sksg::RoundEffect::getRadius() const Unexecuted instantiation: sksg::OffsetEffect::getOffset() const Unexecuted instantiation: sksg::OffsetEffect::getMiterLimit() const Unexecuted instantiation: sksg::OffsetEffect::getJoin() const Unexecuted instantiation: BulgeEffect.cpp:skottie::internal::(anonymous namespace)::BulgeNode::getCenter() const Unexecuted instantiation: BulgeEffect.cpp:skottie::internal::(anonymous namespace)::BulgeNode::getRadius() const Unexecuted instantiation: BulgeEffect.cpp:skottie::internal::(anonymous namespace)::BulgeNode::getHeight() const Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::getScale() const Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::getChildTileMode() const Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::getPos() const Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::getXSelector() const Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::getYSelector() const Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::getExpandBounds() const Unexecuted instantiation: PuckerBloat.cpp:skottie::internal::(anonymous namespace)::PuckerBloatEffect::getAmount() const Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::getCount() const Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::getOffset() const Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::getAnchorPoint() const Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::getPosition() const Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::getScale() const Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::getRotation() const Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::getStartOpacity() const Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::getEndOpacity() const |
102 | 4.89M | void set##attr_name(const attr_type& v) { \ |
103 | 4.89M | if (attr_container == v) return; \ |
104 | 4.89M | attr_container = v; \ |
105 | 1.43M | this->invalidate(); \ |
106 | 1.43M | } \ Unexecuted instantiation: sksg::PaintNode::setAntiAlias(bool const&) Unexecuted instantiation: sksg::PaintNode::setOpacity(float const&) sksg::PaintNode::setBlendMode(SkBlendMode const&) Line | Count | Source | 102 | 9.23k | void set##attr_name(const attr_type& v) { \ | 103 | 9.23k | if (attr_container == v) return; \ | 104 | 9.23k | attr_container = v; \ | 105 | 9.23k | this->invalidate(); \ | 106 | 9.23k | } \ |
sksg::PaintNode::setStrokeWidth(float const&) Line | Count | Source | 102 | 160k | void set##attr_name(const attr_type& v) { \ | 103 | 160k | if (attr_container == v) return; \ | 104 | 160k | attr_container = v; \ | 105 | 13.7k | this->invalidate(); \ | 106 | 13.7k | } \ |
Unexecuted instantiation: sksg::PaintNode::setStrokeMiter(float const&) Unexecuted instantiation: sksg::PaintNode::setStyle(SkPaint::Style const&) sksg::PaintNode::setStrokeJoin(SkPaint::Join const&) Line | Count | Source | 102 | 27.8k | void set##attr_name(const attr_type& v) { \ | 103 | 27.8k | if (attr_container == v) return; \ | 104 | 27.8k | attr_container = v; \ | 105 | 11.5k | this->invalidate(); \ | 106 | 11.5k | } \ |
sksg::PaintNode::setStrokeCap(SkPaint::Cap const&) Line | Count | Source | 102 | 27.8k | void set##attr_name(const attr_type& v) { \ | 103 | 27.8k | if (attr_container == v) return; \ | 104 | 27.8k | attr_container = v; \ | 105 | 12.2k | this->invalidate(); \ | 106 | 12.2k | } \ |
Unexecuted instantiation: sksg::Color::setColor(unsigned int const&) Unexecuted instantiation: sksg::MaskShaderEffect::setShader(sk_sp<SkShader> const&) Unexecuted instantiation: sksg::ImageFilter::setCropRect(SkImageFilters::CropRect const&) Unexecuted instantiation: sksg::ImageFilterEffect::setCropping(sksg::ImageFilterEffect::Cropping const&) Unexecuted instantiation: sksg::ExternalImageFilter::setImageFilter(sk_sp<SkImageFilter> const&) Unexecuted instantiation: sksg::DropShadowImageFilter::setOffset(SkPoint const&) Unexecuted instantiation: sksg::DropShadowImageFilter::setSigma(SkPoint const&) Unexecuted instantiation: sksg::DropShadowImageFilter::setColor(unsigned int const&) Unexecuted instantiation: sksg::DropShadowImageFilter::setMode(sksg::DropShadowImageFilter::Mode const&) Unexecuted instantiation: sksg::BlurImageFilter::setSigma(SkPoint const&) Unexecuted instantiation: sksg::BlurImageFilter::setTileMode(SkTileMode const&) Unexecuted instantiation: sksg::BlenderEffect::setBlender(sk_sp<SkBlender> const&) Unexecuted instantiation: sksg::LayerEffect::setMode(SkBlendMode const&) Unexecuted instantiation: sksg::OpacityEffect::setOpacity(float const&) sksg::Path::setPath(SkPath const&) Line | Count | Source | 102 | 127k | void set##attr_name(const attr_type& v) { \ | 103 | 127k | if (attr_container == v) return; \ | 104 | 127k | attr_container = v; \ | 105 | 88.8k | this->invalidate(); \ | 106 | 88.8k | } \ |
Unexecuted instantiation: sksg::Rect::setL(float const&) Unexecuted instantiation: sksg::Rect::setT(float const&) Unexecuted instantiation: sksg::Rect::setR(float const&) Unexecuted instantiation: sksg::Rect::setB(float const&) Unexecuted instantiation: sksg::RRect::setRRect(SkRRect const&) Unexecuted instantiation: skottie::internal::MotionBlurEffect::setT(float const&) Unexecuted instantiation: sksg::ExternalColorFilter::setColorFilter(sk_sp<SkColorFilter> const&) Unexecuted instantiation: sksg::GradientColorFilter::setWeight(float const&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setOctaves(float const&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setPersistence(float const&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setNoisePlanes(SkV2 const&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setNoiseWeight(float const&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setMatrix(SkMatrix const&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setSubMatrix(SkMatrix const&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setNoiseFilter(skottie::internal::(anonymous namespace)::NoiseFilter const&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setNoiseFractal(skottie::internal::(anonymous namespace)::NoiseFractal const&) sksg::LinearGradient::setStartPoint(SkPoint const&) Line | Count | Source | 102 | 10.8k | void set##attr_name(const attr_type& v) { \ | 103 | 10.8k | if (attr_container == v) return; \ | 104 | 10.8k | attr_container = v; \ | 105 | 6.40k | this->invalidate(); \ | 106 | 6.40k | } \ |
sksg::LinearGradient::setEndPoint(SkPoint const&) Line | Count | Source | 102 | 10.8k | void set##attr_name(const attr_type& v) { \ | 103 | 10.8k | if (attr_container == v) return; \ | 104 | 10.8k | attr_container = v; \ | 105 | 1.46k | this->invalidate(); \ | 106 | 1.46k | } \ |
sksg::RadialGradient::setStartCenter(SkPoint const&) Line | Count | Source | 102 | 7.32k | void set##attr_name(const attr_type& v) { \ | 103 | 7.32k | if (attr_container == v) return; \ | 104 | 7.32k | attr_container = v; \ | 105 | 150 | this->invalidate(); \ | 106 | 150 | } \ |
sksg::RadialGradient::setEndCenter(SkPoint const&) Line | Count | Source | 102 | 7.32k | void set##attr_name(const attr_type& v) { \ | 103 | 7.32k | if (attr_container == v) return; \ | 104 | 7.32k | attr_container = v; \ | 105 | 150 | this->invalidate(); \ | 106 | 150 | } \ |
Unexecuted instantiation: sksg::Gradient::setColorStops(std::__1::vector<sksg::Gradient::ColorStop, std::__1::allocator<sksg::Gradient::ColorStop> > const&) Unexecuted instantiation: sksg::Gradient::setTileMode(SkTileMode const&) Unexecuted instantiation: sksg::RadialGradient::setStartRadius(float const&) Unexecuted instantiation: sksg::RadialGradient::setEndRadius(float const&) MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setTileWidth(float const&) Line | Count | Source | 102 | 11.7k | void set##attr_name(const attr_type& v) { \ | 103 | 11.7k | if (attr_container == v) return; \ | 104 | 11.7k | attr_container = v; \ | 105 | 10.5k | this->invalidate(); \ | 106 | 10.5k | } \ |
MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setTileHeight(float const&) Line | Count | Source | 102 | 11.7k | void set##attr_name(const attr_type& v) { \ | 103 | 11.7k | if (attr_container == v) return; \ | 104 | 11.7k | attr_container = v; \ | 105 | 75 | this->invalidate(); \ | 106 | 75 | } \ |
MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setOutputWidth(float const&) Line | Count | Source | 102 | 11.7k | void set##attr_name(const attr_type& v) { \ | 103 | 11.7k | if (attr_container == v) return; \ | 104 | 11.7k | attr_container = v; \ | 105 | 58 | this->invalidate(); \ | 106 | 58 | } \ |
MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setOutputHeight(float const&) Line | Count | Source | 102 | 11.7k | void set##attr_name(const attr_type& v) { \ | 103 | 11.7k | if (attr_container == v) return; \ | 104 | 11.7k | attr_container = v; \ | 105 | 47 | this->invalidate(); \ | 106 | 47 | } \ |
MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setPhase(float const&) Line | Count | Source | 102 | 11.7k | void set##attr_name(const attr_type& v) { \ | 103 | 11.7k | if (attr_container == v) return; \ | 104 | 11.7k | attr_container = v; \ | 105 | 249 | this->invalidate(); \ | 106 | 249 | } \ |
Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setTileCenter(SkPoint const&) Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setMirrorEdges(bool const&) Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setHorizontalPhase(bool const&) RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::setCompletion(float const&) Line | Count | Source | 102 | 1.29k | void set##attr_name(const attr_type& v) { \ | 103 | 1.29k | if (attr_container == v) return; \ | 104 | 1.29k | attr_container = v; \ | 105 | 681 | this->invalidate(); \ | 106 | 681 | } \ |
RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::setStartAngle(float const&) Line | Count | Source | 102 | 1.29k | void set##attr_name(const attr_type& v) { \ | 103 | 1.29k | if (attr_container == v) return; \ | 104 | 1.29k | attr_container = v; \ | 105 | 28 | this->invalidate(); \ | 106 | 28 | } \ |
RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::setWipe(float const&) Line | Count | Source | 102 | 1.29k | void set##attr_name(const attr_type& v) { \ | 103 | 1.29k | if (attr_container == v) return; \ | 104 | 1.29k | attr_container = v; \ | 105 | 273 | this->invalidate(); \ | 106 | 273 | } \ |
RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::setFeather(float const&) Line | Count | Source | 102 | 1.29k | void set##attr_name(const attr_type& v) { \ | 103 | 1.29k | if (attr_container == v) return; \ | 104 | 1.29k | attr_container = v; \ | 105 | 273 | this->invalidate(); \ | 106 | 273 | } \ |
Unexecuted instantiation: RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::setWipeCenter(SkPoint const&) Unexecuted instantiation: SkSLEffect.cpp:skottie::internal::(anonymous namespace)::SkSLShaderNode::setShader(sk_sp<SkShader> const&) SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setRadius(float const&) Line | Count | Source | 102 | 3.82k | void set##attr_name(const attr_type& v) { \ | 103 | 3.82k | if (attr_container == v) return; \ | 104 | 3.82k | attr_container = v; \ | 105 | 1.03k | this->invalidate(); \ | 106 | 1.03k | } \ |
SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setAmbientLight(float const&) Line | Count | Source | 102 | 3.82k | void set##attr_name(const attr_type& v) { \ | 103 | 3.82k | if (attr_container == v) return; \ | 104 | 3.82k | attr_container = v; \ | 105 | 39 | this->invalidate(); \ | 106 | 39 | } \ |
Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setCenter(SkPoint const&) Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setRotation(SkM44 const&) Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setSide(skottie::internal::(anonymous namespace)::SphereNode::RenderSide const&) Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setLightVec(SkV3 const&) Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setLightColor(SkV3 const&) Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setDiffuseLight(float const&) Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setSpecularLight(float const&) Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setSpecularExp(float const&) Unexecuted instantiation: sksg::Image::setSamplingOptions(SkSamplingOptions const&) Unexecuted instantiation: sksg::Matrix<SkMatrix>::setMatrix(SkMatrix const&) Unexecuted instantiation: sksg::Image::setImage(sk_sp<SkImage> const&) Unexecuted instantiation: sksg::Image::setAntiAlias(bool const&) Unexecuted instantiation: PrecompLayer.cpp:skottie::internal::AnimationBuilder::attachExternalPrecompLayer(skjson::ObjectValue const&, skottie::internal::AnimationBuilder::LayerInfo const&) const::SGAdapter::setT(float const&) sksg::TrimEffect::setStart(float const&) Line | Count | Source | 102 | 1.05M | void set##attr_name(const attr_type& v) { \ | 103 | 1.05M | if (attr_container == v) return; \ | 104 | 1.05M | attr_container = v; \ | 105 | 17.1k | this->invalidate(); \ | 106 | 17.1k | } \ |
sksg::TrimEffect::setStop(float const&) Line | Count | Source | 102 | 1.05M | void set##attr_name(const attr_type& v) { \ | 103 | 1.05M | if (attr_container == v) return; \ | 104 | 1.05M | attr_container = v; \ | 105 | 293k | this->invalidate(); \ | 106 | 293k | } \ |
sksg::TrimEffect::setMode(SkTrimPathEffect::Mode const&) Line | Count | Source | 102 | 1.05M | void set##attr_name(const attr_type& v) { \ | 103 | 1.05M | if (attr_container == v) return; \ | 104 | 1.05M | attr_container = v; \ | 105 | 289k | this->invalidate(); \ | 106 | 289k | } \ |
sksg::DashEffect::setIntervals(std::__1::vector<float, std::__1::allocator<float> > const&) Line | Count | Source | 102 | 32.1k | void set##attr_name(const attr_type& v) { \ | 103 | 32.1k | if (attr_container == v) return; \ | 104 | 32.1k | attr_container = v; \ | 105 | 32.1k | this->invalidate(); \ | 106 | 32.1k | } \ |
sksg::DashEffect::setPhase(float const&) Line | Count | Source | 102 | 32.1k | void set##attr_name(const attr_type& v) { \ | 103 | 32.1k | if (attr_container == v) return; \ | 104 | 32.1k | attr_container = v; \ | 105 | 0 | this->invalidate(); \ | 106 | 0 | } \ |
sksg::RoundEffect::setRadius(float const&) Line | Count | Source | 102 | 645k | void set##attr_name(const attr_type& v) { \ | 103 | 645k | if (attr_container == v) return; \ | 104 | 645k | attr_container = v; \ | 105 | 277k | this->invalidate(); \ | 106 | 277k | } \ |
sksg::OffsetEffect::setOffset(float const&) Line | Count | Source | 102 | 189k | void set##attr_name(const attr_type& v) { \ | 103 | 189k | if (attr_container == v) return; \ | 104 | 189k | attr_container = v; \ | 105 | 182k | this->invalidate(); \ | 106 | 182k | } \ |
sksg::OffsetEffect::setMiterLimit(float const&) Line | Count | Source | 102 | 189k | void set##attr_name(const attr_type& v) { \ | 103 | 189k | if (attr_container == v) return; \ | 104 | 189k | attr_container = v; \ | 105 | 189k | this->invalidate(); \ | 106 | 189k | } \ |
sksg::OffsetEffect::setJoin(SkPaint::Join const&) Line | Count | Source | 102 | 189k | void set##attr_name(const attr_type& v) { \ | 103 | 189k | if (attr_container == v) return; \ | 104 | 189k | attr_container = v; \ | 105 | 17 | this->invalidate(); \ | 106 | 17 | } \ |
Unexecuted instantiation: BulgeEffect.cpp:skottie::internal::(anonymous namespace)::BulgeNode::setHeight(float const&) Unexecuted instantiation: BulgeEffect.cpp:skottie::internal::(anonymous namespace)::BulgeNode::setCenter(SkPoint const&) Unexecuted instantiation: BulgeEffect.cpp:skottie::internal::(anonymous namespace)::BulgeNode::setRadius(SkPoint const&) Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::setScale(SkV2 const&) Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::setChildTileMode(SkTileMode const&) Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::setPos(skottie::internal::(anonymous namespace)::DisplacementNode::Pos const&) Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::setXSelector(skottie::internal::(anonymous namespace)::DisplacementNode::Selector const&) Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::setYSelector(skottie::internal::(anonymous namespace)::DisplacementNode::Selector const&) Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::setExpandBounds(bool const&) Unexecuted instantiation: PuckerBloat.cpp:skottie::internal::(anonymous namespace)::PuckerBloatEffect::setAmount(float const&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setOffset(float const&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setAnchorPoint(SkV2 const&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setPosition(SkV2 const&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setRotation(float const&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setStartOpacity(float const&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setEndOpacity(float const&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setCount(unsigned long const&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setScale(SkV2 const&) |
107 | 1.27M | void set##attr_name(attr_type&& v) { \ |
108 | 1.27M | if (attr_container == v) return; \ |
109 | 1.27M | attr_container = std::move(v); \ |
110 | 573k | this->invalidate(); \ |
111 | 573k | } sksg::PaintNode::setAntiAlias(bool&&) Line | Count | Source | 107 | 235k | void set##attr_name(attr_type&& v) { \ | 108 | 235k | if (attr_container == v) return; \ | 109 | 235k | attr_container = std::move(v); \ | 110 | 235k | this->invalidate(); \ | 111 | 235k | } |
sksg::PaintNode::setOpacity(float&&) Line | Count | Source | 107 | 169k | void set##attr_name(attr_type&& v) { \ | 108 | 169k | if (attr_container == v) return; \ | 109 | 169k | attr_container = std::move(v); \ | 110 | 8.67k | this->invalidate(); \ | 111 | 8.67k | } |
Unexecuted instantiation: sksg::PaintNode::setBlendMode(SkBlendMode&&) Unexecuted instantiation: sksg::PaintNode::setStrokeWidth(float&&) sksg::PaintNode::setStrokeMiter(float&&) Line | Count | Source | 107 | 27.8k | void set##attr_name(attr_type&& v) { \ | 108 | 27.8k | if (attr_container == v) return; \ | 109 | 27.8k | attr_container = std::move(v); \ | 110 | 3.52k | this->invalidate(); \ | 111 | 3.52k | } |
sksg::PaintNode::setStyle(SkPaint::Style&&) Line | Count | Source | 107 | 27.8k | void set##attr_name(attr_type&& v) { \ | 108 | 27.8k | if (attr_container == v) return; \ | 109 | 27.8k | attr_container = std::move(v); \ | 110 | 27.8k | this->invalidate(); \ | 111 | 27.8k | } |
Unexecuted instantiation: sksg::PaintNode::setStrokeJoin(SkPaint::Join&&) Unexecuted instantiation: sksg::PaintNode::setStrokeCap(SkPaint::Cap&&) sksg::Color::setColor(unsigned int&&) Line | Count | Source | 107 | 157k | void set##attr_name(attr_type&& v) { \ | 108 | 157k | if (attr_container == v) return; \ | 109 | 157k | attr_container = std::move(v); \ | 110 | 35.1k | this->invalidate(); \ | 111 | 35.1k | } |
Unexecuted instantiation: sksg::MaskShaderEffect::setShader(sk_sp<SkShader>&&) sksg::ImageFilter::setCropRect(SkImageFilters::CropRect&&) Line | Count | Source | 107 | 61.7k | void set##attr_name(attr_type&& v) { \ | 108 | 61.7k | if (attr_container == v) return; \ | 109 | 61.7k | attr_container = std::move(v); \ | 110 | 16 | this->invalidate(); \ | 111 | 16 | } |
sksg::ImageFilterEffect::setCropping(sksg::ImageFilterEffect::Cropping&&) Line | Count | Source | 107 | 327 | void set##attr_name(attr_type&& v) { \ | 108 | 327 | if (attr_container == v) return; \ | 109 | 327 | attr_container = std::move(v); \ | 110 | 16 | this->invalidate(); \ | 111 | 16 | } |
sksg::ExternalImageFilter::setImageFilter(sk_sp<SkImageFilter>&&) Line | Count | Source | 107 | 44.7k | void set##attr_name(attr_type&& v) { \ | 108 | 44.7k | if (attr_container == v) return; \ | 109 | 44.7k | attr_container = std::move(v); \ | 110 | 44.7k | this->invalidate(); \ | 111 | 44.7k | } |
sksg::DropShadowImageFilter::setOffset(SkPoint&&) Line | Count | Source | 107 | 9.91k | void set##attr_name(attr_type&& v) { \ | 108 | 9.91k | if (attr_container == v) return; \ | 109 | 9.91k | attr_container = std::move(v); \ | 110 | 545 | this->invalidate(); \ | 111 | 545 | } |
sksg::DropShadowImageFilter::setSigma(SkPoint&&) Line | Count | Source | 107 | 9.91k | void set##attr_name(attr_type&& v) { \ | 108 | 9.91k | if (attr_container == v) return; \ | 109 | 9.91k | attr_container = std::move(v); \ | 110 | 2.21k | this->invalidate(); \ | 111 | 2.21k | } |
sksg::DropShadowImageFilter::setColor(unsigned int&&) Line | Count | Source | 107 | 9.91k | void set##attr_name(attr_type&& v) { \ | 108 | 9.91k | if (attr_container == v) return; \ | 109 | 9.91k | attr_container = std::move(v); \ | 110 | 2.27k | this->invalidate(); \ | 111 | 2.27k | } |
sksg::DropShadowImageFilter::setMode(sksg::DropShadowImageFilter::Mode&&) Line | Count | Source | 107 | 9.91k | void set##attr_name(attr_type&& v) { \ | 108 | 9.91k | if (attr_container == v) return; \ | 109 | 9.91k | attr_container = std::move(v); \ | 110 | 732 | this->invalidate(); \ | 111 | 732 | } |
sksg::BlurImageFilter::setSigma(SkPoint&&) Line | Count | Source | 107 | 327 | void set##attr_name(attr_type&& v) { \ | 108 | 327 | if (attr_container == v) return; \ | 109 | 327 | attr_container = std::move(v); \ | 110 | 4 | this->invalidate(); \ | 111 | 4 | } |
sksg::BlurImageFilter::setTileMode(SkTileMode&&) Line | Count | Source | 107 | 327 | void set##attr_name(attr_type&& v) { \ | 108 | 327 | if (attr_container == v) return; \ | 109 | 327 | attr_container = std::move(v); \ | 110 | 16 | this->invalidate(); \ | 111 | 16 | } |
Unexecuted instantiation: sksg::BlenderEffect::setBlender(sk_sp<SkBlender>&&) Unexecuted instantiation: sksg::LayerEffect::setMode(SkBlendMode&&) sksg::OpacityEffect::setOpacity(float&&) Line | Count | Source | 107 | 84.7k | void set##attr_name(attr_type&& v) { \ | 108 | 84.7k | if (attr_container == v) return; \ | 109 | 84.7k | attr_container = std::move(v); \ | 110 | 26.6k | this->invalidate(); \ | 111 | 26.6k | } |
sksg::Path::setPath(SkPath&&) Line | Count | Source | 107 | 94 | void set##attr_name(attr_type&& v) { \ | 108 | 94 | if (attr_container == v) return; \ | 109 | 94 | attr_container = std::move(v); \ | 110 | 94 | this->invalidate(); \ | 111 | 94 | } |
sksg::Matrix<SkM44>::setMatrix(SkM44&&) Line | Count | Source | 107 | 8.39k | void set##attr_name(attr_type&& v) { \ | 108 | 8.39k | if (attr_container == v) return; \ | 109 | 8.39k | attr_container = std::move(v); \ | 110 | 8.39k | this->invalidate(); \ | 111 | 8.39k | } |
Unexecuted instantiation: sksg::Rect::setL(float&&) Unexecuted instantiation: sksg::Rect::setT(float&&) Unexecuted instantiation: sksg::Rect::setR(float&&) Unexecuted instantiation: sksg::Rect::setB(float&&) sksg::RRect::setRRect(SkRRect&&) Line | Count | Source | 107 | 204k | void set##attr_name(attr_type&& v) { \ | 108 | 204k | if (attr_container == v) return; \ | 109 | 204k | attr_container = std::move(v); \ | 110 | 83.0k | this->invalidate(); \ | 111 | 83.0k | } |
Unexecuted instantiation: skottie::internal::MotionBlurEffect::setT(float&&) sksg::Matrix<SkMatrix>::setMatrix(SkMatrix&&) Line | Count | Source | 107 | 53.9k | void set##attr_name(attr_type&& v) { \ | 108 | 53.9k | if (attr_container == v) return; \ | 109 | 53.9k | attr_container = std::move(v); \ | 110 | 53.9k | this->invalidate(); \ | 111 | 53.9k | } |
sksg::ExternalColorFilter::setColorFilter(sk_sp<SkColorFilter>&&) Line | Count | Source | 107 | 2.34k | void set##attr_name(attr_type&& v) { \ | 108 | 2.34k | if (attr_container == v) return; \ | 109 | 2.34k | attr_container = std::move(v); \ | 110 | 1.67k | this->invalidate(); \ | 111 | 1.67k | } |
sksg::GradientColorFilter::setWeight(float&&) Line | Count | Source | 107 | 5.18k | void set##attr_name(attr_type&& v) { \ | 108 | 5.18k | if (attr_container == v) return; \ | 109 | 5.18k | attr_container = std::move(v); \ | 110 | 4.89k | this->invalidate(); \ | 111 | 4.89k | } |
Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setNoiseFilter(skottie::internal::(anonymous namespace)::NoiseFilter&&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setNoiseFractal(skottie::internal::(anonymous namespace)::NoiseFractal&&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setMatrix(SkMatrix&&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setSubMatrix(SkMatrix&&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setNoisePlanes(SkV2&&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setNoiseWeight(float&&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setOctaves(float&&) Unexecuted instantiation: FractalNoiseEffect.cpp:skottie::internal::(anonymous namespace)::FractalNoiseNode::setPersistence(float&&) sksg::Gradient::setColorStops(std::__1::vector<sksg::Gradient::ColorStop, std::__1::allocator<sksg::Gradient::ColorStop> >&&) Line | Count | Source | 107 | 6.04k | void set##attr_name(attr_type&& v) { \ | 108 | 6.04k | if (attr_container == v) return; \ | 109 | 6.04k | attr_container = std::move(v); \ | 110 | 6.02k | this->invalidate(); \ | 111 | 6.02k | } |
sksg::RadialGradient::setEndRadius(float&&) Line | Count | Source | 107 | 7.32k | void set##attr_name(attr_type&& v) { \ | 108 | 7.32k | if (attr_container == v) return; \ | 109 | 7.32k | attr_container = std::move(v); \ | 110 | 150 | this->invalidate(); \ | 111 | 150 | } |
Unexecuted instantiation: sksg::Gradient::setTileMode(SkTileMode&&) Unexecuted instantiation: sksg::LinearGradient::setStartPoint(SkPoint&&) Unexecuted instantiation: sksg::LinearGradient::setEndPoint(SkPoint&&) Unexecuted instantiation: sksg::RadialGradient::setStartCenter(SkPoint&&) Unexecuted instantiation: sksg::RadialGradient::setEndCenter(SkPoint&&) sksg::RadialGradient::setStartRadius(float&&) Line | Count | Source | 107 | 7.27k | void set##attr_name(attr_type&& v) { \ | 108 | 7.27k | if (attr_container == v) return; \ | 109 | 7.27k | attr_container = std::move(v); \ | 110 | 0 | this->invalidate(); \ | 111 | 0 | } |
MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setTileCenter(SkPoint&&) Line | Count | Source | 107 | 11.7k | void set##attr_name(attr_type&& v) { \ | 108 | 11.7k | if (attr_container == v) return; \ | 109 | 11.7k | attr_container = std::move(v); \ | 110 | 10.8k | this->invalidate(); \ | 111 | 10.8k | } |
MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setMirrorEdges(bool&&) Line | Count | Source | 107 | 11.7k | void set##attr_name(attr_type&& v) { \ | 108 | 11.7k | if (attr_container == v) return; \ | 109 | 11.7k | attr_container = std::move(v); \ | 110 | 20 | this->invalidate(); \ | 111 | 20 | } |
MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setHorizontalPhase(bool&&) Line | Count | Source | 107 | 11.7k | void set##attr_name(attr_type&& v) { \ | 108 | 11.7k | if (attr_container == v) return; \ | 109 | 11.7k | attr_container = std::move(v); \ | 110 | 25 | this->invalidate(); \ | 111 | 25 | } |
Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setTileWidth(float&&) Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setTileHeight(float&&) Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setOutputWidth(float&&) Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setOutputHeight(float&&) Unexecuted instantiation: MotionTileEffect.cpp:skottie::internal::(anonymous namespace)::TileRenderNode::setPhase(float&&) RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::setWipeCenter(SkPoint&&) Line | Count | Source | 107 | 1.29k | void set##attr_name(attr_type&& v) { \ | 108 | 1.29k | if (attr_container == v) return; \ | 109 | 1.29k | attr_container = std::move(v); \ | 110 | 1 | this->invalidate(); \ | 111 | 1 | } |
Unexecuted instantiation: RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::setCompletion(float&&) Unexecuted instantiation: RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::setStartAngle(float&&) Unexecuted instantiation: RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::setWipe(float&&) Unexecuted instantiation: RadialWipeEffect.cpp:skottie::internal::(anonymous namespace)::RWipeRenderNode::setFeather(float&&) Unexecuted instantiation: SkSLEffect.cpp:skottie::internal::(anonymous namespace)::SkSLShaderNode::setShader(sk_sp<SkShader>&&) SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setCenter(SkPoint&&) Line | Count | Source | 107 | 3.82k | void set##attr_name(attr_type&& v) { \ | 108 | 3.82k | if (attr_container == v) return; \ | 109 | 3.82k | attr_container = std::move(v); \ | 110 | 478 | this->invalidate(); \ | 111 | 478 | } |
SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setSide(skottie::internal::(anonymous namespace)::SphereNode::RenderSide&&) Line | Count | Source | 107 | 3.82k | void set##attr_name(attr_type&& v) { \ | 108 | 3.82k | if (attr_container == v) return; \ | 109 | 3.82k | attr_container = std::move(v); \ | 110 | 241 | this->invalidate(); \ | 111 | 241 | } |
SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setRotation(SkM44&&) Line | Count | Source | 107 | 3.82k | void set##attr_name(attr_type&& v) { \ | 108 | 3.82k | if (attr_container == v) return; \ | 109 | 3.82k | attr_container = std::move(v); \ | 110 | 76 | this->invalidate(); \ | 111 | 76 | } |
SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setDiffuseLight(float&&) Line | Count | Source | 107 | 3.82k | void set##attr_name(attr_type&& v) { \ | 108 | 3.82k | if (attr_container == v) return; \ | 109 | 3.82k | attr_container = std::move(v); \ | 110 | 72 | this->invalidate(); \ | 111 | 72 | } |
SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setSpecularLight(float&&) Line | Count | Source | 107 | 3.82k | void set##attr_name(attr_type&& v) { \ | 108 | 3.82k | if (attr_container == v) return; \ | 109 | 3.82k | attr_container = std::move(v); \ | 110 | 71 | this->invalidate(); \ | 111 | 71 | } |
SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setLightVec(SkV3&&) Line | Count | Source | 107 | 3.82k | void set##attr_name(attr_type&& v) { \ | 108 | 3.82k | if (attr_container == v) return; \ | 109 | 3.82k | attr_container = std::move(v); \ | 110 | 3.78k | this->invalidate(); \ | 111 | 3.78k | } |
SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setLightColor(SkV3&&) Line | Count | Source | 107 | 3.82k | void set##attr_name(attr_type&& v) { \ | 108 | 3.82k | if (attr_container == v) return; \ | 109 | 3.82k | attr_container = std::move(v); \ | 110 | 3.81k | this->invalidate(); \ | 111 | 3.81k | } |
SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setSpecularExp(float&&) Line | Count | Source | 107 | 3.82k | void set##attr_name(attr_type&& v) { \ | 108 | 3.82k | if (attr_container == v) return; \ | 109 | 3.82k | attr_container = std::move(v); \ | 110 | 3.82k | this->invalidate(); \ | 111 | 3.82k | } |
Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setRadius(float&&) Unexecuted instantiation: SphereEffect.cpp:skottie::internal::(anonymous namespace)::SphereNode::setAmbientLight(float&&) Unexecuted instantiation: sksg::Image::setImage(sk_sp<SkImage>&&) Unexecuted instantiation: sksg::Image::setSamplingOptions(SkSamplingOptions&&) Unexecuted instantiation: sksg::Image::setAntiAlias(bool&&) Unexecuted instantiation: PrecompLayer.cpp:skottie::internal::AnimationBuilder::attachExternalPrecompLayer(skjson::ObjectValue const&, skottie::internal::AnimationBuilder::LayerInfo const&) const::SGAdapter::setT(float&&) Unexecuted instantiation: sksg::TrimEffect::setStart(float&&) Unexecuted instantiation: sksg::TrimEffect::setStop(float&&) Unexecuted instantiation: sksg::TrimEffect::setMode(SkTrimPathEffect::Mode&&) Unexecuted instantiation: sksg::DashEffect::setIntervals(std::__1::vector<float, std::__1::allocator<float> >&&) Unexecuted instantiation: sksg::DashEffect::setPhase(float&&) Unexecuted instantiation: sksg::RoundEffect::setRadius(float&&) Unexecuted instantiation: sksg::OffsetEffect::setOffset(float&&) Unexecuted instantiation: sksg::OffsetEffect::setMiterLimit(float&&) Unexecuted instantiation: sksg::OffsetEffect::setJoin(SkPaint::Join&&) Unexecuted instantiation: BulgeEffect.cpp:skottie::internal::(anonymous namespace)::BulgeNode::setCenter(SkPoint&&) Unexecuted instantiation: BulgeEffect.cpp:skottie::internal::(anonymous namespace)::BulgeNode::setRadius(SkPoint&&) Unexecuted instantiation: BulgeEffect.cpp:skottie::internal::(anonymous namespace)::BulgeNode::setHeight(float&&) Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::setScale(SkV2&&) Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::setChildTileMode(SkTileMode&&) Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::setPos(skottie::internal::(anonymous namespace)::DisplacementNode::Pos&&) Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::setXSelector(skottie::internal::(anonymous namespace)::DisplacementNode::Selector&&) Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::setYSelector(skottie::internal::(anonymous namespace)::DisplacementNode::Selector&&) Unexecuted instantiation: DisplacementMapEffect.cpp:skottie::internal::(anonymous namespace)::DisplacementNode::setExpandBounds(bool&&) PuckerBloat.cpp:skottie::internal::(anonymous namespace)::PuckerBloatEffect::setAmount(float&&) Line | Count | Source | 107 | 61.4k | void set##attr_name(attr_type&& v) { \ | 108 | 61.4k | if (attr_container == v) return; \ | 109 | 61.4k | attr_container = std::move(v); \ | 110 | 4.42k | this->invalidate(); \ | 111 | 4.42k | } |
Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setCount(unsigned long&&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setScale(SkV2&&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setOffset(float&&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setAnchorPoint(SkV2&&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setPosition(SkV2&&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setRotation(float&&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setStartOpacity(float&&) Unexecuted instantiation: Repeater.cpp:skottie::internal::(anonymous namespace)::RepeaterRenderNode::setEndOpacity(float&&) |
112 | | |
113 | | #define SG_MAPPED_ATTRIBUTE(attr_name, attr_type, attr_container) \ |
114 | 527k | attr_type get##attr_name() const { return attr_container.get##attr_name(); } \ Unexecuted instantiation: sksg::Rect::getDirection() const Unexecuted instantiation: sksg::Rect::getInitialPointIndex() const sksg::RRect::getDirection() const Line | Count | Source | 114 | 263k | attr_type get##attr_name() const { return attr_container.get##attr_name(); } \ |
sksg::RRect::getInitialPointIndex() const Line | Count | Source | 114 | 263k | attr_type get##attr_name() const { return attr_container.get##attr_name(); } \ |
|
115 | 0 | void set##attr_name(const attr_type& v) { \ |
116 | 0 | if (attr_container.get##attr_name() == v) return; \ |
117 | 0 | attr_container.set##attr_name(v); \ |
118 | 0 | this->invalidate(); \ |
119 | 0 | } \ Unexecuted instantiation: sksg::Rect::setDirection(SkPathDirection const&) Unexecuted instantiation: sksg::Rect::setInitialPointIndex(unsigned char const&) Unexecuted instantiation: sksg::RRect::setDirection(SkPathDirection const&) Unexecuted instantiation: sksg::RRect::setInitialPointIndex(unsigned char const&) |
120 | 409k | void set##attr_name(attr_type&& v) { \ |
121 | 409k | if (attr_container.get##attr_name() == v) return; \ |
122 | 409k | attr_container.set##attr_name(std::move(v)); \ |
123 | 209k | this->invalidate(); \ |
124 | 209k | } Unexecuted instantiation: sksg::Rect::setDirection(SkPathDirection&&) Unexecuted instantiation: sksg::Rect::setInitialPointIndex(unsigned char&&) sksg::RRect::setDirection(SkPathDirection&&) Line | Count | Source | 120 | 204k | void set##attr_name(attr_type&& v) { \ | 121 | 204k | if (attr_container.get##attr_name() == v) return; \ | 122 | 204k | attr_container.set##attr_name(std::move(v)); \ | 123 | 4.78k | this->invalidate(); \ | 124 | 4.78k | } |
sksg::RRect::setInitialPointIndex(unsigned char&&) Line | Count | Source | 120 | 204k | void set##attr_name(attr_type&& v) { \ | 121 | 204k | if (attr_container.get##attr_name() == v) return; \ | 122 | 204k | attr_container.set##attr_name(std::move(v)); \ | 123 | 204k | this->invalidate(); \ | 124 | 204k | } |
|
125 | | |
126 | | } // namespace sksg |
127 | | |
128 | | #endif // SkSGNode_DEFINED |