summaryrefslogtreecommitdiffstats
path: root/src/plugins/sceneparsers/assimp/assimpimporter.h
diff options
context:
space:
mode:
authorSean Harmer <sean.harmer@kdab.com>2017-05-24 12:09:44 +0100
committerSean Harmer <sean.harmer@kdab.com>2017-05-24 12:10:02 +0100
commit77d294db076dac19e8b549b445ffede9f7260c84 (patch)
tree828ee7a6862ec5c0bd24f97cb540625a2c647376 /src/plugins/sceneparsers/assimp/assimpimporter.h
parent59f8fec8a41606b3185fe3a4e276978e3e1ed5ef (diff)
parent939b9b4b7591e8a421cf048a0a84ed3e75d81d21 (diff)
Merge branch 'dev' into wip/animationwip/animation
Diffstat (limited to 'src/plugins/sceneparsers/assimp/assimpimporter.h')
-rw-r--r--src/plugins/sceneparsers/assimp/assimpimporter.h25
1 files changed, 14 insertions, 11 deletions
diff --git a/src/plugins/sceneparsers/assimp/assimpimporter.h b/src/plugins/sceneparsers/assimp/assimpimporter.h
index 0d2c0c9e5..3c0a41124 100644
--- a/src/plugins/sceneparsers/assimp/assimpimporter.h
+++ b/src/plugins/sceneparsers/assimp/assimpimporter.h
@@ -56,13 +56,15 @@
#include <assimp/scene.h>
#include <assimp/postprocess.h>
#include <assimp/DefaultLogger.hpp>
-#include <Qt3DRender/private/qsceneimporter_p.h>
+
+#include <QtCore/QMap>
+#include <QtCore/QDir>
+#include <QtCore/QLoggingCategory>
+#include <QtCore/QVector>
+
#include "assimphelpers.h"
-#include <QMap>
-#include <QDir>
-#include <QVector>
-#include <QLoggingCategory>
+#include <Qt3DRender/private/qsceneimporter_p.h>
QT_BEGIN_NAMESPACE
@@ -72,7 +74,7 @@ namespace Qt3DCore {
class QCamera;
}
-namespace Qt3DExtras {
+namespace Qt3DAnimation {
class QKeyframeAnimation;
class QMorphingAnimation;
}
@@ -98,17 +100,19 @@ public:
// SceneParserInterface interface
void setSource(const QUrl& source) Q_DECL_OVERRIDE;
- bool isFileTypeSupported(const QUrl &source) const Q_DECL_OVERRIDE;
+ void setData(const QByteArray& data, const QString &basePath) Q_DECL_OVERRIDE;
+ bool areFileTypesSupported(const QStringList &extensions) const Q_DECL_OVERRIDE;
Qt3DCore::QEntity *scene(const QString &id = QString()) Q_DECL_OVERRIDE;
Qt3DCore::QEntity *node(const QString &id) Q_DECL_OVERRIDE;
private:
- static bool isAssimpPath(const QString &path);
+ static bool areAssimpExtensions(const QStringList &extensions);
static QStringList assimpSupportedFormats();
Qt3DCore::QEntity *node(aiNode *node);
void readSceneFile(const QString &file);
+ void readSceneData(const QByteArray& data, const QString &basePath);
void cleanup();
void parse();
@@ -141,11 +145,10 @@ private:
QMap<uint, QMaterial*> m_materials;
QMap<uint, QEffect *> m_effects;
QMap<uint, QAbstractTexture *> m_embeddedTextures;
- QMap<QString, QAbstractTexture *> m_materialTextures;
QMap<aiNode*, Qt3DCore::QEntity*> m_cameras;
QHash<aiTextureType, QString> m_textureToParameterName;
- QVector<Qt3DExtras::QKeyframeAnimation *> m_animations;
- QVector<Qt3DExtras::QMorphingAnimation *> m_morphAnimations;
+ QVector<Qt3DAnimation::QKeyframeAnimation *> m_animations;
+ QVector<Qt3DAnimation::QMorphingAnimation *> m_morphAnimations;
// QMap<aiNode*, Light*> m_lights;
};