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
qssgsceneedit_p.h
Go to the documentation of this file.
1// Copyright (C) 2022 The Qt Company Ltd.
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
3
4#ifndef QSSGSCENEEDIT_P_H
5#define QSSGSCENEEDIT_P_H
6
7//
8// W A R N I N G
9// -------------
10//
11// This file is not part of the Qt API. It exists purely as an
12// implementation detail. This header file may change from version to
13// version without notice, or even be removed.
14//
15// We mean it.
16//
17
18#include <QtQuick3DAssetUtils/private/qtquick3dassetutilsglobal_p.h>
19#include <QtCore/QStringView>
20
21QT_BEGIN_NAMESPACE
22
23namespace QSSGSceneDesc {
24 struct Scene;
25 struct Node;
26 struct Property;
27}
28
29class QJsonObject;
30class QJsonValue;
31
32namespace QSSGQmlUtilities {
33
34void Q_QUICK3DASSETUTILS_EXPORT applyEdit(QSSGSceneDesc::Scene *scene, const QJsonObject &changes);
35void Q_QUICK3DASSETUTILS_EXPORT setProperty(QSSGSceneDesc::Node *node, const QStringView propertyName, const QJsonValue &value);
36QSSGSceneDesc::Node Q_QUICK3DASSETUTILS_EXPORT *addResource(QSSGSceneDesc::Scene *scene, const QJsonObject &addition);
37}
38QT_END_NAMESPACE
39
40#endif // QSSGSCENEEDIT_P_H
static void removeFromAnimation(QSSGSceneDesc::Animation *animation, const NodeSet &nodes)
bool NodeFilter(QSSGSceneDesc::Node *)
static QSSGSceneDesc::Node::Type nodeTypeFromName(const QByteArrayView &typeName)
static void removeProperty(QSSGSceneDesc::Node *node, const QByteArrayView &name)
static constexpr qsizetype nNodeTypes
void applyEdit(QSSGSceneDesc::Scene *scene, const QJsonObject &changes)
void setProperty(QSSGSceneDesc::Node *node, const QStringView propertyName, const QJsonValue &value)
static NodeSet flattenTree(QSSGSceneDesc::Node *node, NodeFilter *excludeFunction=nullptr)
static QSSGSceneDesc::NodeList * nodeListFromJson(const QSSGSceneDesc::Scene *scene, const QJsonArray &array)
static QSSGSceneDesc::Node * nodeFromJson(const QSSGSceneDesc::Scene *scene, const QJsonObject &nodeRef)
static void deleteTree(QSSGSceneDesc::Node *node)
static void replaceReferencesToResource(QSSGSceneDesc::Node *node, QSSGSceneDesc::Node *resource, QSSGSceneDesc::Node *replacement)
static const char * typeNames[]
QSSGSceneDesc::Node * addResource(QSSGSceneDesc::Scene *scene, const QJsonObject &addition)
static void unlinkChild(QSSGSceneDesc::Node *child, QSSGSceneDesc::Node *parent)
static QSSGSceneDesc::Node * findResource(const QSSGSceneDesc::Scene *scene, const QByteArrayView &name, QSSGSceneDesc::Node::Type nodeType)
static QSSGSceneDesc::Node * findNode(QSSGSceneDesc::Node *root, const QByteArrayView name, QSSGSceneDesc::Node::Type type, QSSGSceneDesc::Node **parent=nullptr)