summaryrefslogtreecommitdiffstats
path: root/src/render/backend/jobs
diff options
context:
space:
mode:
authorLaszlo Agocs <laszlo.agocs@theqtcompany.com>2015-02-13 14:11:08 +0100
committerLaszlo Agocs <laszlo.agocs@theqtcompany.com>2015-02-13 14:58:06 +0000
commit209efae5307bf6cf519848205dbbe637c62c4ae2 (patch)
tree4ddf105cfe9a59391a058665d4b670079e69f02d /src/render/backend/jobs
parent664b73dd36de6205cc84a219f936dd744a2dc184 (diff)
Make scene parsers operate on URLs instead of raw filenames
This way they are compatible with how mesh and texture source URLs are handled. Change-Id: Ifeee504fd3f5957d23f5cade92a73663488bdaf9 Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/backend/jobs')
-rw-r--r--src/render/backend/jobs/loadscenejob.cpp6
-rw-r--r--src/render/backend/jobs/loadscenejob_p.h5
2 files changed, 6 insertions, 5 deletions
diff --git a/src/render/backend/jobs/loadscenejob.cpp b/src/render/backend/jobs/loadscenejob.cpp
index 00a94cdac..169804e19 100644
--- a/src/render/backend/jobs/loadscenejob.cpp
+++ b/src/render/backend/jobs/loadscenejob.cpp
@@ -46,7 +46,7 @@ namespace Qt3D {
namespace Render {
-LoadSceneJob::LoadSceneJob(const QString &source, const QNodeId &m_sceneComponent)
+LoadSceneJob::LoadSceneJob(const QUrl &source, const QNodeId &m_sceneComponent)
: QAspectJob()
, m_renderer(Q_NULLPTR)
, m_source(source)
@@ -59,8 +59,8 @@ void LoadSceneJob::run()
QEntity *sceneTree = m_renderer->sceneManager()->sceneTreeFromSource(m_source);
if (sceneTree == Q_NULLPTR) {
Q_FOREACH (AbstractSceneParser *parser, m_renderer->sceneParsers()) {
- if (parser->isPathExtensionSupported(m_source)) {
- parser->setFilePath(m_source);
+ if (parser->isExtensionSupported(m_source)) {
+ parser->setSource(m_source);
sceneTree = parser->scene();
m_renderer->sceneManager()->addLoadedSceneTree(m_source, sceneTree);
}
diff --git a/src/render/backend/jobs/loadscenejob_p.h b/src/render/backend/jobs/loadscenejob_p.h
index 68df20c03..1497f7c9f 100644
--- a/src/render/backend/jobs/loadscenejob_p.h
+++ b/src/render/backend/jobs/loadscenejob_p.h
@@ -40,6 +40,7 @@
#include <Qt3DCore/qaspectjob.h>
#include <Qt3DCore/qnodeid.h>
#include <QSharedPointer>
+#include <QUrl>
QT_BEGIN_NAMESPACE
@@ -52,7 +53,7 @@ class Renderer;
class LoadSceneJob : public Qt3D::QAspectJob
{
public:
- explicit LoadSceneJob(const QString &source, const QNodeId &sceneComponent);
+ explicit LoadSceneJob(const QUrl &source, const QNodeId &sceneComponent);
void setRenderer(Renderer *renderer) { m_renderer = renderer; }
protected:
@@ -60,7 +61,7 @@ protected:
private:
Renderer *m_renderer;
- QString m_source;
+ QUrl m_source;
QNodeId m_sceneComponent;
};