summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorAntti Määttä <antti.maatta@qt.io>2016-08-19 15:21:30 +0300
committerAntti Määttä <antti.maatta@qt.io>2016-10-19 05:52:23 +0000
commit09393747fe20d09d05d355123d7c3abb916709bb (patch)
tree939f1f7b8de62d469f17dad955bd167e42283896 /src
parentd0490594ba596a376ea8f5180fff88cd25bff318 (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.cpp9
-rw-r--r--src/render/framegraph/rendercapture_p.h3
-rw-r--r--src/render/jobs/sendrendercapturejob_p.h1
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: