Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
QSGSoftwareRenderableNodeUpdater Class Reference

#include <qsgsoftwarerenderablenodeupdater_p.h>

+ Inheritance diagram for QSGSoftwareRenderableNodeUpdater:
+ Collaboration diagram for QSGSoftwareRenderableNodeUpdater:

Public Member Functions

 QSGSoftwareRenderableNodeUpdater (QSGAbstractSoftwareRenderer *renderer)
 
virtual ~QSGSoftwareRenderableNodeUpdater ()
 
bool visit (QSGTransformNode *) override
 
void endVisit (QSGTransformNode *) override
 
bool visit (QSGClipNode *) override
 
void endVisit (QSGClipNode *) override
 
bool visit (QSGGeometryNode *) override
 
void endVisit (QSGGeometryNode *) override
 
bool visit (QSGOpacityNode *) override
 
void endVisit (QSGOpacityNode *) override
 
bool visit (QSGInternalImageNode *) override
 
void endVisit (QSGInternalImageNode *) override
 
bool visit (QSGPainterNode *) override
 
void endVisit (QSGPainterNode *) override
 
bool visit (QSGInternalRectangleNode *) override
 
void endVisit (QSGInternalRectangleNode *) override
 
bool visit (QSGGlyphNode *) override
 
void endVisit (QSGGlyphNode *) override
 
bool visit (QSGRootNode *) override
 
void endVisit (QSGRootNode *) override
 
bool visit (QSGRenderNode *) override
 
void endVisit (QSGRenderNode *) override
 
void updateNodes (QSGNode *node, bool isNodeRemoved=false)
 
- Public Member Functions inherited from QSGNodeVisitorEx
virtual ~QSGNodeVisitorEx ()
 
virtual bool visit (QSGTransformNode *)=0
 
virtual void endVisit (QSGTransformNode *)=0
 
virtual bool visit (QSGClipNode *)=0
 
virtual void endVisit (QSGClipNode *)=0
 
virtual bool visit (QSGGeometryNode *)=0
 
virtual void endVisit (QSGGeometryNode *)=0
 
virtual bool visit (QSGOpacityNode *)=0
 
virtual void endVisit (QSGOpacityNode *)=0
 
virtual bool visit (QSGInternalImageNode *)=0
 
virtual void endVisit (QSGInternalImageNode *)=0
 
virtual bool visit (QSGPainterNode *)=0
 
virtual void endVisit (QSGPainterNode *)=0
 
virtual bool visit (QSGInternalRectangleNode *)=0
 
virtual void endVisit (QSGInternalRectangleNode *)=0
 
virtual bool visit (QSGGlyphNode *)=0
 
virtual void endVisit (QSGGlyphNode *)=0
 
virtual bool visit (QSGRootNode *)=0
 
virtual void endVisit (QSGRootNode *)=0
 
virtual bool visit (QSGRenderNode *)=0
 
virtual void endVisit (QSGRenderNode *)=0
 
void visitChildren (QSGNode *node)
 

Detailed Description

Definition at line 29 of file qsgsoftwarerenderablenodeupdater_p.h.

Constructor & Destructor Documentation

◆ QSGSoftwareRenderableNodeUpdater()

QT_BEGIN_NAMESPACE QSGSoftwareRenderableNodeUpdater::QSGSoftwareRenderableNodeUpdater ( QSGAbstractSoftwareRenderer renderer)

Definition at line 20 of file qsgsoftwarerenderablenodeupdater.cpp.

References QStack< T >::push().

+ Here is the call graph for this function:

◆ ~QSGSoftwareRenderableNodeUpdater()

QSGSoftwareRenderableNodeUpdater::~QSGSoftwareRenderableNodeUpdater ( )
virtual

Definition at line 30 of file qsgsoftwarerenderablenodeupdater.cpp.

Member Function Documentation

◆ endVisit() [1/10]

void QSGSoftwareRenderableNodeUpdater::endVisit ( QSGClipNode )
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 61 of file qsgsoftwarerenderablenodeupdater.cpp.

References QRegion::isNull(), QStack< T >::pop(), QList< T >::size(), and QStack< T >::top().

+ Here is the call graph for this function:

◆ endVisit() [2/10]

void QSGSoftwareRenderableNodeUpdater::endVisit ( QSGGeometryNode )
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 86 of file qsgsoftwarerenderablenodeupdater.cpp.

◆ endVisit() [3/10]

void QSGSoftwareRenderableNodeUpdater::endVisit ( QSGGlyphNode )
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 134 of file qsgsoftwarerenderablenodeupdater.cpp.

◆ endVisit() [4/10]

