diff options
author | Sean Harmer <sean.harmer@kdab.com> | 2017-02-16 17:38:52 +0000 |
---|---|---|
committer | Sean Harmer <sean.harmer@kdab.com> | 2017-02-24 20:41:28 +0000 |
commit | 7a3648ef4e884429dbe4bb60ab5a0a838bc5abfc (patch) | |
tree | fe617ede422a28854daeddff9f8d9a7874415750 | |
parent | 2a485273c1da1f56412bfd19795ac5a29331b770 (diff) |
Introduce QAbstractAnimationClip and rename QAnimationClip
Introduced an abstract base class for types of animation clip. Also
renamed QAnimationClip to QAnimationClipLoader since it loads data
from files.
Also renamed corresponding backend type and fixed up unit tests
accordingly.
Task-number: QTBUG-58898
Change-Id: I01a96e108cbbcd12e01913693e96610598965018
Reviewed-by: Kevin Ottens <kevin.ottens@kdab.com>
53 files changed, 439 insertions, 234 deletions
diff --git a/src/animation/backend/animationclip.cpp b/src/animation/backend/animationcliploader.cpp index 7b96f66e9..96323885c 100644 --- a/src/animation/backend/animationclip.cpp +++ b/src/animation/backend/animationcliploader.cpp @@ -34,9 +34,9 @@ ** ****************************************************************************/ -#include "animationclip_p.h" -#include <Qt3DAnimation/qanimationclip.h> -#include <Qt3DAnimation/private/qanimationclip_p.h> +#include "animationcliploader_p.h" +#include <Qt3DAnimation/qanimationcliploader.h> +#include <Qt3DAnimation/private/qanimationcliploader_p.h> #include <Qt3DAnimation/private/animationlogging_p.h> #include <Qt3DRender/private/qurlhelper_p.h> #include <Qt3DCore/qpropertyupdatedchange.h> @@ -52,7 +52,7 @@ QT_BEGIN_NAMESPACE namespace Qt3DAnimation { namespace Animation { -AnimationClip::AnimationClip() +AnimationClipLoader::AnimationClipLoader() : BackendNode(ReadWrite) , m_source() , m_name() @@ -62,16 +62,16 @@ AnimationClip::AnimationClip() { } -void AnimationClip::initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) +void AnimationClipLoader::initializeFromPeer(const Qt3DCore::QNodeCreatedChangeBasePtr &change) { - const auto typedChange = qSharedPointerCast<Qt3DCore::QNodeCreatedChange<QAnimationClipData>>(change); + const auto typedChange = qSharedPointerCast<Qt3DCore::QNodeCreatedChange<QAnimationClipLoaderData>>(change); const auto &data = typedChange->data; m_source = data.source; if (!m_source.isEmpty()) setDirty(Handler::AnimationClipDirty); } -void AnimationClip::cleanup() +void AnimationClipLoader::cleanup() { setEnabled(false); m_handler = nullptr; @@ -82,7 +82,7 @@ void AnimationClip::cleanup() clearData(); } -void AnimationClip::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) +void AnimationClipLoader::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) { switch (e->type()) { case Qt3DCore::PropertyUpdated: { @@ -104,7 +104,7 @@ void AnimationClip::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) \internal Called by LoadAnimationClipJob on the threadpool */ -void AnimationClip::loadAnimation() +void AnimationClipLoader::loadAnimation() { qCDebug(Jobs) << Q_FUNC_INFO << m_source; clearData(); @@ -150,7 +150,7 @@ void AnimationClip::loadAnimation() qCDebug(Jobs) << "Loaded animation data:" << *this; } -void AnimationClip::setDuration(float duration) +void AnimationClipLoader::setDuration(float duration) { if (qFuzzyCompare(duration, m_duration)) return; @@ -175,7 +175,7 @@ void AnimationClip::setDuration(float duration) for the first group, so the first channel of the second group occurs at index 3. */ -int AnimationClip::channelBaseIndex(int channelGroupIndex) const +int AnimationClipLoader::channelBaseIndex(int channelGroupIndex) const { int index = 0; for (int i = 0; i < channelGroupIndex; ++i) @@ -183,14 +183,14 @@ int AnimationClip::channelBaseIndex(int channelGroupIndex) const return index; } -void AnimationClip::clearData() +void AnimationClipLoader::clearData() { m_name.clear(); m_objectName.clear(); m_channelGroups.clear(); } -float AnimationClip::findDuration() +float AnimationClipLoader::findDuration() { // Iterate over the contained fcurves and find the longest one double tMax = 0.0; @@ -204,7 +204,7 @@ float AnimationClip::findDuration() return tMax; } -int AnimationClip::findChannelCount() +int AnimationClipLoader::findChannelCount() { int channelCount = 0; for (const ChannelGroup &channelGroup : qAsConst(m_channelGroups)) diff --git a/src/animation/backend/animationclip_p.h b/src/animation/backend/animationcliploader_p.h index cfd8558c7..28dcb5994 100644 --- a/src/animation/backend/animationclip_p.h +++ b/src/animation/backend/animationcliploader_p.h @@ -59,10 +59,10 @@ namespace Animation { class Handler; -class Q_AUTOTEST_EXPORT AnimationClip : public BackendNode +class Q_AUTOTEST_EXPORT AnimationClipLoader : public BackendNode { public: - AnimationClip(); + AnimationClipLoader(); void cleanup(); void setSource(const QUrl &source) { m_source = source; } @@ -96,7 +96,7 @@ private: }; #ifndef QT_NO_DEBUG_STREAM -inline QDebug operator<<(QDebug dbg, const AnimationClip &animationClip) +inline QDebug operator<<(QDebug dbg, const AnimationClipLoader &animationClip) { QDebugStateSaver saver(dbg); dbg << "QNodeId =" << animationClip.peerId() << endl diff --git a/src/animation/backend/animationutils.cpp b/src/animation/backend/animationutils.cpp index c81893013..db2d6eadb 100644 --- a/src/animation/backend/animationutils.cpp +++ b/src/animation/backend/animationutils.cpp @@ -51,7 +51,7 @@ QT_BEGIN_NAMESPACE namespace Qt3DAnimation { namespace Animation { -AnimationUtils::ClipPreEvaluationData AnimationUtils::evaluationDataForClip(AnimationClip *clip, +AnimationUtils::ClipPreEvaluationData AnimationUtils::evaluationDataForClip(AnimationClipLoader *clip, const AnimationUtils::AnimatorEvaluationData &animatorData) { // global time values expected in seconds @@ -165,7 +165,7 @@ QVector<int> AnimationUtils::channelsToIndicesHelper(const ChannelGroup &channel return indices; } -QVector<float> AnimationUtils::evaluateClipAtLocalTime(AnimationClip *clip, float localTime) +QVector<float> AnimationUtils::evaluateClipAtLocalTime(AnimationClipLoader *clip, float localTime) { QVector<float> channelResults; Q_ASSERT(clip); @@ -263,7 +263,7 @@ QVector<Qt3DCore::QSceneChangePtr> AnimationUtils::preparePropertyChanges(Qt3DCo return changes; } -QVector<AnimationUtils::MappingData> AnimationUtils::buildPropertyMappings(Handler *handler, const AnimationClip *clip, const ChannelMapper *mapper) +QVector<AnimationUtils::MappingData> AnimationUtils::buildPropertyMappings(Handler *handler, const AnimationClipLoader *clip, const ChannelMapper *mapper) { QVector<MappingData> mappingDataVec; ChannelMappingManager *mappingManager = handler->channelMappingManager(); diff --git a/src/animation/backend/animationutils_p.h b/src/animation/backend/animationutils_p.h index b662ec445..6f541998e 100644 --- a/src/animation/backend/animationutils_p.h +++ b/src/animation/backend/animationutils_p.h @@ -59,7 +59,7 @@ namespace Animation { struct ChannelGroup; class Handler; -class AnimationClip; +class AnimationClipLoader; class ChannelMapper; class Q_AUTOTEST_EXPORT AnimationUtils @@ -113,7 +113,7 @@ public: return data; } - static ClipPreEvaluationData evaluationDataForClip(AnimationClip *clip, const AnimatorEvaluationData &animatorData); + static ClipPreEvaluationData evaluationDataForClip(AnimationClipLoader *clip, const AnimatorEvaluationData &animatorData); static QVector<int> channelsToIndices(const ChannelGroup &channelGroup, int dataType, @@ -122,14 +122,14 @@ public: int dataType, int offset, const QStringList &suffixes); - static QVector<float> evaluateClipAtLocalTime(AnimationClip *clip, + static QVector<float> evaluateClipAtLocalTime(AnimationClipLoader *clip, float localTime); static QVector<Qt3DCore::QSceneChangePtr> preparePropertyChanges(Qt3DCore::QNodeId peerId, const QVector<MappingData> &mappingData, const QVector<float> &channelResults, bool finalFrame); static QVector<MappingData> buildPropertyMappings(Handler *handler, - const AnimationClip *clip, + const AnimationClipLoader *clip, const ChannelMapper *mapper); private: diff --git a/src/animation/backend/backend.pri b/src/animation/backend/backend.pri index 7eb8913c8..eab1f035b 100644 --- a/src/animation/backend/backend.pri +++ b/src/animation/backend/backend.pri @@ -2,7 +2,6 @@ INCLUDEPATH += $$PWD HEADERS += \ - $$PWD/animationclip_p.h \ $$PWD/handle_types_p.h \ $$PWD/handler_p.h \ $$PWD/nodefunctor_p.h \ @@ -25,10 +24,10 @@ HEADERS += \ $$PWD/animationutils_p.h \ $$PWD/buildblendtreesjob_p.h \ $$PWD/evaluateblendclipanimatorjob_p.h \ - $$PWD/additiveblend_p.h + $$PWD/additiveblend_p.h \ + $$PWD/animationcliploader_p.h SOURCES += \ - $$PWD/animationclip.cpp \ $$PWD/handler.cpp \ $$PWD/fcurve.cpp \ $$PWD/bezierevaluator.cpp \ @@ -48,4 +47,5 @@ SOURCES += \ $$PWD/animationutils.cpp \ $$PWD/buildblendtreesjob.cpp \ $$PWD/evaluateblendclipanimatorjob.cpp \ - $$PWD/additiveblend.cpp + $$PWD/additiveblend.cpp \ + $$PWD/animationcliploader.cpp diff --git a/src/animation/backend/buildblendtreesjob.cpp b/src/animation/backend/buildblendtreesjob.cpp index e86aa4978..f57bf5201 100644 --- a/src/animation/backend/buildblendtreesjob.cpp +++ b/src/animation/backend/buildblendtreesjob.cpp @@ -136,8 +136,8 @@ QVector<AnimationUtils::BlendingMappingData> buildBlendMappingDataForNode(const void buildEntryForBlendClipNode(Handler *handler, const ChannelMapper *mapper, BlendedClipAnimator::BlendNodeData &nodeData) { // Retrieve Animation clips - const AnimationClip *clip1 = handler->animationClipManager()->lookupResource(nodeData.left); - const AnimationClip *clip2 = handler->animationClipManager()->lookupResource(nodeData.right); + const AnimationClipLoader *clip1 = handler->animationClipLoaderManager()->lookupResource(nodeData.left); + const AnimationClipLoader *clip2 = handler->animationClipLoaderManager()->lookupResource(nodeData.right); Q_ASSERT(clip1 && clip2); diff --git a/src/animation/backend/clipanimator.cpp b/src/animation/backend/clipanimator.cpp index ff3cb1b12..72f818d88 100644 --- a/src/animation/backend/clipanimator.cpp +++ b/src/animation/backend/clipanimator.cpp @@ -37,7 +37,7 @@ #include "clipanimator_p.h" #include <Qt3DAnimation/qclipanimator.h> #include <Qt3DAnimation/private/qclipanimator_p.h> -#include <Qt3DAnimation/private/animationclip_p.h> +#include <Qt3DAnimation/private/animationcliploader_p.h> #include <Qt3DAnimation/private/managers_p.h> #include <Qt3DAnimation/private/animationlogging_p.h> #include <Qt3DCore/qpropertyupdatedchange.h> diff --git a/src/animation/backend/clipblendnode.cpp b/src/animation/backend/clipblendnode.cpp index a763f7f48..10220d9c9 100644 --- a/src/animation/backend/clipblendnode.cpp +++ b/src/animation/backend/clipblendnode.cpp @@ -36,7 +36,7 @@ #include "clipblendnode_p.h" #include <Qt3DAnimation/qclipblendnodecreatedchange.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qabstractanimationclip.h> #include <Qt3DCore/qpropertynoderemovedchange.h> #include <Qt3DCore/qpropertynodeaddedchange.h> @@ -80,7 +80,7 @@ void ClipBlendNode::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) Qt3DCore::QPropertyNodeAddedChangePtr change = qSharedPointerCast<Qt3DCore::QPropertyNodeAddedChange>(e); if (change->metaObject()->inherits(&QAbstractClipBlendNode::staticMetaObject)) addChildId(change->addedNodeId()); - else if (change->metaObject()->inherits(&QAnimationClip::staticMetaObject)) + else if (change->metaObject()->inherits(&QAbstractAnimationClip::staticMetaObject)) m_clipIds.push_back(change->addedNodeId()); break; } @@ -89,7 +89,7 @@ void ClipBlendNode::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) Qt3DCore::QPropertyNodeRemovedChangePtr change = qSharedPointerCast<Qt3DCore::QPropertyNodeRemovedChange>(e); if (change->metaObject()->inherits(&QAbstractClipBlendNode::staticMetaObject)) removeChildId(change->removedNodeId()); - else if (change->metaObject()->inherits(&QAnimationClip::staticMetaObject)) + else if (change->metaObject()->inherits(&QAbstractAnimationClip::staticMetaObject)) m_clipIds.removeOne(change->removedNodeId()); break; } diff --git a/src/animation/backend/evaluateblendclipanimatorjob.cpp b/src/animation/backend/evaluateblendclipanimatorjob.cpp index 440943ce4..51dcd6c14 100644 --- a/src/animation/backend/evaluateblendclipanimatorjob.cpp +++ b/src/animation/backend/evaluateblendclipanimatorjob.cpp @@ -113,8 +113,8 @@ QVector<AnimationUtils::MappingData> fromBlendingMappingData(const QVector<Anima void EvaluateBlendClipAnimatorJob::blendClips(ClipBlendNode *node, const BlendedClipAnimator::BlendNodeData &nodeData, const AnimationUtils::AnimatorEvaluationData &animatorEvaluationData) { - AnimationClip *clip1 = m_handler->animationClipManager()->lookupResource(nodeData.left); - AnimationClip *clip2 = m_handler->animationClipManager()->lookupResource(nodeData.right); + AnimationClipLoader *clip1 = m_handler->animationClipLoaderManager()->lookupResource(nodeData.left); + AnimationClipLoader *clip2 = m_handler->animationClipLoaderManager()->lookupResource(nodeData.right); Q_ASSERT(clip1 && clip2); // Prepare for evaluation (convert global time to local time ....) diff --git a/src/animation/backend/evaluateclipanimatorjob.cpp b/src/animation/backend/evaluateclipanimatorjob.cpp index f4f919d25..a2e481371 100644 --- a/src/animation/backend/evaluateclipanimatorjob.cpp +++ b/src/animation/backend/evaluateclipanimatorjob.cpp @@ -63,7 +63,7 @@ void EvaluateClipAnimatorJob::run() Q_ASSERT(clipAnimator); // Evaluate the fcurves - AnimationClip *clip = m_handler->animationClipManager()->lookupResource(clipAnimator->clipId()); + AnimationClipLoader *clip = m_handler->animationClipLoaderManager()->lookupResource(clipAnimator->clipId()); Q_ASSERT(clip); // Prepare for evaluation (convert global time to local time ....) const AnimationUtils::AnimatorEvaluationData animatorEvaluationData = AnimationUtils::animatorEvaluationDataForAnimator(clipAnimator, globalTime); diff --git a/src/animation/backend/findrunningclipanimatorsjob.cpp b/src/animation/backend/findrunningclipanimatorsjob.cpp index fcffab8cc..bdc12e2a2 100644 --- a/src/animation/backend/findrunningclipanimatorsjob.cpp +++ b/src/animation/backend/findrunningclipanimatorsjob.cpp @@ -73,7 +73,7 @@ void FindRunningClipAnimatorsJob::run() // TODO: Should be possible to parallelise this with the fcurve evaluation as // sending the property change events doesn't happen until after evaluation if (canRun) { - const AnimationClip *clip = m_handler->animationClipManager()->lookupResource(clipAnimator->clipId()); + const AnimationClipLoader *clip = m_handler->animationClipLoaderManager()->lookupResource(clipAnimator->clipId()); const ChannelMapper *mapper = m_handler->channelMapperManager()->lookupResource(clipAnimator->mapperId()); Q_ASSERT(clip && mapper); const QVector<AnimationUtils::MappingData> mappingData = AnimationUtils::buildPropertyMappings(m_handler, clip, mapper); diff --git a/src/animation/backend/handle_types_p.h b/src/animation/backend/handle_types_p.h index f6f77eb20..f5093783b 100644 --- a/src/animation/backend/handle_types_p.h +++ b/src/animation/backend/handle_types_p.h @@ -58,13 +58,13 @@ QT_BEGIN_NAMESPACE namespace Qt3DAnimation { namespace Animation { -class AnimationClip; +class AnimationClipLoader; class ClipAnimator; class BlendedClipAnimator; class ChannelMapping; class ChannelMapper; -typedef Qt3DCore::QHandle<AnimationClip, 16> HAnimationClip; +typedef Qt3DCore::QHandle<AnimationClipLoader, 16> HAnimationClip; typedef Qt3DCore::QHandle<ClipAnimator, 16> HClipAnimator; typedef Qt3DCore::QHandle<BlendedClipAnimator, 12> HBlendedClipAnimator; typedef Qt3DCore::QHandle<ChannelMapping, 16> HChannelMapping; diff --git a/src/animation/backend/handler.cpp b/src/animation/backend/handler.cpp index 87146aa63..04c46b40a 100644 --- a/src/animation/backend/handler.cpp +++ b/src/animation/backend/handler.cpp @@ -51,7 +51,7 @@ namespace Qt3DAnimation { namespace Animation { Handler::Handler() - : m_animationClipManager(new AnimationClipManager) + : m_animationClipLoaderManager(new AnimationClipLoaderManager) , m_clipAnimatorManager(new ClipAnimatorManager) , m_blendedClipAnimatorManager(new BlendedClipAnimatorManager) , m_channelMappingManager(new ChannelMappingManager) @@ -75,7 +75,7 @@ void Handler::setDirty(DirtyFlag flag, Qt3DCore::QNodeId nodeId) { switch (flag) { case AnimationClipDirty: { - const auto handle = m_animationClipManager->lookupHandle(nodeId); + const auto handle = m_animationClipLoaderManager->lookupHandle(nodeId); m_dirtyAnimationClips.push_back(handle); break; } diff --git a/src/animation/backend/handler_p.h b/src/animation/backend/handler_p.h index 91640c477..dcabf6088 100644 --- a/src/animation/backend/handler_p.h +++ b/src/animation/backend/handler_p.h @@ -63,8 +63,8 @@ class tst_Handler; namespace Qt3DAnimation { namespace Animation { -class AnimationClip; -class AnimationClipManager; +class AnimationClipLoader; +class AnimationClipLoaderManager; class ClipAnimator; class ClipAnimatorManager; class BlendedClipAnimator; @@ -107,7 +107,7 @@ public: void setBlendedClipAnimatorRunning(const HBlendedClipAnimator &handle, bool running); QVector<HBlendedClipAnimator> runningBlenndedClipAnimators() const { return m_runningBlendedClipAnimators; } - AnimationClipManager *animationClipManager() const Q_DECL_NOTHROW { return m_animationClipManager.data(); } + AnimationClipLoaderManager *animationClipLoaderManager() const Q_DECL_NOTHROW { return m_animationClipLoaderManager.data(); } ClipAnimatorManager *clipAnimatorManager() const Q_DECL_NOTHROW { return m_clipAnimatorManager.data(); } BlendedClipAnimatorManager *blendedClipAnimatorManager() const Q_DECL_NOTHROW { return m_blendedClipAnimatorManager.data(); } ChannelMappingManager *channelMappingManager() const Q_DECL_NOTHROW { return m_channelMappingManager.data(); } @@ -117,7 +117,7 @@ public: QVector<Qt3DCore::QAspectJobPtr> jobsToExecute(qint64 time); private: - QScopedPointer<AnimationClipManager> m_animationClipManager; + QScopedPointer<AnimationClipLoaderManager> m_animationClipLoaderManager; QScopedPointer<ClipAnimatorManager> m_clipAnimatorManager; QScopedPointer<BlendedClipAnimatorManager> m_blendedClipAnimatorManager; QScopedPointer<ChannelMappingManager> m_channelMappingManager; diff --git a/src/animation/backend/loadanimationclipjob.cpp b/src/animation/backend/loadanimationclipjob.cpp index 39809f9eb..152b60a58 100644 --- a/src/animation/backend/loadanimationclipjob.cpp +++ b/src/animation/backend/loadanimationclipjob.cpp @@ -36,7 +36,7 @@ #include "loadanimationclipjob_p.h" -#include <Qt3DAnimation/private/animationclip_p.h> +#include <Qt3DAnimation/private/animationcliploader_p.h> #include <Qt3DAnimation/private/handler_p.h> #include <Qt3DAnimation/private/managers_p.h> #include <Qt3DAnimation/private/job_common_p.h> @@ -69,9 +69,9 @@ void LoadAnimationClipJob::clearDirtyAnimationClips() void LoadAnimationClipJob::run() { Q_ASSERT(m_handler); - AnimationClipManager *animationClipManager = m_handler->animationClipManager(); + AnimationClipLoaderManager *animationClipManager = m_handler->animationClipLoaderManager(); for (const auto animationClipHandle : qAsConst(m_animationClipHandles)) { - AnimationClip *animationClip = animationClipManager->data(animationClipHandle); + AnimationClipLoader *animationClip = animationClipManager->data(animationClipHandle); animationClip->loadAnimation(); } diff --git a/src/animation/backend/managers_p.h b/src/animation/backend/managers_p.h index 3b811121a..1680dc7bf 100644 --- a/src/animation/backend/managers_p.h +++ b/src/animation/backend/managers_p.h @@ -53,7 +53,7 @@ #include <QtGlobal> #include <Qt3DAnimation/private/handle_types_p.h> -#include <Qt3DAnimation/private/animationclip_p.h> +#include <Qt3DAnimation/private/animationcliploader_p.h> #include <Qt3DAnimation/private/blendedclipanimator_p.h> #include <Qt3DAnimation/private/clipanimator_p.h> #include <Qt3DAnimation/private/channelmapping_p.h> @@ -67,14 +67,14 @@ namespace Animation { class ClipBlendNode; -class AnimationClipManager : public Qt3DCore::QResourceManager< - AnimationClip, +class AnimationClipLoaderManager : public Qt3DCore::QResourceManager< + AnimationClipLoader, Qt3DCore::QNodeId, 16, Qt3DCore::ArrayAllocatingPolicy> { public: - AnimationClipManager() {} + AnimationClipLoaderManager() {} }; class ClipAnimatorManager : public Qt3DCore::QResourceManager< @@ -135,7 +135,7 @@ private: } // namespace Animation } // namespace Qt3DAnimation -Q_DECLARE_RESOURCE_INFO(Qt3DAnimation::Animation::AnimationClip, Q_REQUIRES_CLEANUP) +Q_DECLARE_RESOURCE_INFO(Qt3DAnimation::Animation::AnimationClipLoader, Q_REQUIRES_CLEANUP) Q_DECLARE_RESOURCE_INFO(Qt3DAnimation::Animation::ClipAnimator, Q_REQUIRES_CLEANUP) Q_DECLARE_RESOURCE_INFO(Qt3DAnimation::Animation::BlendedClipAnimator, Q_REQUIRES_CLEANUP) Q_DECLARE_RESOURCE_INFO(Qt3DAnimation::Animation::ChannelMapping, Q_REQUIRES_CLEANUP) diff --git a/src/animation/frontend/frontend.pri b/src/animation/frontend/frontend.pri index d6895510a..d31193a04 100644 --- a/src/animation/frontend/frontend.pri +++ b/src/animation/frontend/frontend.pri @@ -1,10 +1,10 @@ HEADERS += \ $$PWD/qanimationaspect.h \ $$PWD/qanimationaspect_p.h \ - $$PWD/qanimationclip.h \ - $$PWD/qanimationclip_p.h \ $$PWD/qabstractclipanimator.h \ $$PWD/qabstractclipanimator_p.h \ + $$PWD/qabstractanimationclip.h \ + $$PWD/qabstractanimationclip_p.h \ $$PWD/qabstractclipblendnode.h \ $$PWD/qabstractclipblendnode_p.h \ $$PWD/qclipanimator.h \ @@ -34,12 +34,14 @@ HEADERS += \ $$PWD/qmorphtarget.h \ $$PWD/qmorphtarget_p.h \ $$PWD/qvertexblendanimation.h \ - $$PWD/qvertexblendanimation_p.h + $$PWD/qvertexblendanimation_p.h \ + $$PWD/qanimationcliploader.h \ + $$PWD/qanimationcliploader_p.h SOURCES += \ $$PWD/qanimationaspect.cpp \ - $$PWD/qanimationclip.cpp \ $$PWD/qabstractclipanimator.cpp \ + $$PWD/qabstractanimationclip.cpp \ $$PWD/qabstractclipblendnode.cpp \ $$PWD/qclipanimator.cpp \ $$PWD/qblendedclipanimator.cpp \ @@ -54,6 +56,7 @@ SOURCES += \ $$PWD/qmorphinganimation.cpp \ $$PWD/qabstractanimation.cpp \ $$PWD/qmorphtarget.cpp \ - $$PWD/qvertexblendanimation.cpp + $$PWD/qvertexblendanimation.cpp \ + $$PWD/qanimationcliploader.cpp INCLUDEPATH += $$PWD diff --git a/src/animation/frontend/qanimationclip.cpp b/src/animation/frontend/qabstractanimationclip.cpp index 56fe3978c..5fdf7ae68 100644 --- a/src/animation/frontend/qanimationclip.cpp +++ b/src/animation/frontend/qabstractanimationclip.cpp @@ -34,71 +34,51 @@ ** ****************************************************************************/ -#include "qanimationclip.h" -#include "qanimationclip_p.h" +#include "qabstractanimationclip.h" +#include "qabstractanimationclip_p.h" #include <Qt3DCore/qpropertyupdatedchange.h> QT_BEGIN_NAMESPACE namespace Qt3DAnimation { -QAnimationClipPrivate::QAnimationClipPrivate() +QAbstractAnimationClipPrivate::QAbstractAnimationClipPrivate() : Qt3DCore::QNodePrivate() , m_duration(0.0f) { } -void QAnimationClipPrivate::setDuration(float duration) +void QAbstractAnimationClipPrivate::setDuration(float duration) { if (qFuzzyCompare(duration, m_duration)) return; - Q_Q(QAnimationClip); + Q_Q(QAbstractAnimationClip); bool wasBlocked = q->blockNotifications(true); m_duration = duration; emit q->durationChanged(duration); q->blockNotifications(wasBlocked); } -QAnimationClip::QAnimationClip(Qt3DCore::QNode *parent) - : Qt3DCore::QNode(*new QAnimationClipPrivate, parent) -{ -} - -QAnimationClip::QAnimationClip(QAnimationClipPrivate &dd, Qt3DCore::QNode *parent) +QAbstractAnimationClip::QAbstractAnimationClip(QAbstractAnimationClipPrivate &dd, + Qt3DCore::QNode *parent) : Qt3DCore::QNode(dd, parent) { } -QAnimationClip::~QAnimationClip() +QAbstractAnimationClip::~QAbstractAnimationClip() { } -QUrl QAnimationClip::source() const +float QAbstractAnimationClip::duration() const { - Q_D(const QAnimationClip); - return d->m_source; -} - -float QAnimationClip::duration() const -{ - Q_D(const QAnimationClip); + Q_D(const QAbstractAnimationClip); return d->m_duration; } -void QAnimationClip::setSource(QUrl source) -{ - Q_D(QAnimationClip); - if (d->m_source == source) - return; - - d->m_source = source; - emit sourceChanged(source); -} - -void QAnimationClip::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) +void QAbstractAnimationClip::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) { - Q_D(QAnimationClip); + Q_D(QAbstractAnimationClip); if (change->type() == Qt3DCore::PropertyUpdated) { Qt3DCore::QPropertyUpdatedChangePtr e = qSharedPointerCast<Qt3DCore::QPropertyUpdatedChange>(change); if (e->propertyName() == QByteArrayLiteral("duration")) @@ -106,15 +86,6 @@ void QAnimationClip::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) } } -Qt3DCore::QNodeCreatedChangeBasePtr QAnimationClip::createNodeCreationChange() const -{ - auto creationChange = Qt3DCore::QNodeCreatedChangePtr<QAnimationClipData>::create(this); - auto &data = creationChange->data; - Q_D(const QAnimationClip); - data.source = d->m_source; - return creationChange; -} - } // namespace Qt3DAnimation QT_END_NAMESPACE diff --git a/src/animation/frontend/qabstractanimationclip.h b/src/animation/frontend/qabstractanimationclip.h new file mode 100644 index 000000000..377725fa1 --- /dev/null +++ b/src/animation/frontend/qabstractanimationclip.h @@ -0,0 +1,75 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QABSTRACTANIMATIONCLIP_H +#define QT3DANIMATION_QABSTRACTANIMATIONCLIP_H + +#include <Qt3DAnimation/qt3danimation_global.h> +#include <Qt3DCore/qnode.h> +#include <QtCore/qurl.h> + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractAnimationClipPrivate; + +class QT3DANIMATIONSHARED_EXPORT QAbstractAnimationClip : public Qt3DCore::QNode +{ + Q_OBJECT + Q_PROPERTY(float duration READ duration NOTIFY durationChanged) + +public: + ~QAbstractAnimationClip(); + + float duration() const; + +Q_SIGNALS: + void durationChanged(float duration); + +protected: + QAbstractAnimationClip(QAbstractAnimationClipPrivate &dd, Qt3DCore::QNode *parent = nullptr); + void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) Q_DECL_OVERRIDE; + +private: + Q_DECLARE_PRIVATE(QAbstractAnimationClip) +}; + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QABSTRACTANIMATIONCLIP_H diff --git a/src/animation/frontend/qabstractanimationclip_p.h b/src/animation/frontend/qabstractanimationclip_p.h new file mode 100644 index 000000000..8b74bee94 --- /dev/null +++ b/src/animation/frontend/qabstractanimationclip_p.h @@ -0,0 +1,76 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#ifndef QT3DANIMATION_QABSTRACTANIMATIONCLIP_P_H +#define QT3DANIMATION_QABSTRACTANIMATIONCLIP_P_H + +// +// W A R N I N G +// ------------- +// +// This file is not part of the Qt API. It exists for the convenience +// of other Qt classes. This header file may change from version to +// version without notice, or even be removed. +// +// We mean it. +// + +#include <Qt3DCore/private/qnode_p.h> +#include "qabstractanimationclip.h" + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +class QAbstractAnimationClipPrivate : public Qt3DCore::QNodePrivate +{ +public: + QAbstractAnimationClipPrivate(); + + Q_DECLARE_PUBLIC(QAbstractAnimationClip) + + void setDuration(float duration); + + // Set from the backend + float m_duration; +}; + +} // namespace Qt3DAnimation + + +QT_END_NAMESPACE + +#endif // QT3DANIMATION_QABSTRACTANIMATIONCLIP_P_H diff --git a/src/animation/frontend/qabstractclipanimator.cpp b/src/animation/frontend/qabstractclipanimator.cpp index 05f80c8ba..439737601 100644 --- a/src/animation/frontend/qabstractclipanimator.cpp +++ b/src/animation/frontend/qabstractclipanimator.cpp @@ -39,7 +39,6 @@ #include "qabstractclipanimator.h" #include "qabstractclipanimator_p.h" -#include <Qt3DAnimation/qanimationclip.h> #include <Qt3DAnimation/qchannelmapper.h> QT_BEGIN_NAMESPACE diff --git a/src/animation/frontend/qabstractclipanimator_p.h b/src/animation/frontend/qabstractclipanimator_p.h index 89263af7e..58553c8c1 100644 --- a/src/animation/frontend/qabstractclipanimator_p.h +++ b/src/animation/frontend/qabstractclipanimator_p.h @@ -52,7 +52,6 @@ // #include <Qt3DCore/private/qcomponent_p.h> -#include <Qt3DAnimation/qanimationclip.h> QT_BEGIN_NAMESPACE diff --git a/src/animation/frontend/qabstractclipblendnode.cpp b/src/animation/frontend/qabstractclipblendnode.cpp index 4154b4223..10e3b9ef5 100644 --- a/src/animation/frontend/qabstractclipblendnode.cpp +++ b/src/animation/frontend/qabstractclipblendnode.cpp @@ -38,7 +38,7 @@ #include "qabstractclipblendnode_p.h" #include <Qt3DCore/qpropertynodeaddedchange.h> #include <Qt3DCore/qpropertynoderemovedchange.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qabstractanimationclip.h> QT_BEGIN_NAMESPACE @@ -63,7 +63,7 @@ QAbstractClipBlendNode::~QAbstractClipBlendNode() { } -void QAbstractClipBlendNode::addClip(QAnimationClip *clip) +void QAbstractClipBlendNode::addClip(QAbstractAnimationClip *clip) { Q_D(QAbstractClipBlendNode); if (!d->m_clips.contains(clip)) { @@ -87,7 +87,7 @@ void QAbstractClipBlendNode::addClip(QAnimationClip *clip) } } -void QAbstractClipBlendNode::removeClip(QAnimationClip *clip) +void QAbstractClipBlendNode::removeClip(QAbstractAnimationClip *clip) { Q_D(QAbstractClipBlendNode); if (d->m_changeArbiter != nullptr) { @@ -100,7 +100,7 @@ void QAbstractClipBlendNode::removeClip(QAnimationClip *clip) d->unregisterDestructionHelper(clip); } -QVector<QAnimationClip *> QAbstractClipBlendNode::clips() const +QVector<QAbstractAnimationClip *> QAbstractClipBlendNode::clips() const { Q_D(const QAbstractClipBlendNode); return d->m_clips; diff --git a/src/animation/frontend/qabstractclipblendnode.h b/src/animation/frontend/qabstractclipblendnode.h index 35714026c..d51190351 100644 --- a/src/animation/frontend/qabstractclipblendnode.h +++ b/src/animation/frontend/qabstractclipblendnode.h @@ -44,7 +44,7 @@ QT_BEGIN_NAMESPACE namespace Qt3DAnimation { -class QAnimationClip; +class QAbstractAnimationClip; class QAbstractClipBlendNodePrivate; class QT3DANIMATIONSHARED_EXPORT QAbstractClipBlendNode : public Qt3DCore::QNode @@ -53,10 +53,10 @@ class QT3DANIMATIONSHARED_EXPORT QAbstractClipBlendNode : public Qt3DCore::QNode public: ~QAbstractClipBlendNode(); - QVector<QAnimationClip *> clips() const; + QVector<QAbstractAnimationClip *> clips() const; QAbstractClipBlendNode *parentClipBlendNode() const; - void addClip(QAnimationClip *clip); - void removeClip(QAnimationClip *clip); + void addClip(QAbstractAnimationClip *clip); + void removeClip(QAbstractAnimationClip *clip); protected: explicit QAbstractClipBlendNode(Qt3DCore::QNode *parent = nullptr); diff --git a/src/animation/frontend/qabstractclipblendnode_p.h b/src/animation/frontend/qabstractclipblendnode_p.h index 42e10f18c..3066682a5 100644 --- a/src/animation/frontend/qabstractclipblendnode_p.h +++ b/src/animation/frontend/qabstractclipblendnode_p.h @@ -54,7 +54,7 @@ QT_BEGIN_NAMESPACE namespace Qt3DAnimation { -class QAnimationClip; +class QAbstractAnimationClip; class QAbstractClipBlendNode; class QAbstractClipBlendNodePrivate : public Qt3DCore::QNodePrivate @@ -63,7 +63,7 @@ public: QAbstractClipBlendNodePrivate(); Q_DECLARE_PUBLIC(QAbstractClipBlendNode) - QVector<QAnimationClip *> m_clips; + QVector<QAbstractAnimationClip *> m_clips; }; } // namespace Qt3DAnimation diff --git a/src/animation/frontend/qadditiveblend.cpp b/src/animation/frontend/qadditiveblend.cpp index 7b181848a..977f36919 100644 --- a/src/animation/frontend/qadditiveblend.cpp +++ b/src/animation/frontend/qadditiveblend.cpp @@ -36,7 +36,6 @@ #include "qadditiveblend.h" #include "qadditiveblend_p.h" -#include <Qt3DAnimation/qanimationclip.h> #include <Qt3DAnimation/qclipblendnodecreatedchange.h> QT_BEGIN_NAMESPACE diff --git a/src/animation/frontend/qanimationaspect.cpp b/src/animation/frontend/qanimationaspect.cpp index a47a18552..1f0c43e09 100644 --- a/src/animation/frontend/qanimationaspect.cpp +++ b/src/animation/frontend/qanimationaspect.cpp @@ -39,7 +39,7 @@ #include "qanimationaspect.h" #include "qanimationaspect_p.h" -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qanimationcliploader.h> #include <Qt3DAnimation/qblendedclipanimator.h> #include <Qt3DAnimation/qclipanimator.h> #include <Qt3DAnimation/qchannelmapping.h> @@ -88,12 +88,12 @@ QAnimationAspect::QAnimationAspect(QAnimationAspectPrivate &dd, QObject *parent) { setObjectName(QStringLiteral("Animation Aspect")); Q_D(QAnimationAspect); - qRegisterMetaType<Qt3DAnimation::QAnimationClip*>(); + qRegisterMetaType<Qt3DAnimation::QAnimationClipLoader*>(); qRegisterMetaType<Qt3DAnimation::QChannelMapper*>(); - registerBackendType<QAnimationClip>( - QSharedPointer<Animation::NodeFunctor<Animation::AnimationClip, Animation::AnimationClipManager>>::create(d->m_handler.data(), - d->m_handler->animationClipManager())); + registerBackendType<QAnimationClipLoader>( + QSharedPointer<Animation::NodeFunctor<Animation::AnimationClipLoader, Animation::AnimationClipLoaderManager>>::create(d->m_handler.data(), + d->m_handler->animationClipLoaderManager())); registerBackendType<QClipAnimator>( QSharedPointer<Animation::NodeFunctor<Animation::ClipAnimator, Animation::ClipAnimatorManager>>::create(d->m_handler.data(), d->m_handler->clipAnimatorManager())); diff --git a/src/animation/frontend/qanimationcliploader.cpp b/src/animation/frontend/qanimationcliploader.cpp new file mode 100644 index 000000000..3ee527f2d --- /dev/null +++ b/src/animation/frontend/qanimationcliploader.cpp @@ -0,0 +1,92 @@ +/**************************************************************************** +** +** Copyright (C) 2017 Klaralvdalens Datakonsult AB (KDAB). +** Contact: http://www.qt-project.org/legal +** +** This file is part of the Qt3D module of the Qt Toolkit. +** +** $QT_BEGIN_LICENSE:LGPL3$ +** Commercial License Usage +** Licensees holding valid commercial Qt licenses may use this file in +** accordance with the commercial license agreement provided with the +** Software or, alternatively, in accordance with the terms contained in +** a written agreement between you and The Qt Company. For licensing terms +** and conditions see http://www.qt.io/terms-conditions. For further +** information use the contact form at http://www.qt.io/contact-us. +** +** GNU Lesser General Public License Usage +** Alternatively, this file may be used under the terms of the GNU Lesser +** General Public License version 3 as published by the Free Software +** Foundation and appearing in the file LICENSE.LGPLv3 included in the +** packaging of this file. Please review the following information to +** ensure the GNU Lesser General Public License version 3 requirements +** will be met: https://www.gnu.org/licenses/lgpl.html. +** +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 2.0 or later as published by the Free +** Software Foundation and appearing in the file LICENSE.GPL included in +** the packaging of this file. Please review the following information to +** ensure the GNU General Public License version 2.0 requirements will be +** met: http://www.gnu.org/licenses/gpl-2.0.html. +** +** $QT_END_LICENSE$ +** +****************************************************************************/ + +#include "qanimationcliploader.h" +#include "qanimationcliploader_p.h" +#include <Qt3DCore/qpropertyupdatedchange.h> + +QT_BEGIN_NAMESPACE + +namespace Qt3DAnimation { + +QAnimationClipLoaderPrivate::QAnimationClipLoaderPrivate() + : QAbstractAnimationClipPrivate() + , m_source() +{ +} + +QAnimationClipLoader::QAnimationClipLoader(Qt3DCore::QNode *parent) + : QAbstractAnimationClip(*new QAnimationClipLoaderPrivate, parent) +{ +} + +QAnimationClipLoader::QAnimationClipLoader(QAnimationClipLoaderPrivate &dd, Qt3DCore::QNode *parent) + : QAbstractAnimationClip(dd, parent) +{ +} + +QAnimationClipLoader::~QAnimationClipLoader() +{ +} + +QUrl QAnimationClipLoader::source() const +{ + Q_D(const QAnimationClipLoader); + return d->m_source; +} + +void QAnimationClipLoader::setSource(QUrl source) +{ + Q_D(QAnimationClipLoader); + if (d->m_source == source) + return; + + d->m_source = source; + emit sourceChanged(source); +} + +Qt3DCore::QNodeCreatedChangeBasePtr QAnimationClipLoader::createNodeCreationChange() const +{ + auto creationChange = Qt3DCore::QNodeCreatedChangePtr<QAnimationClipLoaderData>::create(this); + auto &data = creationChange->data; + Q_D(const QAnimationClipLoader); + data.source = d->m_source; + return creationChange; +} + +} // namespace Qt3DAnimation + +QT_END_NAMESPACE diff --git a/src/animation/frontend/qanimationclip.h b/src/animation/frontend/qanimationcliploader.h index 55b1910fa..f580e83d8 100644 --- a/src/animation/frontend/qanimationclip.h +++ b/src/animation/frontend/qanimationcliploader.h @@ -38,41 +38,37 @@ #define QT3DANIMATION_QANIMATIONCLIP_H #include <Qt3DAnimation/qt3danimation_global.h> -#include <Qt3DCore/qnode.h> +#include <Qt3DAnimation/qabstractanimationclip.h> #include <QtCore/qurl.h> QT_BEGIN_NAMESPACE namespace Qt3DAnimation { -class QAnimationClipPrivate; +class QAnimationClipLoaderPrivate; -class QT3DANIMATIONSHARED_EXPORT QAnimationClip : public Qt3DCore::QNode +class QT3DANIMATIONSHARED_EXPORT QAnimationClipLoader : public QAbstractAnimationClip { Q_OBJECT Q_PROPERTY(QUrl source READ source WRITE setSource NOTIFY sourceChanged) - Q_PROPERTY(float duration READ duration NOTIFY durationChanged) public: - explicit QAnimationClip(Qt3DCore::QNode *parent = nullptr); - ~QAnimationClip(); + explicit QAnimationClipLoader(Qt3DCore::QNode *parent = nullptr); + ~QAnimationClipLoader(); QUrl source() const; - float duration() const; public Q_SLOTS: void setSource(QUrl source); Q_SIGNALS: void sourceChanged(QUrl source); - void durationChanged(float duration); protected: - QAnimationClip(QAnimationClipPrivate &dd, Qt3DCore::QNode *parent = nullptr); - void sceneChangeEvent(const Qt3DCore::QSceneChangePtr &change) Q_DECL_OVERRIDE; + QAnimationClipLoader(QAnimationClipLoaderPrivate &dd, Qt3DCore::QNode *parent = nullptr); private: - Q_DECLARE_PRIVATE(QAnimationClip) + Q_DECLARE_PRIVATE(QAnimationClipLoader) Qt3DCore::QNodeCreatedChangeBasePtr createNodeCreationChange() const Q_DECL_OVERRIDE; }; diff --git a/src/animation/frontend/qanimationclip_p.h b/src/animation/frontend/qanimationcliploader_p.h index 5e3df0e6e..9d1c89e52 100644 --- a/src/animation/frontend/qanimationclip_p.h +++ b/src/animation/frontend/qanimationcliploader_p.h @@ -48,32 +48,26 @@ // We mean it. // -#include <Qt3DCore/private/qnode_p.h> -#include "qanimationclip.h" +#include <Qt3DAnimation/private/qabstractanimationclip_p.h> +#include "qanimationcliploader.h" QT_BEGIN_NAMESPACE namespace Qt3DAnimation { -class QAnimationClipPrivate : public Qt3DCore::QNodePrivate +class QAnimationClipLoaderPrivate : public QAbstractAnimationClipPrivate { public: - QAnimationClipPrivate(); + QAnimationClipLoaderPrivate(); - Q_DECLARE_PUBLIC(QAnimationClip) - - void setDuration(float duration); + Q_DECLARE_PUBLIC(QAnimationClipLoader) QUrl m_source; - - // Set from the backend - float m_duration; }; -struct QAnimationClipData +struct QAnimationClipLoaderData { QUrl source; - bool running; }; } // namespace Qt3DAnimation diff --git a/src/animation/frontend/qclipanimator.cpp b/src/animation/frontend/qclipanimator.cpp index 683d2a8dd..4dcc4b578 100644 --- a/src/animation/frontend/qclipanimator.cpp +++ b/src/animation/frontend/qclipanimator.cpp @@ -39,7 +39,7 @@ #include "qclipanimator.h" #include "qclipanimator_p.h" -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qabstractanimationclip.h> #include <Qt3DAnimation/qchannelmapper.h> QT_BEGIN_NAMESPACE @@ -66,13 +66,13 @@ QClipAnimator::~QClipAnimator() { } -QAnimationClip *QClipAnimator::clip() const +QAbstractAnimationClip *QClipAnimator::clip() const { Q_D(const QClipAnimator); return d->m_clip; } -void QClipAnimator::setClip(QAnimationClip *clip) +void QClipAnimator::setClip(QAbstractAnimationClip *clip) { Q_D(QClipAnimator); if (d->m_clip == clip) diff --git a/src/animation/frontend/qclipanimator.h b/src/animation/frontend/qclipanimator.h index 78fe9b6b5..311ac4ab0 100644 --- a/src/animation/frontend/qclipanimator.h +++ b/src/animation/frontend/qclipanimator.h @@ -47,25 +47,26 @@ QT_BEGIN_NAMESPACE namespace Qt3DAnimation { -class QAnimationClip; +class QAbstractAnimationClip; +class QChannelMapper; class QClipAnimatorPrivate; class QT3DANIMATIONSHARED_EXPORT QClipAnimator : public Qt3DAnimation::QAbstractClipAnimator { Q_OBJECT - Q_PROPERTY(Qt3DAnimation::QAnimationClip *clip READ clip WRITE setClip NOTIFY clipChanged) + Q_PROPERTY(Qt3DAnimation::QAbstractAnimationClip *clip READ clip WRITE setClip NOTIFY clipChanged) public: explicit QClipAnimator(Qt3DCore::QNode *parent = nullptr); ~QClipAnimator(); - Qt3DAnimation::QAnimationClip *clip() const; + Qt3DAnimation::QAbstractAnimationClip *clip() const; public Q_SLOTS: - void setClip(Qt3DAnimation::QAnimationClip *clip); + void setClip(Qt3DAnimation::QAbstractAnimationClip *clip); Q_SIGNALS: - void clipChanged(Qt3DAnimation::QAnimationClip *clip); + void clipChanged(Qt3DAnimation::QAbstractAnimationClip *clip); protected: QClipAnimator(QClipAnimatorPrivate &dd, Qt3DCore::QNode *parent = nullptr); diff --git a/src/animation/frontend/qclipanimator_p.h b/src/animation/frontend/qclipanimator_p.h index 7057ee065..fe40ed442 100644 --- a/src/animation/frontend/qclipanimator_p.h +++ b/src/animation/frontend/qclipanimator_p.h @@ -52,12 +52,13 @@ // #include <Qt3DAnimation/private/qabstractclipanimator_p.h> -#include <Qt3DAnimation/qanimationclip.h> QT_BEGIN_NAMESPACE namespace Qt3DAnimation { +class QAbstractAnimationClip; + class QClipAnimatorPrivate : public Qt3DAnimation::QAbstractClipAnimatorPrivate { public: @@ -65,7 +66,7 @@ public: Q_DECLARE_PUBLIC(QClipAnimator) - QAnimationClip *m_clip; + QAbstractAnimationClip *m_clip; }; struct QClipAnimatorData : public QAbstractClipAnimatorData diff --git a/src/animation/frontend/qclipblendnodecreatedchange.cpp b/src/animation/frontend/qclipblendnodecreatedchange.cpp index 9e9104066..72266ade4 100644 --- a/src/animation/frontend/qclipblendnodecreatedchange.cpp +++ b/src/animation/frontend/qclipblendnodecreatedchange.cpp @@ -37,7 +37,7 @@ #include "qclipblendnodecreatedchange.h" #include "qclipblendnodecreatedchange_p.h" #include <Qt3DAnimation/qabstractclipblendnode.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qabstractanimationclip.h> QT_BEGIN_NAMESPACE diff --git a/src/animation/frontend/qlerpblend.cpp b/src/animation/frontend/qlerpblend.cpp index 661c70ef0..a25272793 100644 --- a/src/animation/frontend/qlerpblend.cpp +++ b/src/animation/frontend/qlerpblend.cpp @@ -36,7 +36,6 @@ #include "qlerpblend.h" #include "qlerpblend_p.h" -#include <Qt3DAnimation/qanimationclip.h> #include <Qt3DAnimation/qclipblendnodecreatedchange.h> QT_BEGIN_NAMESPACE diff --git a/src/quick3d/imports/animation/qt3dquick3danimationplugin.cpp b/src/quick3d/imports/animation/qt3dquick3danimationplugin.cpp index d47e3c1bc..53cc0f5ce 100644 --- a/src/quick3d/imports/animation/qt3dquick3danimationplugin.cpp +++ b/src/quick3d/imports/animation/qt3dquick3danimationplugin.cpp @@ -39,7 +39,8 @@ #include "qt3dquick3danimationplugin.h" #include <Qt3DAnimation/qabstractclipanimator.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qabstractanimationclip.h> +#include <Qt3DAnimation/qanimationcliploader.h> #include <Qt3DAnimation/qblendedclipanimator.h> #include <Qt3DAnimation/qclipanimator.h> #include <Qt3DAnimation/qchannelmapping.h> @@ -69,12 +70,13 @@ void Qt3DQuick3DAnimationPlugin::registerTypes(const char *uri) Qt3DAnimation::Quick::Quick3DAnimation_initialize(); // @uri Qt3D.Animation - qmlRegisterType<Qt3DAnimation::QAnimationClip>(uri, 2, 9, "AnimationClip"); qmlRegisterUncreatableType<Qt3DAnimation::QAbstractClipAnimator>(uri, 2, 9, "AbstractClipAnimator", QStringLiteral("QAbstractClipAnimator is abstract")); qmlRegisterType<Qt3DAnimation::QClipAnimator>(uri, 2, 9, "ClipAnimator"); qmlRegisterType<Qt3DAnimation::QBlendedClipAnimator>(uri, 2, 9, "BlendedClipAnimator"); qmlRegisterType<Qt3DAnimation::QChannelMapping>(uri, 2, 9, "ChannelMapping"); qmlRegisterType<Qt3DAnimation::QChannelMapping>(uri, 2, 9, "ChannelMapping"); + qmlRegisterUncreatableType<Qt3DAnimation::QAbstractAnimationClip>(uri, 2, 9, "AbstractAnimationClip", QStringLiteral("QAbstractAnimationClip is abstract")); + qmlRegisterType<Qt3DAnimation::QAnimationClipLoader>(uri, 2, 9, "AnimationClip"); qmlRegisterExtendedType<Qt3DAnimation::QChannelMapper, Qt3DAnimation::Animation::Quick::Quick3DChannelMapper>(uri, 2, 9, "ChannelMapper"); qmlRegisterExtendedUncreatableType<Qt3DAnimation::QAbstractClipBlendNode, diff --git a/src/quick3d/quick3danimation/items/quick3dabstractclipblendnode.cpp b/src/quick3d/quick3danimation/items/quick3dabstractclipblendnode.cpp index 7a709c2d6..7094d2bcf 100644 --- a/src/quick3d/quick3danimation/items/quick3dabstractclipblendnode.cpp +++ b/src/quick3d/quick3danimation/items/quick3dabstractclipblendnode.cpp @@ -50,38 +50,38 @@ Quick3DAbstractClipBlendNode::Quick3DAbstractClipBlendNode(QObject *parent) { } -QQmlListProperty<QAnimationClip> Quick3DAbstractClipBlendNode::clipList() +QQmlListProperty<QAbstractAnimationClip> Quick3DAbstractClipBlendNode::clipList() { - return QQmlListProperty<QAnimationClip>(this, 0, - &Quick3DAbstractClipBlendNode::appendClip, - &Quick3DAbstractClipBlendNode::clipCount, - &Quick3DAbstractClipBlendNode::clipAt, - &Quick3DAbstractClipBlendNode::clearClips); + return QQmlListProperty<QAbstractAnimationClip>(this, 0, + &Quick3DAbstractClipBlendNode::appendClip, + &Quick3DAbstractClipBlendNode::clipCount, + &Quick3DAbstractClipBlendNode::clipAt, + &Quick3DAbstractClipBlendNode::clearClips); } -void Quick3DAbstractClipBlendNode::appendClip(QQmlListProperty<QAnimationClip> *list, QAnimationClip *clip) +void Quick3DAbstractClipBlendNode::appendClip(QQmlListProperty<QAbstractAnimationClip> *list, QAbstractAnimationClip *clip) { Quick3DAbstractClipBlendNode *extension = qobject_cast<Quick3DAbstractClipBlendNode *>(list->object); extension->parentAbstractClipBlendNode()->addClip(clip); } -QAnimationClip *Quick3DAbstractClipBlendNode::clipAt(QQmlListProperty<QAnimationClip> *list, int index) +QAbstractAnimationClip *Quick3DAbstractClipBlendNode::clipAt(QQmlListProperty<QAbstractAnimationClip> *list, int index) { Quick3DAbstractClipBlendNode *extension = qobject_cast<Quick3DAbstractClipBlendNode *>(list->object); return extension->parentAbstractClipBlendNode()->clips().at(index); } -int Quick3DAbstractClipBlendNode::clipCount(QQmlListProperty<QAnimationClip> *list) +int Quick3DAbstractClipBlendNode::clipCount(QQmlListProperty<QAbstractAnimationClip> *list) { Quick3DAbstractClipBlendNode *extension = qobject_cast<Quick3DAbstractClipBlendNode *>(list->object); return extension->parentAbstractClipBlendNode()->clips().count(); } -void Quick3DAbstractClipBlendNode::clearClips(QQmlListProperty<QAnimationClip> *list) +void Quick3DAbstractClipBlendNode::clearClips(QQmlListProperty<QAbstractAnimationClip> *list) { Quick3DAbstractClipBlendNode *extension = qobject_cast<Quick3DAbstractClipBlendNode *>(list->object); - const QVector<QAnimationClip *> clips = extension->parentAbstractClipBlendNode()->clips(); - for (QAnimationClip *clip : clips) + const QVector<QAbstractAnimationClip *> clips = extension->parentAbstractClipBlendNode()->clips(); + for (QAbstractAnimationClip *clip : clips) extension->parentAbstractClipBlendNode()->removeClip(clip); } diff --git a/src/quick3d/quick3danimation/items/quick3dabstractclipblendnode_p.h b/src/quick3d/quick3danimation/items/quick3dabstractclipblendnode_p.h index bfb1825a7..8524600f4 100644 --- a/src/quick3d/quick3danimation/items/quick3dabstractclipblendnode_p.h +++ b/src/quick3d/quick3danimation/items/quick3dabstractclipblendnode_p.h @@ -53,7 +53,7 @@ #include <Qt3DQuickAnimation/private/qt3dquickanimation_global_p.h> #include <Qt3DAnimation/qabstractclipblendnode.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qabstractanimationclip.h> #include <QQmlListProperty> QT_BEGIN_NAMESPACE @@ -65,19 +65,19 @@ namespace Quick { class QT3DQUICKANIMATIONSHARED_PRIVATE_EXPORT Quick3DAbstractClipBlendNode : public QObject { Q_OBJECT - Q_PROPERTY(QQmlListProperty<Qt3DAnimation::QAnimationClip> clips READ clipList CONSTANT) + Q_PROPERTY(QQmlListProperty<Qt3DAnimation::QAbstractAnimationClip> clips READ clipList CONSTANT) public: explicit Quick3DAbstractClipBlendNode(QObject *parent = nullptr); inline QAbstractClipBlendNode *parentAbstractClipBlendNode() const { return qobject_cast<QAbstractClipBlendNode *>(parent()); } - QQmlListProperty<QAnimationClip> clipList(); + QQmlListProperty<QAbstractAnimationClip> clipList(); private: - static void appendClip(QQmlListProperty<QAnimationClip> *list, QAnimationClip *clip); - static QAnimationClip *clipAt(QQmlListProperty<QAnimationClip> *list, int index); - static int clipCount(QQmlListProperty<QAnimationClip> *list); - static void clearClips(QQmlListProperty<QAnimationClip> *list); + static void appendClip(QQmlListProperty<QAbstractAnimationClip> *list, QAbstractAnimationClip *clip); + static QAbstractAnimationClip *clipAt(QQmlListProperty<QAbstractAnimationClip> *list, int index); + static int clipCount(QQmlListProperty<QAbstractAnimationClip> *list); + static void clearClips(QQmlListProperty<QAbstractAnimationClip> *list); }; } // Quick diff --git a/tests/auto/animation/additiveblend/tst_additiveblend.cpp b/tests/auto/animation/additiveblend/tst_additiveblend.cpp index 31c103166..c94efedd8 100644 --- a/tests/auto/animation/additiveblend/tst_additiveblend.cpp +++ b/tests/auto/animation/additiveblend/tst_additiveblend.cpp @@ -29,7 +29,7 @@ #include <QtTest/QTest> #include <Qt3DAnimation/qadditiveblend.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qanimationcliploader.h> #include <Qt3DAnimation/private/qadditiveblend_p.h> #include <Qt3DAnimation/private/additiveblend_p.h> #include <Qt3DCore/qpropertyupdatedchange.h> @@ -57,7 +57,7 @@ private Q_SLOTS: { // GIVEN Qt3DAnimation::QAdditiveBlend additiveBlend; - Qt3DAnimation::QAnimationClip clip; + Qt3DAnimation::QAnimationClipLoader clip; additiveBlend.setBlendFactor(0.8f); additiveBlend.addClip(&clip); diff --git a/tests/auto/animation/animation.pro b/tests/auto/animation/animation.pro index 2f3776aaf..859f6c04f 100644 --- a/tests/auto/animation/animation.pro +++ b/tests/auto/animation/animation.pro @@ -2,7 +2,7 @@ TEMPLATE = subdirs SUBDIRS += \ qanimationaspect \ - qanimationclip \ + qanimationcliploader \ qclipanimator \ qblendedclipanimator \ qchannelmapping \ @@ -10,7 +10,7 @@ SUBDIRS += \ qtConfig(private_tests) { SUBDIRS += \ - animationclip \ + animationcliploader \ qabstractclipblendnode \ fcurve \ functionrangefinder \ diff --git a/tests/auto/animation/animationclip/animationclip.pro b/tests/auto/animation/animationcliploader/animationcliploader.pro index 09d9f2523..b1bc6dbcc 100644 --- a/tests/auto/animation/animationclip/animationclip.pro +++ b/tests/auto/animation/animationcliploader/animationcliploader.pro @@ -1,12 +1,12 @@ TEMPLATE = app -TARGET = tst_animationclip +TARGET = tst_animationcliploader QT += core-private 3dcore 3dcore-private 3danimation 3danimation-private testlib CONFIG += testcase SOURCES += \ - tst_animationclip.cpp + tst_animationcliploader.cpp include(../../core/common/common.pri) diff --git a/tests/auto/animation/animationclip/tst_animationclip.cpp b/tests/auto/animation/animationcliploader/tst_animationcliploader.cpp index 1a61dec2c..8c001b5f7 100644 --- a/tests/auto/animation/animationclip/tst_animationclip.cpp +++ b/tests/auto/animation/animationcliploader/tst_animationcliploader.cpp @@ -27,8 +27,8 @@ ****************************************************************************/ #include <QtTest/QTest> -#include <Qt3DAnimation/private/animationclip_p.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/private/animationcliploader_p.h> +#include <Qt3DAnimation/qanimationcliploader.h> #include <Qt3DCore/private/qnode_p.h> #include <Qt3DCore/private/qscene_p.h> #include <Qt3DCore/qpropertyupdatedchange.h> @@ -37,7 +37,7 @@ #include <qbackendnodetester.h> #include <testpostmanarbiter.h> -class tst_AnimationClip: public Qt3DCore::QBackendNodeTester +class tst_AnimationClipLoader: public Qt3DCore::QBackendNodeTester { Q_OBJECT @@ -45,10 +45,10 @@ private Q_SLOTS: void checkPeerPropertyMirroring() { // GIVEN - Qt3DAnimation::Animation::AnimationClip backendClip; + Qt3DAnimation::Animation::AnimationClipLoader backendClip; Qt3DAnimation::Animation::Handler handler; backendClip.setHandler(&handler); - Qt3DAnimation::QAnimationClip clip; + Qt3DAnimation::QAnimationClipLoader clip; clip.setSource(QUrl::fromLocalFile("walk.qlip")); @@ -64,7 +64,7 @@ private Q_SLOTS: void checkInitialAndCleanedUpState() { // GIVEN - Qt3DAnimation::Animation::AnimationClip backendClip; + Qt3DAnimation::Animation::AnimationClipLoader backendClip; Qt3DAnimation::Animation::Handler handler; backendClip.setHandler(&handler); @@ -75,7 +75,7 @@ private Q_SLOTS: QCOMPARE(backendClip.duration(), 0.0f); // GIVEN - Qt3DAnimation::QAnimationClip clip; + Qt3DAnimation::QAnimationClipLoader clip; clip.setSource(QUrl::fromLocalFile("walk.qlip")); // WHEN @@ -92,7 +92,7 @@ private Q_SLOTS: void checkPropertyChanges() { // GIVEN - Qt3DAnimation::Animation::AnimationClip backendClip; + Qt3DAnimation::Animation::AnimationClipLoader backendClip; Qt3DAnimation::Animation::Handler handler; backendClip.setHandler(&handler); Qt3DCore::QPropertyUpdatedChangePtr updateChange; @@ -121,7 +121,7 @@ private Q_SLOTS: { // GIVEN TestArbiter arbiter; - Qt3DAnimation::Animation::AnimationClip backendClip; + Qt3DAnimation::Animation::AnimationClipLoader backendClip; backendClip.setEnabled(true); Qt3DCore::QBackendNodePrivate::get(&backendClip)->setArbiter(&arbiter); @@ -150,6 +150,6 @@ private Q_SLOTS: } }; -QTEST_APPLESS_MAIN(tst_AnimationClip) +QTEST_APPLESS_MAIN(tst_AnimationClipLoader) -#include "tst_animationclip.moc" +#include "tst_animationcliploader.moc" diff --git a/tests/auto/animation/blendedclipanimator/tst_blendedclipanimator.cpp b/tests/auto/animation/blendedclipanimator/tst_blendedclipanimator.cpp index 04cc1026e..5c0cef708 100644 --- a/tests/auto/animation/blendedclipanimator/tst_blendedclipanimator.cpp +++ b/tests/auto/animation/blendedclipanimator/tst_blendedclipanimator.cpp @@ -28,7 +28,7 @@ #include <QtTest/QTest> #include <Qt3DAnimation/private/blendedclipanimator_p.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qanimationcliploader.h> #include <Qt3DAnimation/qblendedclipanimator.h> #include <Qt3DCore/private/qnode_p.h> #include <Qt3DCore/private/qscene_p.h> diff --git a/tests/auto/animation/clipanimator/tst_clipanimator.cpp b/tests/auto/animation/clipanimator/tst_clipanimator.cpp index 77f067973..b5173e56d 100644 --- a/tests/auto/animation/clipanimator/tst_clipanimator.cpp +++ b/tests/auto/animation/clipanimator/tst_clipanimator.cpp @@ -28,7 +28,7 @@ #include <QtTest/QTest> #include <Qt3DAnimation/private/clipanimator_p.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qanimationcliploader.h> #include <Qt3DAnimation/qclipanimator.h> #include <Qt3DCore/private/qnode_p.h> #include <Qt3DCore/private/qscene_p.h> @@ -49,7 +49,7 @@ private Q_SLOTS: Qt3DAnimation::Animation::ClipAnimator backendAnimator; backendAnimator.setHandler(&handler); Qt3DAnimation::QClipAnimator animator; - auto clip = new Qt3DAnimation::QAnimationClip(); + auto clip = new Qt3DAnimation::QAnimationClipLoader(); animator.setClip(clip); animator.setLoops(10); @@ -81,7 +81,7 @@ private Q_SLOTS: // GIVEN Qt3DAnimation::QClipAnimator animator; - auto clip = new Qt3DAnimation::QAnimationClip(); + auto clip = new Qt3DAnimation::QAnimationClipLoader(); animator.setClip(clip); animator.setRunning(true); animator.setLoops(25); @@ -116,7 +116,7 @@ private Q_SLOTS: QCOMPARE(backendAnimator.isEnabled(), true); // WHEN - auto newClip = new Qt3DAnimation::QAnimationClip(); + auto newClip = new Qt3DAnimation::QAnimationClipLoader(); updateChange.reset(new Qt3DCore::QPropertyUpdatedChange(Qt3DCore::QNodeId())); updateChange->setPropertyName("clip"); updateChange->setValue(QVariant::fromValue(newClip->id())); diff --git a/tests/auto/animation/clipblendnode/tst_clipblendnode.cpp b/tests/auto/animation/clipblendnode/tst_clipblendnode.cpp index 085979267..d8163f13f 100644 --- a/tests/auto/animation/clipblendnode/tst_clipblendnode.cpp +++ b/tests/auto/animation/clipblendnode/tst_clipblendnode.cpp @@ -29,7 +29,7 @@ #include <QtTest/QTest> #include <Qt3DAnimation/qlerpblend.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qanimationcliploader.h> #include <Qt3DAnimation/private/qabstractclipblendnode_p.h> #include <Qt3DAnimation/private/clipblendnode_p.h> #include <Qt3DAnimation/private/managers_p.h> @@ -78,7 +78,7 @@ private Q_SLOTS: { // GIVEN Qt3DAnimation::QLerpBlend clipBlendNode; - Qt3DAnimation::QAnimationClip clip; + Qt3DAnimation::QAnimationClipLoader clip; clipBlendNode.addClip(&clip); QCoreApplication::processEvents(); @@ -133,7 +133,7 @@ private Q_SLOTS: } { // WHEN - Qt3DAnimation::QAnimationClip clip; + Qt3DAnimation::QAnimationClipLoader clip; // To geneate the type_info in the QNodePrivate of clip Qt3DCore::QNodeCreatedChangeGenerator generator(&clip); diff --git a/tests/auto/animation/lerpblend/tst_lerpblend.cpp b/tests/auto/animation/lerpblend/tst_lerpblend.cpp index 5f494d9ec..b268fb42f 100644 --- a/tests/auto/animation/lerpblend/tst_lerpblend.cpp +++ b/tests/auto/animation/lerpblend/tst_lerpblend.cpp @@ -29,7 +29,7 @@ #include <QtTest/QTest> #include <Qt3DAnimation/qlerpblend.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qanimationcliploader.h> #include <Qt3DAnimation/private/qlerpblend_p.h> #include <Qt3DAnimation/private/lerpblend_p.h> #include <Qt3DCore/qpropertyupdatedchange.h> @@ -57,7 +57,7 @@ private Q_SLOTS: { // GIVEN Qt3DAnimation::QLerpBlend lerpBlend; - Qt3DAnimation::QAnimationClip clip; + Qt3DAnimation::QAnimationClipLoader clip; lerpBlend.setBlendFactor(0.8f); lerpBlend.addClip(&clip); diff --git a/tests/auto/animation/qabstractclipblendnode/tst_qabstractclipblendnode.cpp b/tests/auto/animation/qabstractclipblendnode/tst_qabstractclipblendnode.cpp index e2d963310..f5f1e73d4 100644 --- a/tests/auto/animation/qabstractclipblendnode/tst_qabstractclipblendnode.cpp +++ b/tests/auto/animation/qabstractclipblendnode/tst_qabstractclipblendnode.cpp @@ -29,7 +29,7 @@ #include <QtTest/QTest> #include <Qt3DAnimation/qabstractclipblendnode.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qanimationcliploader.h> #include <QObject> #include <QSignalSpy> #include <Qt3DCore/qpropertyupdatedchange.h> @@ -76,7 +76,7 @@ private Q_SLOTS: { // WHEN - Qt3DAnimation::QAnimationClip newValue; + Qt3DAnimation::QAnimationClipLoader newValue; abstractClipBlendNode.addClip(&newValue); // THEN @@ -103,7 +103,7 @@ private Q_SLOTS: { // WHEN - Qt3DAnimation::QAnimationClip clip; + Qt3DAnimation::QAnimationClipLoader clip; abstractClipBlendNode.addClip(&clip); QCOMPARE(abstractClipBlendNode.clips().size(), 1); @@ -118,7 +118,7 @@ private Q_SLOTS: // GIVEN TestArbiter arbiter; TestClipBlendNode abstractClipBlendNode; - Qt3DAnimation::QAnimationClip clip; + Qt3DAnimation::QAnimationClipLoader clip; arbiter.setArbiterOnNode(&abstractClipBlendNode); { diff --git a/tests/auto/animation/qadditiveblend/tst_qadditiveblend.cpp b/tests/auto/animation/qadditiveblend/tst_qadditiveblend.cpp index 27acf2b47..369ca0078 100644 --- a/tests/auto/animation/qadditiveblend/tst_qadditiveblend.cpp +++ b/tests/auto/animation/qadditiveblend/tst_qadditiveblend.cpp @@ -29,7 +29,7 @@ #include <QtTest/QTest> #include <Qt3DAnimation/qadditiveblend.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qanimationcliploader.h> #include <Qt3DAnimation/private/qadditiveblend_p.h> #include <QObject> #include <QSignalSpy> @@ -84,8 +84,8 @@ private Q_SLOTS: { // GIVEN Qt3DAnimation::QAdditiveBlend addBlend; - Qt3DAnimation::QAnimationClip clip1; - Qt3DAnimation::QAnimationClip clip2; + Qt3DAnimation::QAnimationClipLoader clip1; + Qt3DAnimation::QAnimationClipLoader clip2; addBlend.addClip(&clip1); addBlend.addClip(&clip2); diff --git a/tests/auto/animation/qanimationclip/qanimationclip.pro b/tests/auto/animation/qanimationcliploader/qanimationcliploader.pro index 5a9678496..d6ef54df6 100644 --- a/tests/auto/animation/qanimationclip/qanimationclip.pro +++ b/tests/auto/animation/qanimationcliploader/qanimationcliploader.pro @@ -7,6 +7,6 @@ QT += 3dcore 3dcore-private 3danimation 3danimation-private testlib CONFIG += testcase SOURCES += \ - tst_qanimationclip.cpp + tst_qanimationcliploader.cpp include(../../core/common/common.pri) diff --git a/tests/auto/animation/qanimationclip/tst_qanimationclip.cpp b/tests/auto/animation/qanimationcliploader/tst_qanimationcliploader.cpp index 8c83f6530..352587d51 100644 --- a/tests/auto/animation/qanimationclip/tst_qanimationclip.cpp +++ b/tests/auto/animation/qanimationcliploader/tst_qanimationcliploader.cpp @@ -28,8 +28,8 @@ #include <QtTest/QTest> -#include <Qt3DAnimation/qanimationclip.h> -#include <Qt3DAnimation/private/qanimationclip_p.h> +#include <Qt3DAnimation/qanimationcliploader.h> +#include <Qt3DAnimation/private/qanimationcliploader_p.h> #include <Qt3DCore/qpropertyupdatedchange.h> #include <Qt3DCore/qnodecreatedchange.h> #include <Qt3DCore/private/qnodecreatedchangegenerator_p.h> @@ -37,7 +37,7 @@ #include <QSignalSpy> #include <testpostmanarbiter.h> -class tst_QAnimationClip : public QObject +class tst_QAnimationClipLoader : public QObject { Q_OBJECT @@ -45,7 +45,7 @@ private Q_SLOTS: void checkDefaultConstruction() { // GIVEN - Qt3DAnimation::QAnimationClip clip; + Qt3DAnimation::QAnimationClipLoader clip; // THEN QCOMPARE(clip.source(), QUrl()); @@ -55,7 +55,7 @@ private Q_SLOTS: void checkPropertyChanges() { // GIVEN - Qt3DAnimation::QAnimationClip clip; + Qt3DAnimation::QAnimationClipLoader clip; { // WHEN @@ -81,7 +81,7 @@ private Q_SLOTS: void checkCreationData() { // GIVEN - Qt3DAnimation::QAnimationClip clip; + Qt3DAnimation::QAnimationClipLoader clip; clip.setSource(QUrl(QStringLiteral("http://someRemoteURL.com"))); @@ -97,8 +97,8 @@ private Q_SLOTS: { QCOMPARE(creationChanges.size(), 1); - const auto creationChangeData = qSharedPointerCast<Qt3DCore::QNodeCreatedChange<Qt3DAnimation::QAnimationClipData>>(creationChanges.first()); - const Qt3DAnimation::QAnimationClipData data = creationChangeData->data; + const auto creationChangeData = qSharedPointerCast<Qt3DCore::QNodeCreatedChange<Qt3DAnimation::QAnimationClipLoaderData>>(creationChanges.first()); + const Qt3DAnimation::QAnimationClipLoaderData data = creationChangeData->data; QCOMPARE(clip.id(), creationChangeData->subjectId()); QCOMPARE(clip.isEnabled(), true); @@ -119,7 +119,7 @@ private Q_SLOTS: { QCOMPARE(creationChanges.size(), 1); - const auto creationChangeData = qSharedPointerCast<Qt3DCore::QNodeCreatedChange<Qt3DAnimation::QAnimationClipData>>(creationChanges.first()); + const auto creationChangeData = qSharedPointerCast<Qt3DCore::QNodeCreatedChange<Qt3DAnimation::QAnimationClipLoaderData>>(creationChanges.first()); QCOMPARE(clip.id(), creationChangeData->subjectId()); QCOMPARE(clip.isEnabled(), false); @@ -132,7 +132,7 @@ private Q_SLOTS: { // GIVEN TestArbiter arbiter; - Qt3DAnimation::QAnimationClip clip; + Qt3DAnimation::QAnimationClipLoader clip; arbiter.setArbiterOnNode(&clip); { @@ -161,6 +161,6 @@ private Q_SLOTS: } }; -QTEST_MAIN(tst_QAnimationClip) +QTEST_MAIN(tst_QAnimationClipLoader) -#include "tst_qanimationclip.moc" +#include "tst_qanimationcliploader.moc" diff --git a/tests/auto/animation/qblendedclipanimator/tst_qblendedclipanimator.cpp b/tests/auto/animation/qblendedclipanimator/tst_qblendedclipanimator.cpp index 42997d8aa..d8c18bac9 100644 --- a/tests/auto/animation/qblendedclipanimator/tst_qblendedclipanimator.cpp +++ b/tests/auto/animation/qblendedclipanimator/tst_qblendedclipanimator.cpp @@ -28,9 +28,7 @@ #include <QtTest/QTest> -#include <Qt3DAnimation/qanimationclip.h> #include <Qt3DAnimation/qblendedclipanimator.h> -#include <Qt3DAnimation/private/qanimationclip_p.h> #include <Qt3DAnimation/private/qblendedclipanimator_p.h> #include <Qt3DAnimation/qlerpblend.h> #include <Qt3DAnimation/qchannelmapper.h> diff --git a/tests/auto/animation/qclipanimator/tst_qclipanimator.cpp b/tests/auto/animation/qclipanimator/tst_qclipanimator.cpp index d210d4365..084e78809 100644 --- a/tests/auto/animation/qclipanimator/tst_qclipanimator.cpp +++ b/tests/auto/animation/qclipanimator/tst_qclipanimator.cpp @@ -28,10 +28,10 @@ #include <QtTest/QTest> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qanimationcliploader.h> #include <Qt3DAnimation/qchannelmapper.h> #include <Qt3DAnimation/qclipanimator.h> -#include <Qt3DAnimation/private/qanimationclip_p.h> +#include <Qt3DAnimation/private/qanimationcliploader_p.h> #include <Qt3DAnimation/private/qclipanimator_p.h> #include <Qt3DCore/qpropertyupdatedchange.h> #include <Qt3DCore/qnodecreatedchange.h> @@ -47,7 +47,7 @@ class tst_QClipAnimator : public QObject private Q_SLOTS: void initTestCase() { - qRegisterMetaType<Qt3DAnimation::QAnimationClip*>(); + qRegisterMetaType<Qt3DAnimation::QAbstractAnimationClip*>(); qRegisterMetaType<Qt3DAnimation::QChannelMapper*>(); } @@ -57,7 +57,7 @@ private Q_SLOTS: Qt3DAnimation::QClipAnimator animator; // THEN - QCOMPARE(animator.clip(), static_cast<Qt3DAnimation::QAnimationClip *>(nullptr)); + QCOMPARE(animator.clip(), static_cast<Qt3DAnimation::QAbstractAnimationClip *>(nullptr)); QCOMPARE(animator.channelMapper(), static_cast<Qt3DAnimation::QChannelMapper *>(nullptr)); QCOMPARE(animator.loops(), 1); } @@ -69,8 +69,8 @@ private Q_SLOTS: { // WHEN - QSignalSpy spy(&animator, SIGNAL(clipChanged(Qt3DAnimation::QAnimationClip *))); - auto newValue = new Qt3DAnimation::QAnimationClip(); + QSignalSpy spy(&animator, SIGNAL(clipChanged(Qt3DAnimation::QAbstractAnimationClip *))); + auto newValue = new Qt3DAnimation::QAnimationClipLoader(); animator.setClip(newValue); // THEN @@ -134,7 +134,7 @@ private Q_SLOTS: { // GIVEN Qt3DAnimation::QClipAnimator animator; - auto clip = new Qt3DAnimation::QAnimationClip(); + auto clip = new Qt3DAnimation::QAnimationClipLoader(); animator.setClip(clip); auto mapper = new Qt3DAnimation::QChannelMapper(); animator.setChannelMapper(mapper); @@ -187,7 +187,7 @@ private Q_SLOTS: // GIVEN TestArbiter arbiter; Qt3DAnimation::QClipAnimator animator; - auto clip = new Qt3DAnimation::QAnimationClip(); + auto clip = new Qt3DAnimation::QAnimationClipLoader(); arbiter.setArbiterOnNode(&animator); { diff --git a/tests/auto/animation/qlerpblend/tst_qlerpblend.cpp b/tests/auto/animation/qlerpblend/tst_qlerpblend.cpp index 6bd6bb324..25e403007 100644 --- a/tests/auto/animation/qlerpblend/tst_qlerpblend.cpp +++ b/tests/auto/animation/qlerpblend/tst_qlerpblend.cpp @@ -29,7 +29,7 @@ #include <QtTest/QTest> #include <Qt3DAnimation/qlerpblend.h> -#include <Qt3DAnimation/qanimationclip.h> +#include <Qt3DAnimation/qanimationcliploader.h> #include <Qt3DAnimation/private/qlerpblend_p.h> #include <QObject> #include <QSignalSpy> @@ -84,8 +84,8 @@ private Q_SLOTS: { // GIVEN Qt3DAnimation::QLerpBlend lerpBlend; - Qt3DAnimation::QAnimationClip clip1; - Qt3DAnimation::QAnimationClip clip2; + Qt3DAnimation::QAnimationClipLoader clip1; + Qt3DAnimation::QAnimationClipLoader clip2; lerpBlend.addClip(&clip1); lerpBlend.addClip(&clip2); |