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
qsgcurvestrokenode_p_p.h
Go to the documentation of this file.
1// Copyright (C) 2023 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
4#ifndef QSGCURVESTROKENODE_P_P_H
5#define QSGCURVESTROKENODE_P_P_H
6
7#include <QtQuick/qtquickexports.h>
8#include <QtQuick/qsgmaterial.h>
9
10//
11// W A R N I N G
12// -------------
13//
14// This file is not part of the Qt API. It exists for the convenience
15// of a number of Qt sources files. This header file may change from
16// version to version without notice, or even be removed.
17//
18// We mean it.
19//
20
22
25
27{
28public:
30 {
31 setShaderFileName(VertexStage,
32 QStringLiteral(":/qt-project.org/scenegraph/shaders_ng/shapestroke.vert.qsb"),
33 viewCount);
34 setShaderFileName(FragmentStage,
35 QStringLiteral(":/qt-project.org/scenegraph/shaders_ng/shapestroke.frag.qsb"),
36 viewCount);
37 }
38
39 bool updateUniformData(RenderState &state, QSGMaterial *newEffect, QSGMaterial *oldEffect) override;
40};
41
42
43class Q_QUICK_EXPORT QSGCurveStrokeMaterial : public QSGMaterial
44{
45public:
47 : m_node(node)
48 {
49 setFlag(Blending, true);
50 }
51
52 int compare(const QSGMaterial *other) const override;
53
55 {
56 return m_node;
57 }
58
59protected:
60 QSGMaterialType *type() const override
61 {
62 static QSGMaterialType t;
63 return &t;
64 }
69
71};
72
74
75#endif // QSGCURVESTROKENODE_P_P_H
QSGMaterialShader * createShader(QSGRendererInterface::RenderMode) const override
This function returns a new instance of a the QSGMaterialShader implementation used to render geometr...
QSGCurveStrokeNode * m_node
QSGCurveStrokeNode * node() const
QSGMaterialType * type() const override
This function is called by the scene graph to query an identifier that is unique to the QSGMaterialSh...
QSGCurveStrokeMaterial(QSGCurveStrokeNode *node)
The QSGMaterialShader class represents a graphics API independent shader program.
The QSGMaterial class encapsulates rendering state for a shader program.
Definition qsgmaterial.h:15
RenderMode
\value RenderMode2D Normal 2D rendering \value RenderMode2DNoDepthBuffer Normal 2D rendering with dep...
else opt state
[0]
Combined button and popup list for selecting options.
GLdouble GLdouble t
Definition qopenglext.h:243
#define QStringLiteral(str)
static int compare(quint64 a, quint64 b)
QSharedPointer< T > other(t)
[5]
The QSGMaterialType class is used as a unique type token in combination with QSGMaterial.