void QSGSoftwareRenderableNodeUpdater::endVisit ( QSGInternalImageNode )
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 107 of file qsgsoftwarerenderablenodeupdater.cpp.

◆ endVisit() [5/10]

void QSGSoftwareRenderableNodeUpdater::endVisit ( QSGInternalRectangleNode )
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 125 of file qsgsoftwarerenderablenodeupdater.cpp.

◆ endVisit() [6/10]

void QSGSoftwareRenderableNodeUpdater::endVisit ( QSGOpacityNode )
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 97 of file qsgsoftwarerenderablenodeupdater.cpp.

References QStack< T >::pop().

+ Here is the call graph for this function:

◆ endVisit() [7/10]

void QSGSoftwareRenderableNodeUpdater::endVisit ( QSGPainterNode )
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 116 of file qsgsoftwarerenderablenodeupdater.cpp.

◆ endVisit() [8/10]

void QSGSoftwareRenderableNodeUpdater::endVisit ( QSGRenderNode )
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 165 of file qsgsoftwarerenderablenodeupdater.cpp.

◆ endVisit() [9/10]

void QSGSoftwareRenderableNodeUpdater::endVisit ( QSGRootNode )
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 144 of file qsgsoftwarerenderablenodeupdater.cpp.

◆ endVisit() [10/10]

void QSGSoftwareRenderableNodeUpdater::endVisit ( QSGTransformNode )
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 42 of file qsgsoftwarerenderablenodeupdater.cpp.

References QStack< T >::pop().

Referenced by updateNodes().

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

◆ updateNodes()

void QSGSoftwareRenderableNodeUpdater::updateNodes ( QSGNode node,
bool  isNodeRemoved = false 
)

Definition at line 169 of file qsgsoftwarerenderablenodeupdater.cpp.

References QSGVisitableNode::accept(), QSGNode::BasicNodeType, QList< T >::clear(), QSGNode::ClipNodeType, QHash< Key, T >::contains(), endVisit(), QSGNode::flags(), QSGNode::GeometryNodeType, QSGNode::IsVisitableNode, QSGNode::OpacityNodeType, QSGNode::parent(), QStack< T >::push(), QHash< Key, T >::remove(), QSGNode::RenderNodeType, QSGNode::RootNodeType, state, QSGNode::TransformNodeType, QSGNode::type(), visit(), and QSGNodeVisitorEx::visitChildren().

Referenced by QSGAbstractSoftwareRenderer::nodeChanged().

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

◆ visit() [1/10]

bool QSGSoftwareRenderableNodeUpdater::visit ( QSGClipNode node)
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 47 of file qsgsoftwarerenderablenodeupdater.cpp.

References QSGClipNode::clipRect(), QRegion::intersected(), QRegion::isNull(), QTransform::map(), QStack< T >::push(), QList< T >::size(), QStack< T >::top(), and QRectF::toRect().

+ Here is the call graph for this function:

◆ visit() [2/10]

◆ visit() [3/10]

bool QSGSoftwareRenderableNodeUpdater::visit ( QSGGlyphNode node)
overridevirtual

◆ visit() [4/10]

bool QSGSoftwareRenderableNodeUpdater::visit ( QSGInternalImageNode node)
overridevirtual

◆ visit() [5/10]

bool QSGSoftwareRenderableNodeUpdater::visit ( QSGInternalRectangleNode node)
overridevirtual

◆ visit() [6/10]

bool QSGSoftwareRenderableNodeUpdater::visit ( QSGOpacityNode node)
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 90 of file qsgsoftwarerenderablenodeupdater.cpp.

References QSGOpacityNode::opacity(), QStack< T >::push(), and QStack< T >::top().

+ Here is the call graph for this function:

◆ visit() [7/10]

bool QSGSoftwareRenderableNodeUpdater::visit ( QSGPainterNode node)
overridevirtual

◆ visit() [8/10]

bool QSGSoftwareRenderableNodeUpdater::visit ( QSGRenderNode node)
overridevirtual

◆ visit() [9/10]

bool QSGSoftwareRenderableNodeUpdater::visit ( QSGRootNode node)
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 138 of file qsgsoftwarerenderablenodeupdater.cpp.

◆ visit() [10/10]

bool QSGSoftwareRenderableNodeUpdater::visit ( QSGTransformNode node)
overridevirtual

Implements QSGNodeVisitorEx.

Definition at line 35 of file qsgsoftwarerenderablenodeupdater.cpp.

References QSGTransformNode::matrix(), QStack< T >::push(), QStack< T >::top(), and QMatrix4x4::toTransform().

Referenced by updateNodes().

+ 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: