Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
qquick3dextensionhelpers.h
Go to the documentation of this file.
1// Copyright (C) 2023 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
3// Qt-Security score:significant reason:default
4
5
6#ifndef QQUICK3DEXTENSIONHELPERS_H
7#define QQUICK3DEXTENSIONHELPERS_H
8
9//
10// W A R N I N G
11// -------------
12//
13// This file is part of the QtQuick3D API, with limited compatibility guarantees.
14// Usage of this API may make your code source and binary incompatible with
15// future versions of Qt.
16//
17
18#include <QtQuick3D/qtquick3dglobal.h>
19#include <ssg/qssgrenderbasetypes.h>
20#include <ssg/qssgrendergraphobject.h>
21
22QT_BEGIN_NAMESPACE
23
24class QQuick3DObject;
25
26#ifdef Q_QDOC
27typedef quint64 QSSGNodeId;
28typedef quint64 QSSGResourceId;
29typedef quint64 QSSGCameraId;
30typedef quint64 QSSGExtensionId;
31#endif
32
33class Q_QUICK3D_EXPORT QQuick3DExtensionHelpers
34{
35public:
36 QQuick3DExtensionHelpers();
37
38 [[nodiscard]] static QSSGNodeId getNodeId(const QQuick3DObject &node);
39 [[nodiscard]] static QSSGResourceId getResourceId(const QQuick3DObject &resource);
40 [[nodiscard]] static QSSGCameraId getCameraId(const QQuick3DObject &camera);
41 [[nodiscard]] static QSSGExtensionId getExtensionId(const QQuick3DObject &extension);
42
43 [[nodiscard]] static QSSGRenderGraphObject::Type getNodeIdType(QSSGNodeId nodeId);
44
45 template<typename QSSGTypeId>
46 [[nodiscard]] static constexpr bool isNull(QSSGTypeId id) { return (id == QSSGTypeId::Invalid); }
47};
48
49QT_END_NAMESPACE
50
51#endif // QQUICK3DEXTENSIONHELPERS_H
Combined button and popup list for selecting options.