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
qssgscenedesc_p.h File Reference

(4472657d4ffa90ce5a92f5c3f08305cc5c574a2d)

#include <QtQuick3DAssetUtils/private/qtquick3dassetutilsglobal_p.h>
#include <QtQuick3DRuntimeRender/private/qssgrendergraphobject_p.h>
#include <QtQuick3DRuntimeRender/private/qssgperframeallocator_p.h>
#include <QtQuick3DUtils/private/qssgmesh_p.h>
#include <QtCore/qlist.h>
#include <QtCore/qhash.h>
#include <QtCore/qvariant.h>
#include <QtCore/qflags.h>
#include <QtQml/qqmllist.h>
#include <QtQuick3D/private/qquick3dobject_p.h>
#include <QtQuick3D/private/qquick3dcustommaterial_p.h>
#include <QtQuick3D/private/qquick3ddefaultmaterial_p.h>
#include <QtQuick3D/private/qquick3dprincipledmaterial_p.h>
#include <QtQuick3D/private/qquick3dspecularglossymaterial_p.h>
#include <QtQuick3D/private/qquick3dmodel_p.h>
#include <QtQuick3D/private/qquick3dorthographiccamera_p.h>
#include <QtQuick3D/private/qquick3dperspectivecamera_p.h>
#include <QtQuick3D/private/qquick3dcustomcamera_p.h>
#include <QtQuick3D/private/qquick3ddirectionallight_p.h>
#include <QtQuick3D/private/qquick3dpointlight_p.h>
#include <QtQuick3D/private/qquick3dspotlight_p.h>
#include <QtQuick3D/private/qquick3dtexture_p.h>
#include <QtQuick3D/private/qquick3dcubemaptexture_p.h>
#include <QtQuick3D/private/qquick3dtexturedata_p.h>
#include <QtQuick3D/private/qquick3dskeleton_p.h>
#include <QtQuick3D/private/qquick3djoint_p.h>
#include <qmetatype.h>
#include <QtQuick3DUtils/private/qssginvasivelinkedlist_p.h>
+ Include dependency graph for qssgscenedesc_p.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  QSSGSceneDesc::Scene
 
struct  QSSGSceneDesc::PropertyCall
 
struct  QSSGSceneDesc::Flag
 
struct  QSSGSceneDesc::Property
 
struct  QSSGSceneDesc::NodeList
 
struct  QSSGSceneDesc::Node
 
struct  QSSGSceneDesc::TypeMap< T >
 
struct  QSSGSceneDesc::Texture
 
struct  QSSGSceneDesc::TextureData
 
struct  QSSGSceneDesc::Material
 
struct  QSSGSceneDesc::Mesh
 
struct  QSSGSceneDesc::Model
 
struct  QSSGSceneDesc::Camera
 
struct  QSSGSceneDesc::Light
 
struct  QSSGSceneDesc::Skin
 
struct  QSSGSceneDesc::Skeleton
 
struct  QSSGSceneDesc::Joint
 
struct  QSSGSceneDesc::MorphTarget
 
struct  QSSGSceneDesc::ListView
 
struct  QSSGSceneDesc::Animation
 
struct  QSSGSceneDesc::Animation::KeyPosition
 
struct  QSSGSceneDesc::Animation::Channel
 
struct  QSSGSceneDesc::ListParam< typename >
 
struct  QSSGSceneDesc::ListParam< QList< T > >
 
struct  QSSGSceneDesc::FuncType< T >
 
struct  QSSGSceneDesc::FuncType< R(*)(A...)>
 
struct  QSSGSceneDesc::FuncType< R(C::*)(A...)>
 
struct  QSSGSceneDesc::FuncType< QQmlListProperty< T >(C::*)()>
 
struct  QSSGSceneDesc::PropertyProxySetter< Ret, Arg >
 
struct  QSSGSceneDesc::PropertySetter< Ret, Class, Arg >
 
struct  QSSGSceneDesc::PropertyListSetter< Ret, Class, Arg >
 
struct  QSSGSceneDesc::PropertyList< Class, T, List >
 

Namespaces

namespace  QSSGSceneDesc
 

Macros

#define QSSG_DECLARE_NODE(NODE)
 

Typedefs

template<typename T >
using QSSGSceneDesc::rm_cvref_t = std::remove_cv_t<std::remove_reference_t<T>>
 
template<typename T >
using QSSGSceneDesc::as_scene_type_t = typename T::type
 
