1// Copyright (C) 2008-2012 NVIDIA Corporation.
2// Copyright (C) 2019 The Qt Company Ltd.
3// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
4
5
6#include "qssgrendergraphobject.h"
7
8QT_BEGIN_NAMESPACE
9
10static const char *asString(QSSGRenderGraphObject::Type type)
11{
12 using Type = QSSGRenderGraphObject::Type;
13#define RETURN_AS_STRING(T) case T: return #T;
14 switch (type) {
15 RETURN_AS_STRING(Type::Unknown)
16 RETURN_AS_STRING(Type::Node)
17 RETURN_AS_STRING(Type::Layer)
18 RETURN_AS_STRING(Type::Joint)
19 RETURN_AS_STRING(Type::Skeleton)
20 RETURN_AS_STRING(Type::ImportScene)
21 RETURN_AS_STRING(Type::ReflectionProbe)
22 RETURN_AS_STRING(Type::DirectionalLight)
23 RETURN_AS_STRING(Type::PointLight)
24 RETURN_AS_STRING(Type::SpotLight)
25 RETURN_AS_STRING(Type::OrthographicCamera)
26 RETURN_AS_STRING(Type::PerspectiveCamera)
27 RETURN_AS_STRING(Type::CustomFrustumCamera)
28 RETURN_AS_STRING(Type::CustomCamera)
29 RETURN_AS_STRING(Type::Model)
30 RETURN_AS_STRING(Type::Item2D)
31 RETURN_AS_STRING(Type::Particles)
32 RETURN_AS_STRING(Type::SceneEnvironment)
33 RETURN_AS_STRING(Type::Effect)
34 RETURN_AS_STRING(Type::Geometry)
35 RETURN_AS_STRING(Type::TextureData)
36 RETURN_AS_STRING(Type::MorphTarget)
37 RETURN_AS_STRING(Type::ModelInstance)
38 RETURN_AS_STRING(Type::ModelBlendParticle)
39 RETURN_AS_STRING(Type::ResourceLoader)
40 RETURN_AS_STRING(Type::DefaultMaterial)
41 RETURN_AS_STRING(Type::PrincipledMaterial)
42 RETURN_AS_STRING(Type::CustomMaterial)
43 RETURN_AS_STRING(Type::SpecularGlossyMaterial)
44 RETURN_AS_STRING(Type::Skin)
45 RETURN_AS_STRING(Type::Image2D)
46 RETURN_AS_STRING(Type::ImageCube)
47 RETURN_AS_STRING(Type::RenderExtension)
48 }
49#undef RETURN_AS_STRING
50 return nullptr;
51}
52
53QSSGRenderGraphObject::QSSGRenderGraphObject(Type inType)
54 : type(inType)
55 , flags(0) {}
56
57QSSGRenderGraphObject::~QSSGRenderGraphObject() {}
58
59#ifndef QT_NO_DEBUG_STREAM
60QDebug operator<<(QDebug dbg, const QSSGRenderGraphObject::Type type)
61{
62 dbg.nospace() << "QSSGRenderGraphObject" << '{' << asString(type) << '}';
63 return dbg;
64}
65#endif
66
67QT_END_NAMESPACE
68

source code of qtquick3d/src/runtimerender/graphobjects/qssgrendergraphobject.cpp