Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Toggle main menu visibility
Loading...
Searching...
No Matches
qsgsoftwarerenderlistbuilder.cpp
Go to the documentation of this file.
1
// Copyright (C) 2016 The Qt Company Ltd.
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
// Qt-Security score:significant reason:default
4
5
#
include
"qsgsoftwarerenderlistbuilder_p.h"
6
7
#
include
"qsgsoftwarerenderablenode_p.h"
8
#
include
"qsgabstractsoftwarerenderer_p.h"
9
#
include
"qsgsoftwareinternalimagenode_p.h"
10
#
include
"qsgsoftwareinternalrectanglenode_p.h"
11
#
include
"qsgsoftwareglyphnode_p.h"
12
#
include
"qsgsoftwarepublicnodes_p.h"
13
#
include
"qsgsoftwarepainternode_p.h"
14
#
include
"qsgsoftwarepixmaptexture_p.h"
15
16
#
include
<
QtQuick
/
qsgsimplerectnode
.
h
>
17
#
include
<
QtQuick
/
qsgsimpletexturenode
.
h
>
18
#
include
<
QtQuick
/
qsgrendernode
.
h
>
19
20
QT_BEGIN_NAMESPACE
21
22
QSGSoftwareRenderListBuilder
::
QSGSoftwareRenderListBuilder
(QSGAbstractSoftwareRenderer *renderer)
23
: m_renderer(renderer)
24
{
25
26
}
27
28
bool
QSGSoftwareRenderListBuilder::visit(QSGTransformNode *)
29
{
30
return
true
;
31
}
32
33
void
QSGSoftwareRenderListBuilder::endVisit(QSGTransformNode *)
34
{
35
}
36
37
bool
QSGSoftwareRenderListBuilder::visit(QSGClipNode *)
38
{
39
return
true
;
40
}
41
42
void
QSGSoftwareRenderListBuilder::endVisit(QSGClipNode *)
43
{
44
}
45
46
bool
QSGSoftwareRenderListBuilder::visit(QSGGeometryNode *node)
47
{
48
return
addRenderableNode(node);
49
}
50
51
void
QSGSoftwareRenderListBuilder::endVisit(QSGGeometryNode *)
52
{
53
}
54
55
bool
QSGSoftwareRenderListBuilder::visit(QSGOpacityNode *)
56
{
57
return
true
;
58
}
59
60
void
QSGSoftwareRenderListBuilder::endVisit(QSGOpacityNode *)
61
{
62
}
63
64
bool
QSGSoftwareRenderListBuilder::visit(QSGInternalImageNode *node)
65
{
66
return
addRenderableNode(node);
67
}
68
69
void
QSGSoftwareRenderListBuilder::endVisit(QSGInternalImageNode *)
70
{
71
}
72
73
bool
QSGSoftwareRenderListBuilder::visit(QSGPainterNode *node)
74
{
75
return
addRenderableNode(node);
76
}
77
78
void
QSGSoftwareRenderListBuilder::endVisit(QSGPainterNode *)
79
{
80
}
81
82
bool
QSGSoftwareRenderListBuilder::visit(QSGInternalRectangleNode *node)
83
{
84
return
addRenderableNode(node);
85
}
86
87
void
QSGSoftwareRenderListBuilder::endVisit(QSGInternalRectangleNode *)
88
{
89
}
90
91
bool
QSGSoftwareRenderListBuilder::visit(QSGGlyphNode *node)
92
{
93
return
addRenderableNode(node);
94
}
95
96
void
QSGSoftwareRenderListBuilder::endVisit(QSGGlyphNode *)
97
{
98
}
99
100
bool
QSGSoftwareRenderListBuilder::visit(QSGRootNode *)
101
{
102
return
true
;
103
}
104
105
void
QSGSoftwareRenderListBuilder::endVisit(QSGRootNode *)
106
{
107
}
108
109
#
if
QT_CONFIG
(
quick_sprite
)
110
bool
QSGSoftwareRenderListBuilder::visit(QSGSpriteNode *node)
111
{
112
return
addRenderableNode(node);
113
}
114
115
void
QSGSoftwareRenderListBuilder::endVisit(QSGSpriteNode *)
116
{
117
118
}
119
#
endif
120
121
bool
QSGSoftwareRenderListBuilder::visit(QSGRenderNode *node)
122
{
123
return
addRenderableNode(node);
124
}
125
126
void
QSGSoftwareRenderListBuilder::endVisit(QSGRenderNode *)
127
{
128
}
129
130
bool
QSGSoftwareRenderListBuilder::addRenderableNode(QSGNode *node)
131
{
132
auto
renderableNode = m_renderer->renderableNode(node);
133
if
(renderableNode ==
nullptr
) {
134
// Not a node we can render
135
return
false
;
136
}
137
m_renderer->appendRenderableNode(renderableNode);
138
return
true
;
139
}
140
141
QT_END_NAMESPACE
QSGSoftwareRenderListBuilder
Definition
qsgsoftwarerenderlistbuilder_p.h:26
qtdeclarative
src
quick
scenegraph
adaptations
software
qsgsoftwarerenderlistbuilder.cpp
Generated on
for Qt by
1.18.0