template<typename T >
using QSSGSceneDesc::as_node_type_t = typename TypeMap<T>::type
 
template<typename T >
using QSSGSceneDesc::listParam_t = typename ListParam<rm_cvref_t<T>>::type
 
template<typename NodeT >
using QSSGSceneDesc::if_node = typename std::enable_if_t<is_node_v<NodeT>, bool>
 
template<typename Setter , typename Value >
using QSSGSceneDesc::if_compatible_t = typename std::enable_if_t<std::is_same_v<typename FuncType<Setter>::Arg0Base, rm_cvref_t<Value>>, bool>
 
template<typename Setter , typename T >
using QSSGSceneDesc::if_compatible_node_list_t = typename std::enable_if_t<std::is_same_v<typename FuncType<Setter>::Ret, QQmlListProperty<as_scene_type_t<T>>>, bool>
 
template<typename Setter , typename Value >
using QSSGSceneDesc::if_compatible_proxy_t = typename std::enable_if_t<std::is_same_v<typename FuncType<Setter>::Arg2Base, rm_cvref_t<Value>>, bool>
 

Functions

Q_QUICK3DASSETUTILS_EXPORT void QSSGSceneDesc::destructValue (QVariant &value)
 
Q_QUICK3DASSETUTILS_EXPORT void QSSGSceneDesc::destructNode (QSSGSceneDesc::Node &node)
 
Q_QUICK3DASSETUTILS_EXPORT QMetaType QSSGSceneDesc::listViewMetaType ()
 
Q_QUICK3DASSETUTILS_EXPORT void QSSGSceneDesc::addNode (Node &parent, Node &node)
 
Q_QUICK3DASSETUTILS_EXPORT void QSSGSceneDesc::addNode (Scene &scene, Node &node)
 
template<typename Setter , typename T , if_compatible_t< Setter, T > = false>
static void QSSGSceneDesc::setProperty (QSSGSceneDesc::Node &node, const char *name, Setter setter, T &&value)
 
template<typename Setter , typename T , if_compatible_t< Setter, QFlags< T > > = false>
static void QSSGSceneDesc::setProperty (QSSGSceneDesc::Node &node, const char *name, Setter setter, QFlags< T > value)
 
template<typename Setter , typename T , if_compatible_t< Setter, QList< T > > = false>
static void QSSGSceneDesc::setProperty (QSSGSceneDesc::Node &node, const char *name, Setter setter, QList< T > value)
 
Q_QUICK3DASSETUTILS_EXPORT QSSGSceneDesc::PropertyQSSGSceneDesc::setProperty (QSSGSceneDesc::Node &node, const char *name, QVariant &&value)
 
template<typename Setter >
static void QSSGSceneDesc::setProperty (QSSGSceneDesc::Node &node, const char *name, Setter setter, QVariant &&value)
 
template<typename Setter , typename Value , if_compatible_proxy_t< Setter, Value > = true>
static void QSSGSceneDesc::setProperty (QSSGSceneDesc::Node &node, const char *name, Setter setter, Value &&value, QSSGSceneDesc::Property::Type type=QSSGSceneDesc::Property::Type::Static)
 
template<typename Setter , typename ViewValue , if_compatible_t< Setter, typename ViewValue::type > = false>
static void QSSGSceneDesc::setProperty (QSSGSceneDesc::Node &node, const char *name, Setter setter, ViewValue view)
 
template<typename Setter , typename Value , if_compatible_t< Setter, as_scene_type_t< Value > * > = true>
static void QSSGSceneDesc::setProperty (QSSGSceneDesc::Node &node, const char *name, Setter setter, Value *value)
 
template<typename Setter , typename NodeT , qsizetype Prealloc, if_compatible_node_list_t< Setter, NodeT > = true>
static void QSSGSceneDesc::setProperty (QSSGSceneDesc::Node &node, const char *name, Setter setter, const QVarLengthArray< NodeT *, Prealloc > &list)
 

Variables

template<typename T >
static constexpr bool QSSGSceneDesc::is_node_v = std::is_base_of_v<Node, T>
 

Macro Definition Documentation

◆ QSSG_DECLARE_NODE

#define QSSG_DECLARE_NODE ( NODE)
Value:
static_assert(is_node_v<NODE>, #NODE " - does not inherit from Node!"); \
template <> struct TypeMap<NODE::type> { using type = QSSGSceneDesc::NODE; };
GLenum type

Definition at line 184 of file qssgscenedesc_p.h.