Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
QSGSoftwareRenderableNode Class Reference

#include <qsgsoftwarerenderablenode_p.h>

+ Collaboration diagram for QSGSoftwareRenderableNode:

Public Types

enum  NodeType {
  Invalid = -1 , SimpleRect , SimpleTexture , Image ,
  Painter , Rectangle , Glyph , NinePatch ,
  SimpleRectangle , SimpleImage , RenderNode
}
 

Public Member Functions

 QSGSoftwareRenderableNode (NodeType type, QSGNode *node)
 
 ~QSGSoftwareRenderableNode ()
 
void update ()
 
QRegion renderNode (QPainter *painter, bool forceOpaquePainting=false)
 
QRect boundingRectMin () const
 
QRect boundingRectMax () const
 
NodeType type () const
 
bool isOpaque () const
 
bool isDirty () const
 
bool isDirtyRegionEmpty () const
 
QSGNodehandle () const
 
void setTransform (const QTransform &transform)
 
void setClipRegion (const QRegion &clipRegion, bool hasClipRegion=true)
 
void setOpacity (float opacity)
 
QTransform transform () const
 
QRegion clipRegion () const
 
float opacity () const
 
void markGeometryDirty ()
 
void markMaterialDirty ()
 
void addDirtyRegion (const QRegion &dirtyRegion, bool forceDirty=true)
 
void subtractDirtyRegion (const QRegion &dirtyRegion)
 
QRegion previousDirtyRegion (bool wasRemoved=false) const
 
QRegion dirtyRegion () const
 

Detailed Description

Definition at line 39 of file qsgsoftwarerenderablenode_p.h.

Member Enumeration Documentation

◆ NodeType

Enumerator
Invalid 
SimpleRect 
SimpleTexture 
Image 
Painter 
Rectangle 
Glyph 
NinePatch 
SimpleRectangle 
SimpleImage 
RenderNode 

Definition at line 42 of file qsgsoftwarerenderablenode_p.h.

Constructor & Destructor Documentation

◆ QSGSoftwareRenderableNode()

QSGSoftwareRenderableNode::QSGSoftwareRenderableNode ( NodeType type,
QSGNode * node )

◆ ~QSGSoftwareRenderableNode()

QSGSoftwareRenderableNode::~QSGSoftwareRenderableNode ( )

Definition at line 92 of file qsgsoftwarerenderablenode.cpp.

Member Function Documentation

◆ addDirtyRegion()

void QSGSoftwareRenderableNode::addDirtyRegion ( const QRegion & dirtyRegion,
bool forceDirty = true )

Definition at line 364 of file qsgsoftwarerenderablenode.cpp.

References dirtyRegion(), QRegion::intersected(), QRegion::intersects(), and qCDebug.

+ Here is the call graph for this function:

◆ boundingRectMax()

QRect QSGSoftwareRenderableNode::boundingRectMax ( ) const
inline

Definition at line 66 of file qsgsoftwarerenderablenode_p.h.

◆ boundingRectMin()

QRect QSGSoftwareRenderableNode::boundingRectMin ( ) const
inline

Definition at line 65 of file qsgsoftwarerenderablenode_p.h.

◆ clipRegion()

QRegion QSGSoftwareRenderableNode::clipRegion ( ) const
inline

Definition at line 77 of file qsgsoftwarerenderablenode_p.h.

◆ dirtyRegion()

QRegion QSGSoftwareRenderableNode::dirtyRegion ( ) const

Definition at line 400 of file qsgsoftwarerenderablenode.cpp.

Referenced by addDirtyRegion(), and subtractDirtyRegion().

+ Here is the caller graph for this function:

◆ handle()

QSGNode * QSGSoftwareRenderableNode::handle ( ) const
inline

Definition at line 71 of file qsgsoftwarerenderablenode_p.h.

◆ isDirty()

bool QSGSoftwareRenderableNode::isDirty ( ) const
inline

Definition at line 69 of file qsgsoftwarerenderablenode_p.h.

◆ isDirtyRegionEmpty()

bool QSGSoftwareRenderableNode::isDirtyRegionEmpty ( ) const

Definition at line 322 of file qsgsoftwarerenderablenode.cpp.

References QRegion::isEmpty().

+ Here is the call graph for this function:

◆ isOpaque()

bool QSGSoftwareRenderableNode::isOpaque ( ) const
inline

Definition at line 68 of file qsgsoftwarerenderablenode_p.h.

