66QSSGNodeId QQuick3DExtensionHelpers::getNodeId(
const QQuick3DObject &node)
68 auto *po = QQuick3DObjectPrivate::get(&node);
69 QSSG_ASSERT_X(QSSGRenderGraphObject::isNodeType(po->type),
"Type is not a node",
return QSSGNodeId::Invalid);
71 return static_cast<QSSGNodeId>(quintptr(QQuick3DObjectPrivate::get(&node)->spatialNode));
80QSSGResourceId QQuick3DExtensionHelpers::getResourceId(
const QQuick3DObject &resource)
82 auto *po = QQuick3DObjectPrivate::get(&resource);
83 QSSG_ASSERT_X(QSSGRenderGraphObject::isResource(po->type),
"Type is not a resource",
return QSSGResourceId::Invalid);
85 return static_cast<QSSGResourceId>(quintptr(QQuick3DObjectPrivate::get(&resource)->spatialNode));
94QSSGCameraId QQuick3DExtensionHelpers::getCameraId(
const QQuick3DObject &camera)
96 auto *po = QQuick3DObjectPrivate::get(&camera);
97 QSSG_ASSERT_X(QSSGRenderGraphObject::isCamera(po->type),
"Type is not a camera",
return QSSGCameraId::Invalid);
99 return static_cast<QSSGCameraId>(quintptr(po->spatialNode));
102QSSGExtensionId QQuick3DExtensionHelpers::getExtensionId(
const QQuick3DObject &extension)
104 auto *po = QQuick3DObjectPrivate::get(&extension);
105 QSSG_ASSERT_X(QSSGRenderGraphObject::isExtension(po->type),
"Type is not an extension",
return QSSGExtensionId::Invalid);
107 return static_cast<QSSGExtensionId>(quintptr(po->spatialNode));