#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 121 of file SkSGRenderNode.cpp.
122 : fCanvas(canvas)
123 , fCtx(ctx ? *ctx : RenderContext())
124 , fRestoreCount(canvas->getSaveCount()) {}
◆ ~ScopedRenderContext()
sksg::RenderNode::ScopedRenderContext::~ScopedRenderContext |
( |
| ) |
|
Definition at line 126 of file SkSGRenderNode.cpp.
126 {
127 if (fRestoreCount >= 0) {
128 if (fMaskShader) {
131 mask_paint.
setShader(std::move(fMaskShader));
133 }
135 }
136}
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 187 of file SkSGRenderNode.cpp.
187 {
189 return std::move(*this);
190}
sk_sp< SkBlender > fBlender
◆ modulateColorFilter()
Definition at line 146 of file SkSGRenderNode.cpp.
146 {
148 return std::move(*this);
149}
static sk_sp< SkColorFilter > Compose(const sk_sp< SkColorFilter > &outer, sk_sp< SkColorFilter > inner)
sk_sp< SkColorFilter > fColorFilter
◆ modulateMaskShader()
Definition at line 163 of file SkSGRenderNode.cpp.
163 {
165
166
167
168
169
170
177 }
178 } else {
181 }
182
183 return std::move(*this);
184}
static SkMatrix Concat(const SkMatrix &a, const SkMatrix &b)
bool invert(SkMatrix *inverse) const
sk_sp< SkShader > makeWithLocalMatrix(const SkMatrix &) const
sk_sp< SkShader > fMaskShader
◆ modulateOpacity()
◆ modulateShader()
Definition at line 152 of file SkSGRenderNode.cpp.
152 {
153
157 }
158
159 return std::move(*this);
160}
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 216 of file SkSGRenderNode.cpp.
217 {
218 if (filter) {
221
225 fCtx = RenderContext();
226 }
227
228 return std::move(*this);
229}
int saveLayer(const SkRect *bounds, const SkPaint *paint)
void setImageFilter(sk_sp< SkImageFilter > imageFilter)
SkImageFilter * getImageFilter() const
const SkRect & bounds() const
void modulatePaint(const SkMatrix &ctm, SkPaint *, bool is_layer_paint=false) const
◆ setIsolation()
Definition at line 193 of file SkSGRenderNode.cpp.
194 {
199
200
203 }
204
205
210 }
211
212 return std::move(*this);
213}
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: