5#ifndef QSSG_RENDER_GRAPH_OBJECT_H
6#define QSSG_RENDER_GRAPH_OBJECT_H
17#include <QtQuick3DRuntimeRender/qtquick3druntimerenderexports.h>
18#include <QtCore/QDebug>
19#include <QtCore/qtconfigmacros.h>
20#include <QtQuick/qtquickglobal.h>
25#ifndef Q_QUICK3D_PROFILE_ID
26# if QT_CONFIG(qml_debug)
27# define Q_QUICK3D_PROFILE_ID_ qint32 profilingId = -1;
29# define Q_QUICK3D_PROFILE_ID_
32# define Q_QUICK3D_PROFILE_ID_ Q_QUICK3D_PROFILE_ID
60 Node = BaseType::Node,
67 DirectionalLight = BaseType::Light | BaseType::Node,
71 OrthographicCamera = BaseType::Camera | BaseType::Node,
76 Model = BaseType::Renderable | BaseType::Node,
80 SceneEnvironment = BaseType::Resource,
89 DefaultMaterial = BaseType::Material | BaseType::Resource,
92 SpecularGlossyMaterial,
95 Image2D = BaseType::Texture | BaseType::Resource,
97 RenderExtension = BaseType::Extension,
100 using TypeT = std::underlying_type_t<Type>;
103 HasGraphicsResources = 0x1
105 using FlagT = std::underlying_type_t<Flags>;
124 return (
TypeT(
type) & BaseType::Material);
129 return (
TypeT(
type) & BaseType::Texture);
134 return (
TypeT(
type) & BaseType::Renderable);
139 return (
TypeT(
type) & BaseType::Resource);
144 return (
TypeT(
type) & BaseType::Extension);
158 return ((
flags &
FlagT(Flags::HasGraphicsResources)) != 0);
167#ifndef QT_NO_DEBUG_STREAM
176#ifndef QT_NO_DEBUG_STREAM
static constexpr bool isCamera(Type type) noexcept
static constexpr bool isRenderable(Type type) noexcept
static constexpr bool isNodeType(Type type) noexcept
static constexpr bool isUserType(Type type) noexcept
static constexpr bool isExtension(Type type) noexcept
static constexpr bool isResource(Type type) noexcept
QSSGRenderGraphObject(QSSGRenderGraphObject::Type inType, FlagT inFlags)
std::underlying_type_t< Type > TypeT
static constexpr bool isMaterial(Type type) noexcept
static constexpr bool isTexture(Type type) noexcept
bool hasGraphicsResources() const noexcept
static constexpr bool isLight(Type type) noexcept
std::underlying_type_t< Flags > FlagT
QSSGRenderGraphObject(QSSGRenderGraphObject::Type inType)
Combined button and popup list for selecting options.
Q_QUICK3DRUNTIMERENDER_EXPORT QDebug operator<<(QDebug, QSSGRenderGraphObject::Type type)
#define Q_QUICK3D_PROFILE_ID_