◆ markGeometryDirty()

void QSGSoftwareRenderableNode::markGeometryDirty ( )

Definition at line 354 of file qsgsoftwarerenderablenode.cpp.

References update().

Referenced by QSGAbstractSoftwareRenderer::setBackgroundRect().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ markMaterialDirty()

void QSGSoftwareRenderableNode::markMaterialDirty ( )

Definition at line 359 of file qsgsoftwarerenderablenode.cpp.

References update().

Referenced by QSGAbstractSoftwareRenderer::setBackgroundColor().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ opacity()

float QSGSoftwareRenderableNode::opacity ( ) const
inline

Definition at line 78 of file qsgsoftwarerenderablenode_p.h.

Referenced by setOpacity().

+ Here is the caller graph for this function:

◆ previousDirtyRegion()

QRegion QSGSoftwareRenderableNode::previousDirtyRegion ( bool wasRemoved = false) const

Definition at line 390 of file qsgsoftwarerenderablenode.cpp.

References QRegion::subtracted().

+ Here is the call graph for this function:

◆ renderNode()

◆ setClipRegion()

void QSGSoftwareRenderableNode::setClipRegion ( const QRegion & clipRegion,
bool hasClipRegion = true )

Definition at line 335 of file qsgsoftwarerenderablenode.cpp.

References update().

+ Here is the call graph for this function:

◆ setOpacity()

void QSGSoftwareRenderableNode::setOpacity ( float opacity)

Definition at line 345 of file qsgsoftwarerenderablenode.cpp.

References opacity(), qFuzzyCompare(), and update().

+ Here is the call graph for this function:

◆ setTransform()

void QSGSoftwareRenderableNode::setTransform ( const QTransform & transform)

Definition at line 327 of file qsgsoftwarerenderablenode.cpp.

References transform(), and update().

+ Here is the call graph for this function:

◆ subtractDirtyRegion()

void QSGSoftwareRenderableNode::subtractDirtyRegion ( const QRegion & dirtyRegion)

Definition at line 376 of file qsgsoftwarerenderablenode.cpp.

References dirtyRegion(), QRegion::intersects(), QRegion::isEmpty(), and qCDebug.

+ Here is the call graph for this function:

◆ transform()

QTransform QSGSoftwareRenderableNode::transform ( ) const
inline

Definition at line 76 of file qsgsoftwarerenderablenode_p.h.

Referenced by setTransform().

+ Here is the caller graph for this function:

◆ type()

NodeType QSGSoftwareRenderableNode::type ( ) const
inline

Definition at line 67 of file qsgsoftwarerenderablenode_p.h.

◆ update()

void QSGSoftwareRenderableNode::update ( )

Definition at line 97 of file qsgsoftwarerenderablenode.cpp.

References QColor::alpha(), QRegion::begin(), QSGGlyphNode::boundingRect(), boundingRect(), QSGSoftwareNinePatchNode::bounds(), QSGSimpleRectNode::color(), QSGRectangleNode::color(), QSGRenderNode::flags(), Glyph, QPixmap::hasAlphaChannel(), QSGTexture::hasAlphaChannel(), QSize::height(), Image, QRect::intersected(), QRegion::isEmpty(), QSGSoftwareInternalRectangleNode::isOpaque(), QSGSoftwareNinePatchNode::isOpaque(), QSGSoftwareSpriteNode::isOpaque(), QTransform::isRotating(), QTransform::mapRect(), NinePatch, QSGSoftwarePainterNode::opaquePainting(), QSGRenderNode::OpaqueRendering, Painter, QSGSoftwareInternalImageNode::pixmap(), QSGSoftwareInternalImageNode::rect(), QSGSoftwareInternalRectangleNode::rect(), QSGSoftwareSpriteNode::rect(), QSGRenderNode::rect(), QSGSimpleRectNode::rect(), QSGSimpleTextureNode::rect(), QSGImageNode::rect(), QSGRectangleNode::rect(), Rectangle, QRegion::rectCount(), RenderNode, SimpleImage, SimpleRect, SimpleRectangle, SimpleTexture, QSGSoftwarePainterNode::size(), QSGSimpleTextureNode::texture(), QSGImageNode::texture(), QRectF::toRect(), toRectMax(), toRectMin(), and QSize::width().

Referenced by markGeometryDirty(), markMaterialDirty(), setClipRegion(), setOpacity(), and setTransform().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

The documentation for this class was generated from the following files: