diff options
author | Antti Määttä <antti.maatta@qt.io> | 2016-08-19 15:21:30 +0300 |
---|---|---|
committer | Antti Määttä <antti.maatta@qt.io> | 2016-10-19 05:52:23 +0000 |
commit | 09393747fe20d09d05d355123d7c3abb916709bb (patch) | |
tree | 939f1f7b8de62d469f17dad955bd167e42283896 /src | |
parent | d0490594ba596a376ea8f5180fff88cd25bff318 (diff) |
Add unit tests for sendrendercapturejob
Unit tests for the job and some changes to backend rendercapture node to
make the unit test work.
Change-Id: I6c73ee20c07b43b9e2c4baf3ac5ea9efa4657024
Reviewed-by: Paul Lemire <paul.lemire@kdab.com>
Diffstat (limited to 'src')
-rw-r--r-- | src/render/framegraph/rendercapture.cpp | 9 | ||||
-rw-r--r-- | src/render/framegraph/rendercapture_p.h | 3 | ||||
-rw-r--r-- | src/render/jobs/sendrendercapturejob_p.h | 1 |
3 files changed, 9 insertions, 4 deletions
diff --git a/src/render/framegraph/rendercapture.cpp b/src/render/framegraph/rendercapture.cpp index 250666939..f123fd74c 100644 --- a/src/render/framegraph/rendercapture.cpp +++ b/src/render/framegraph/rendercapture.cpp @@ -50,6 +50,12 @@ RenderCapture::RenderCapture() } +void RenderCapture::requestCapture(int captureId) +{ + QMutexLocker lock(&m_mutex); + m_requestedCaptures.push_back(captureId); +} + bool RenderCapture::wasCaptureRequested() const { return m_requestedCaptures.size() > 0 && isEnabled(); @@ -65,8 +71,7 @@ void RenderCapture::sceneChangeEvent(const Qt3DCore::QSceneChangePtr &e) if (e->type() == Qt3DCore::PropertyUpdated) { Qt3DCore::QPropertyUpdatedChangePtr propertyChange = qSharedPointerCast<Qt3DCore::QPropertyUpdatedChange>(e); if (propertyChange->propertyName() == QByteArrayLiteral("renderCaptureRequest")) { - QMutexLocker lock(&m_mutex); - m_requestedCaptures.push_back(propertyChange->value().toInt()); + requestCapture(propertyChange->value().toInt()); } } markDirty(AbstractRenderer::AllDirty); diff --git a/src/render/framegraph/rendercapture_p.h b/src/render/framegraph/rendercapture_p.h index 97bdc9d8b..e2b87474c 100644 --- a/src/render/framegraph/rendercapture_p.h +++ b/src/render/framegraph/rendercapture_p.h @@ -57,11 +57,12 @@ namespace Qt3DRender { namespace Render { -class RenderCapture : public FrameGraphNode +class Q_AUTOTEST_EXPORT RenderCapture : public FrameGraphNode { public: RenderCapture(); + void requestCapture(int captureId); bool wasCaptureRequested() const; void acknowledgeCaptureRequest(); void addRenderCapture(const QImage &image); diff --git a/src/render/jobs/sendrendercapturejob_p.h b/src/render/jobs/sendrendercapturejob_p.h index f1e6b65f2..a6a7f7e79 100644 --- a/src/render/jobs/sendrendercapturejob_p.h +++ b/src/render/jobs/sendrendercapturejob_p.h @@ -71,7 +71,6 @@ public: void setManagers(NodeManagers *managers); -protected: void run() Q_DECL_FINAL; private: |