68QSSGNodeId QQuick3DExtensionHelpers::getNodeId(
const QQuick3DObject &node)
70 auto *po = QQuick3DObjectPrivate::get(&node);
71 QSSG_ASSERT_X(QSSGRenderGraphObject::isNodeType(po->type),
"Type is not a node",
return QSSGNodeId::Invalid);
73 return static_cast<QSSGNodeId>(quintptr(QQuick3DObjectPrivate::get(&node)->spatialNode));
82QSSGResourceId QQuick3DExtensionHelpers::getResourceId(
const QQuick3DObject &resource)
84 auto *po = QQuick3DObjectPrivate::get(&resource);
85 QSSG_ASSERT_X(QSSGRenderGraphObject::isResource(po->type),
"Type is not a resource",
return QSSGResourceId::Invalid);
87 return static_cast<QSSGResourceId>(quintptr(QQuick3DObjectPrivate::get(&resource)->spatialNode));
96QSSGCameraId QQuick3DExtensionHelpers::getCameraId(
const QQuick3DObject &camera)
98 auto *po = QQuick3DObjectPrivate::get(&camera);
99 QSSG_ASSERT_X(QSSGRenderGraphObject::isCamera(po->type),
"Type is not a camera",
return QSSGCameraId::Invalid);
101 return static_cast<QSSGCameraId>(quintptr(po->spatialNode));
104QSSGExtensionId QQuick3DExtensionHelpers::getExtensionId(
const QQuick3DObject &extension)
106 auto *po = QQuick3DObjectPrivate::get(&extension);
107 QSSG_ASSERT_X(QSSGRenderGraphObject::isExtension(po->type),
"Type is not an extension",
return QSSGExtensionId::Invalid);
109 return static_cast<QSSGExtensionId>(quintptr(po->spatialNode));