#include <SkSGRenderNode.h>
Definition at line 75 of file SkSGRenderNode.h.
◆ ScopedRenderContext() [1/2]
sksg::RenderNode::ScopedRenderContext::ScopedRenderContext |
( |
SkCanvas * |
canvas, |
|
|
const RenderContext * |
ctx |
|
) |
| |
Definition at line 122 of file SkSGRenderNode.cpp.
123 : fCanvas(canvas)
124 , fCtx(ctx ? *ctx : RenderContext())
◆ ~ScopedRenderContext()
sksg::RenderNode::ScopedRenderContext::~ScopedRenderContext |
( |
| ) |
|
Definition at line 127 of file SkSGRenderNode.cpp.
127 {
128 if (fRestoreCount >= 0) {
129 if (fMaskShader) {
132 mask_paint.
setShader(std::move(fMaskShader));
134 }
136 }
137}
void drawPaint(const SkPaint &paint)
void restoreToCount(int saveCount)
void setShader(sk_sp< SkShader > shader)
void setBlendMode(SkBlendMode mode)
◆ ScopedRenderContext() [2/2]
◆ modulateBlender()
Definition at line 188 of file SkSGRenderNode.cpp.
188 {
190 return std::move(*this);
191}
sk_sp< SkBlender > fBlender
◆ modulateColorFilter()
Definition at line 147 of file SkSGRenderNode.cpp.
147 {
149 return std::move(*this);
150}
static sk_sp< SkColorFilter > Compose(const sk_sp< SkColorFilter > &outer, sk_sp< SkColorFilter > inner)
sk_sp< SkColorFilter > fColorFilter
◆ modulateMaskShader()
Definition at line 164 of file SkSGRenderNode.cpp.
164 {
166
167
168
169
170
171
178 }
179 } else {
182 }
183
184 return std::move(*this);
185}
static SkMatrix Concat(const SkMatrix &a, const SkMatrix &b)
bool invert(SkMatrix *inverse) const
sk_sp< SkShader > makeWithLocalMatrix(const SkMatrix &) const
SK_API sk_sp< SkShader > Blend(SkBlendMode mode, sk_sp< SkShader > dst, sk_sp< SkShader > src)
sk_sp< SkShader > fMaskShader
◆ modulateOpacity()
◆ modulateShader()
Definition at line 153 of file SkSGRenderNode.cpp.
153 {
154
158 }
159
160 return std::move(*this);
161}
sk_sp< SkShader > fShader
◆ operator const RenderContext *()
sksg::RenderNode::ScopedRenderContext::operator const RenderContext * |
( |
| ) |
const |
|
inline |
◆ operator->()
const RenderContext * sksg::RenderNode::ScopedRenderContext::operator-> |
( |
| ) |
const |
|
inline |
◆ operator=()
Definition at line 82 of file SkSGRenderNode.h.
82 {
83 fCanvas = that.fCanvas;
84 fCtx = std::move(that.fCtx);
85 fMaskShader = std::move(that.fMaskShader);
86 fRestoreCount = that.fRestoreCount;
87
88
89 that.fRestoreCount = -1;
90
91 return *this;
92 }
◆ setFilterIsolation()
Definition at line 217 of file SkSGRenderNode.cpp.
218 {
219 if (filter) {
222
223
227 }
231 fCtx = RenderContext();
232 }
233
234 return std::move(*this);
235}
int saveLayer(const SkRect *bounds, const SkPaint *paint)
static sk_sp< SkImageFilter > Blend(SkBlendMode mode, sk_sp< SkImageFilter > background, sk_sp< SkImageFilter > foreground=nullptr, const CropRect &cropRect={})
static sk_sp< SkImageFilter > Shader(sk_sp< SkShader > shader, const CropRect &cropRect={})
sk_sp< SkShader > refShader() const
void setImageFilter(sk_sp< SkImageFilter > imageFilter)
SkImageFilter * getImageFilter() const
SkShader * getShader() const
const SkRect & bounds() const
void modulatePaint(const SkMatrix &ctm, SkPaint *, bool is_layer_paint=false) const
◆ setIsolation()
Definition at line 194 of file SkSGRenderNode.cpp.
195 {
200
201
204 }
205
206
211 }
212
213 return std::move(*this);
214}
static sk_sp< SkShader > LocalShader(const sk_sp< SkShader > &shader, const SkMatrix &base, const SkMatrix &ctm)
bool requiresIsolation() const
The documentation for this class was generated from the following files: