Skia
2D Graphics Library
|
Base class for nodes which can render to a canvas. More...
#include <SkSGRenderNode.h>
Classes | |
struct | RenderContext |
class | ScopedRenderContext |
Public Member Functions | |
void | render (SkCanvas *, const RenderContext *=nullptr) const |
const RenderNode * | nodeAt (const SkPoint &point) const |
bool | isVisible () const |
void | setVisible (bool) |
const SkRect & | revalidate (InvalidationController *, const SkMatrix &) |
void | invalidate (bool damage=true) |
bool | unique () const |
May return true if the caller is the only owner. More... | |
void | ref () const |
Increment the reference count. More... | |
void | unref () const |
Decrement the reference count. More... | |
Protected Types | |
enum | InvalTraits { kBubbleDamage_Trait = 1 << 0 , kOverrideDamage_Trait = 1 << 1 } |
Protected Member Functions | |
RenderNode (uint32_t inval_traits=0) | |
virtual void | onRender (SkCanvas *, const RenderContext *) const =0 |
virtual const RenderNode * | onNodeAt (const SkPoint &p) const =0 |
const SkRect & | bounds () const |
bool | hasInval () const |
virtual SkRect | onRevalidate (InvalidationController *, const SkMatrix &ctm)=0 |
void | observeInval (const sk_sp< Node > &) |
void | unobserveInval (const sk_sp< Node > &) |
Friends | |
class | ImageFilterEffect |
Base class for nodes which can render to a canvas.
|
protectedinherited |
|
explicitprotected |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inherited |
bool sksg::RenderNode::isVisible | ( | ) | const |
const RenderNode* sksg::RenderNode::nodeAt | ( | const SkPoint & | point | ) | const |
|
protectedpure virtual |
|
protectedpure virtual |
|
protectedpure virtualinherited |
Implemented in sksg::TransformEffect, sksg::Matrix< T >, sksg::Text, sksg::ImageFilterEffect, sksg::ShaderEffect, sksg::RRect, sksg::Rect, sksg::Plane, sksg::Path, sksg::ShaderPaint, sksg::Color, sksg::OpacityEffect, sksg::Merge, sksg::MaskEffect, sksg::Image, sksg::Group, sksg::EffectNode, sksg::Draw, sksg::ClipEffect, sksg::ImageFilter, sksg::Shader, sksg::GeometryEffect, and sksg::ColorFilter.
|
inlineinherited |
Increment the reference count.
Must be balanced by a call to unref().
void sksg::RenderNode::render | ( | SkCanvas * | , |
const RenderContext * | = nullptr |
||
) | const |
|
inherited |
void sksg::RenderNode::setVisible | ( | bool | ) |
|
inlineinherited |
May return true if the caller is the only owner.
Ensures that all previous owner's actions are complete.
|
inlineinherited |
Decrement the reference count.
If the reference count is 1 before the decrement, then delete the object. Note that if this is the case, then the object needs to have been allocated via new, and not on the stack.
|
friend |
|
inherited |
|
inherited |