C
Qt Cluster: Rendering and Recovery from Main UI Failure
// Copyright (C) 2022 The Qt Company Ltd. // SPDX-License-Identifier: LicenseRef-Qt-Commercial OR BSD-3-Clause // This file is part of the Qt Safe Renderer module #ifndef GAUGENODE_H #define GAUGENODE_H #include <QSGNode> #include <QColor> class GaugeNode : public QSGGeometryNode { public: GaugeNode(const int &numVertices, const QColor &color, const bool &doNotFill); ~GaugeNode(); void setColor(const QColor &color); void setCutRad(const float &cutRad); void setDoNotFill(const bool &doNotFill); void setBackCutRad(const double &backCutRad); void setRadius(const double &radius); void setArcDistPerVert(const double &dist); void setNumVertices(const int &numVertices); void setFillWidth(const double &fillWidth); void setBoundingRect(const QRectF &rect); void setLeftToRight(const bool <r); void draw(); private: void initGeometry(); void setCenterPoint(const QPointF ¢er); void drawGeometry(); void drawGeometryTexturePoint2D(); void drawMaterial(); private: QSGGeometry m_geometry; QSGMaterial *m_material; int m_numVertices; bool m_doNotFill; QColor m_color; float m_cutRad; double m_radius; bool m_lefttoright; qreal m_width; qreal m_height; double m_center_y; double m_center_x; double m_backCutRad; double m_fillWidth; double m_arc_dist_per_vertices; DirtyState m_dirtyBits; }; #endif // GAUGENODE_H