diff options
author | Paul Lemire <paul.lemire@kdab.com> | 2015-02-25 16:33:51 +0100 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2015-02-28 16:29:01 +0000 |
commit | 8d33af238e7b855bd5a217302e586d1dfe73066e (patch) | |
tree | 878cb85d034b18e982f60184d3d30072784c359e /src/core | |
parent | 66fc1e35db664ecaf0b37c855eea7391c0576773 (diff) |
QBackendNodeFunctor: get and destroy now take a QNodeId
This will help fixing the dynamic destruction in follow up patches.
Change-Id: Id44fbeac388628c0e563d288e13d1f15d7ac0c24
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/core')
-rw-r--r-- | src/core/aspects/qabstractaspect.cpp | 8 | ||||
-rw-r--r-- | src/core/nodes/qbackendnode.h | 4 |
2 files changed, 6 insertions, 6 deletions
diff --git a/src/core/aspects/qabstractaspect.cpp b/src/core/aspects/qabstractaspect.cpp index ca8a543d6..82a1065f9 100644 --- a/src/core/aspects/qabstractaspect.cpp +++ b/src/core/aspects/qabstractaspect.cpp @@ -100,7 +100,7 @@ QBackendNode *QAbstractAspect::createBackendNode(QNode *frontend) const metaObj = metaObj->superClass(); } if (!functor.isNull()) { - QBackendNode *backend = functor->get(frontend); + QBackendNode *backend = functor->get(frontend->id()); if (backend != Q_NULLPTR) return backend; backend = functor->create(frontend, this); @@ -131,7 +131,7 @@ QBackendNode *QAbstractAspect::getBackendNode(QNode *frontend) const metaObj = metaObj->superClass(); } if (!functor.isNull()) - return functor->get(frontend); + return functor->get(frontend->id()); return Q_NULLPTR; } @@ -146,13 +146,13 @@ void QAbstractAspect::clearBackendNode(QNode *frontend) const metaObj = metaObj->superClass(); } if (!functor.isNull()) { - QBackendNode *backend = functor->get(frontend); + QBackendNode *backend = functor->get(frontend->id()); if (backend != Q_NULLPTR) { QBackendNodePrivate *backendPriv = QBackendNodePrivate::get(backend); d->m_arbiter->unregisterObserver(backendPriv, backend->peerUuid()); if (backend->mode() == QBackendNode::ReadWrite) d->m_arbiter->scene()->removeObservable(backendPriv, backend->peerUuid()); - functor->destroy(frontend); + functor->destroy(frontend->id()); } } } diff --git a/src/core/nodes/qbackendnode.h b/src/core/nodes/qbackendnode.h index 6b7950eb6..d37a902bb 100644 --- a/src/core/nodes/qbackendnode.h +++ b/src/core/nodes/qbackendnode.h @@ -55,8 +55,8 @@ class QT3DCORESHARED_EXPORT QBackendNodeFunctor public: virtual ~QBackendNodeFunctor() {} virtual QBackendNode *create(QNode *frontend, const QBackendNodeFactory *factory) const = 0; - virtual QBackendNode *get(QNode *frontend) const = 0; - virtual void destroy(QNode *frontend) const = 0; + virtual QBackendNode *get(const QNodeId &id) const = 0; + virtual void destroy(const QNodeId &id) const = 0; }; typedef QSharedPointer<QBackendNodeFunctor> QBackendNodeFunctorPtr; |