summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Lemire <paul.lemire@kdab.com>2014-05-26 12:37:33 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-05-31 13:12:28 +0200
commitb6f14805cbaee5d811cb172af2b558a1f61d505e (patch)
tree995e7f8577b669d4207a45233366ca9d89de52ed
parentc559c941831968dfc0a320c40bb771e0a78b5b68 (diff)
Rename Effect to QAbstractEffect
It appears that to easily create custom aspects without having to rely on the RendererAspect, the core API needs to be extended to contain interfaces of abstracts for Effect, Mesh, Material, Technique. This is the first patch of a serie of patches to follow that will rename classes correctly prior to moving them to Qt3D Core. Change-Id: I6a6a5c8a7476875cd7be04248aebe747c217396a Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
-rw-r--r--examples/cpp_example/main.cpp2
-rw-r--r--src/quick3d/quick3drenderer/items/quick3deffect.cpp10
-rw-r--r--src/quick3d/quick3drenderer/items/quick3deffect.h6
-rw-r--r--src/render/backend/renderer.cpp6
-rw-r--r--src/render/backend/renderview.cpp4
-rw-r--r--src/render/backend/techniquemanager.h4
-rw-r--r--src/render/frontend/effectnode.cpp6
-rw-r--r--src/render/frontend/effectnode.h6
-rw-r--r--src/render/frontend/material.cpp2
-rw-r--r--src/render/frontend/qabstracteffect.cpp (renamed from src/render/frontend/effect.cpp)24
-rw-r--r--src/render/frontend/qabstracteffect.h (renamed from src/render/frontend/effect.h)24
-rw-r--r--src/render/frontend/render-frontend.pri4
12 files changed, 49 insertions, 49 deletions
diff --git a/examples/cpp_example/main.cpp b/examples/cpp_example/main.cpp
index 03234132d..07ebec982 100644
--- a/examples/cpp_example/main.cpp
+++ b/examples/cpp_example/main.cpp
@@ -51,7 +51,7 @@
#include <Qt3DRenderer/mesh.h>
#include <Qt3DRenderer/technique.h>
#include <Qt3DRenderer/material.h>
-#include <Qt3DRenderer/effect.h>
+#include <Qt3DRenderer/qabstracteffect.h>
#include <Qt3DRenderer/texture.h>
#include <Qt3DRenderer/renderpass.h>
#include <Qt3DRenderer/scenenode.h>
diff --git a/src/quick3d/quick3drenderer/items/quick3deffect.cpp b/src/quick3d/quick3drenderer/items/quick3deffect.cpp
index 06990f0d1..cd9407157 100644
--- a/src/quick3d/quick3drenderer/items/quick3deffect.cpp
+++ b/src/quick3d/quick3drenderer/items/quick3deffect.cpp
@@ -51,7 +51,7 @@ namespace Quick {
Quick3DEffect::Quick3DEffect(Node *parent)
: Qt3D::Quick::Quick3DNode(parent),
- Effect()
+ QAbstractEffect()
{
}
@@ -66,14 +66,14 @@ QQmlListProperty<Technique> Quick3DEffect::techniqueList()
void Quick3DEffect::appendTechnique(QQmlListProperty<Technique> *list, Technique *bar)
{
- Effect *eff = qobject_cast<Effect*>(list->object);
+ QAbstractEffect *eff = qobject_cast<QAbstractEffect*>(list->object);
if (eff)
eff->addTechnique(bar);
}
Technique *Quick3DEffect::techniqueAt(QQmlListProperty<Technique> *list, int index)
{
- Effect *eff = qobject_cast<Effect*>(list->object);
+ QAbstractEffect *eff = qobject_cast<QAbstractEffect*>(list->object);
if (eff)
return eff->techniques().at(index);
return Q_NULLPTR;
@@ -81,7 +81,7 @@ Technique *Quick3DEffect::techniqueAt(QQmlListProperty<Technique> *list, int ind
int Quick3DEffect::techniqueCount(QQmlListProperty<Technique> *list)
{
- Effect *eff = qobject_cast<Effect*>(list->object);
+ QAbstractEffect *eff = qobject_cast<QAbstractEffect*>(list->object);
if (eff)
return eff->techniques().count();
return 0;
@@ -89,7 +89,7 @@ int Quick3DEffect::techniqueCount(QQmlListProperty<Technique> *list)
void Quick3DEffect::clearTechniqueList(QQmlListProperty<Technique> *list)
{
- Effect *eff = qobject_cast<Effect*>(list->object);
+ QAbstractEffect *eff = qobject_cast<QAbstractEffect*>(list->object);
if (eff) {
// Ownership of techniques is handled by the QmlEngine so we shouldn't class clearTechniques
// which deletes techniques
diff --git a/src/quick3d/quick3drenderer/items/quick3deffect.h b/src/quick3d/quick3drenderer/items/quick3deffect.h
index 858c17194..db589327e 100644
--- a/src/quick3d/quick3drenderer/items/quick3deffect.h
+++ b/src/quick3d/quick3drenderer/items/quick3deffect.h
@@ -44,7 +44,7 @@
#include <Qt3DQuickRenderer/qt3dquickrenderer_global.h>
#include <Qt3DQuick/quick3dnode.h>
-#include <Qt3DRenderer/effect.h>
+#include <Qt3DRenderer/qabstracteffect.h>
#include <QQmlListProperty>
@@ -56,10 +56,10 @@ namespace Render {
namespace Quick {
-class QT3DQUICKRENDERERSHARED_EXPORT Quick3DEffect : public Qt3D::Quick::Quick3DNode, public Effect
+class QT3DQUICKRENDERERSHARED_EXPORT Quick3DEffect : public Qt3D::Quick::Quick3DNode, public QAbstractEffect
{
Q_OBJECT
- Q_INTERFACES(Qt3D::Effect)
+ Q_INTERFACES(Qt3D::QAbstractEffect)
Q_PROPERTY(QQmlListProperty<Qt3D::Technique> techniques READ techniqueList)
public:
diff --git a/src/render/backend/renderer.cpp b/src/render/backend/renderer.cpp
index 07c0b0ae8..370c94513 100644
--- a/src/render/backend/renderer.cpp
+++ b/src/render/backend/renderer.cpp
@@ -55,7 +55,7 @@
#include <material.h>
#include <mesh.h>
-#include <effect.h>
+#include <qabstracteffect.h>
#include <technique.h>
#include <shaderprogram.h>
#include <renderpass.h>
@@ -277,7 +277,7 @@ void Renderer::setSurface(QSurface* s)
void Renderer::setDefaultTechnique(Technique *t)
{
- Effect* defEff = qobject_cast<Effect*>(m_defaultMaterial->effect());
+ QAbstractEffect* defEff = qobject_cast<QAbstractEffect*>(m_defaultMaterial->effect());
bool materialWasUsing = (defEff->techniques().front() ==
m_defaultTechnique);
@@ -529,7 +529,7 @@ void Renderer::executeCommands(const QVector<RenderCommand *> commands)
RenderTechnique* Renderer::techniqueForMaterial(Material* mat)
{
- Effect* eff = qobject_cast<Effect*>(mat->effect());
+ QAbstractEffect* eff = qobject_cast<QAbstractEffect*>(mat->effect());
Technique *tech;
if (eff) {
Q_ASSERT(!eff->techniques().empty());
diff --git a/src/render/backend/renderview.cpp b/src/render/backend/renderview.cpp
index a18d59847..58068122a 100644
--- a/src/render/backend/renderview.cpp
+++ b/src/render/backend/renderview.cpp
@@ -41,7 +41,7 @@
#include "renderview.h"
#include "material.h"
-#include "effect.h"
+#include "qabstracteffect.h"
#include "renderer.h"
#include "rendercamera.h"
#include "rendercommand.h"
@@ -219,7 +219,7 @@ void RenderView::setCommandShaderTechniqueEffect(RenderCommand *command)
// Set shader, technique, and effect by basically doing :
// ShaderProgramManager[MaterialManager[frontentEntity->uuid()]->Effect->Techniques[TechniqueFilter->name]->RenderPasses[RenderPassFilter->name]];
// The Renderer knows that if one of those is null, a default material / technique / effect as to be used
- Effect *effect = qobject_cast<Effect*>(material->peer()->effect());
+ QAbstractEffect *effect = qobject_cast<QAbstractEffect*>(material->peer()->effect());
QString techniqueName = m_techniqueFilter->filters().values().first().toString();
command->m_technique = m_renderer->techniqueManager()->lookupHandle(EffectTechniquePair(effect, techniqueName));
if (effect != Q_NULLPTR && m_renderer->techniqueManager()->data(command->m_technique) == Q_NULLPTR) {
diff --git a/src/render/backend/techniquemanager.h b/src/render/backend/techniquemanager.h
index 1ce7594c5..a1fffdf41 100644
--- a/src/render/backend/techniquemanager.h
+++ b/src/render/backend/techniquemanager.h
@@ -50,11 +50,11 @@ QT_BEGIN_NAMESPACE
namespace Qt3D {
-class Effect;
+class QAbstractEffect;
namespace Render {
-typedef QPair<Effect *, QString> EffectTechniquePair;
+typedef QPair<QAbstractEffect *, QString> EffectTechniquePair;
typedef QHandle<RenderTechnique, 16> HTechnique;
class TechniqueManager : public QArrayResourcesManager<RenderTechnique, EffectTechniquePair, 16>
diff --git a/src/render/frontend/effectnode.cpp b/src/render/frontend/effectnode.cpp
index 3209ec235..49871c05b 100644
--- a/src/render/frontend/effectnode.cpp
+++ b/src/render/frontend/effectnode.cpp
@@ -49,7 +49,7 @@ namespace Qt3D {
EffectNode::EffectNode(Node *parent)
: Node(parent)
- , Effect()
+ , QAbstractEffect()
{
}
@@ -58,12 +58,12 @@ void EffectNode::addTechnique(Technique *t)
// In the C++ API we are responsible for setting the parent
// Qml API is automatically handled by the Qml Engine
t->setParent(this);
- Effect::addTechnique(t);
+ QAbstractEffect::addTechnique(t);
}
void EffectNode::removeTechnique(Technique *t)
{
- Effect::removeTechnique(t);
+ QAbstractEffect::removeTechnique(t);
delete t;
}
diff --git a/src/render/frontend/effectnode.h b/src/render/frontend/effectnode.h
index 73bb85656..6599b4007 100644
--- a/src/render/frontend/effectnode.h
+++ b/src/render/frontend/effectnode.h
@@ -42,7 +42,7 @@
#ifndef QT3D_EFFECTNODE_H
#define QT3D_EFFECTNODE_H
-#include <Qt3DRenderer/effect.h>
+#include <Qt3DRenderer/qabstracteffect.h>
#include <Qt3DCore/node.h>
#include <Qt3DRenderer/qt3drenderer_global.h>
@@ -50,10 +50,10 @@ QT_BEGIN_NAMESPACE
namespace Qt3D {
-class QT3DRENDERERSHARED_EXPORT EffectNode : public Node, public Effect
+class QT3DRENDERERSHARED_EXPORT EffectNode : public Node, public QAbstractEffect
{
Q_OBJECT
- Q_INTERFACES(Qt3D::Effect)
+ Q_INTERFACES(Qt3D::QAbstractEffect)
public:
explicit EffectNode(Node *parent = 0);
diff --git a/src/render/frontend/material.cpp b/src/render/frontend/material.cpp
index 0952e660d..64b7b290b 100644
--- a/src/render/frontend/material.cpp
+++ b/src/render/frontend/material.cpp
@@ -43,7 +43,7 @@
#include <qchangearbiter.h>
#include <texture.h>
-#include "effect.h"
+#include "qabstracteffect.h"
#include "renderlogging.h"
QT_BEGIN_NAMESPACE
diff --git a/src/render/frontend/effect.cpp b/src/render/frontend/qabstracteffect.cpp
index 6bbf1b913..073532470 100644
--- a/src/render/frontend/effect.cpp
+++ b/src/render/frontend/qabstracteffect.cpp
@@ -39,7 +39,7 @@
**
****************************************************************************/
-#include "effect.h"
+#include "qabstracteffect.h"
#include "technique.h"
#include "renderlogging.h"
@@ -48,35 +48,35 @@ QT_BEGIN_NAMESPACE
namespace Qt3D {
-Effect::Effect()
- : d_ptr(new EffectPrivate(this))
+QAbstractEffect::QAbstractEffect()
+ : d_ptr(new QAbstractEffectPrivate(this))
{
- qRegisterMetaType<Qt3D::Effect*>();
+ qRegisterMetaType<Qt3D::QAbstractEffect*>();
qCDebug(Render::Frontend) << Q_FUNC_INFO;
}
-void Effect::addTechnique(Technique *t)
+void QAbstractEffect::addTechnique(Technique *t)
{
Q_ASSERT(t);
- Q_D(Effect);
+ Q_D(QAbstractEffect);
d->m_techniques.append(t);
}
-void Effect::removeTechnique(Technique *t)
+void QAbstractEffect::removeTechnique(Technique *t)
{
- Q_D(Effect);
+ Q_D(QAbstractEffect);
d->m_techniques.removeOne(t);
}
-QList<Technique *> Effect::techniques() const
+QList<Technique *> QAbstractEffect::techniques() const
{
- Q_D(const Effect);
+ Q_D(const QAbstractEffect);
return d->m_techniques;
}
-void Effect::clearTechniques()
+void QAbstractEffect::clearTechniques()
{
- Q_D(Effect);
+ Q_D(QAbstractEffect);
qDeleteAll(d->m_techniques);
d->m_techniques.clear();
}
diff --git a/src/render/frontend/effect.h b/src/render/frontend/qabstracteffect.h
index 31f3e5386..5c3f8c721 100644
--- a/src/render/frontend/effect.h
+++ b/src/render/frontend/qabstracteffect.h
@@ -52,26 +52,26 @@ QT_BEGIN_NAMESPACE
namespace Qt3D {
class Technique;
-class Effect;
+class QAbstractEffect;
-class EffectPrivate
+class QAbstractEffectPrivate
{
public :
- EffectPrivate(Effect *qq)
+ QAbstractEffectPrivate(QAbstractEffect *qq)
: q_ptr(qq)
{}
QList<Technique *> m_techniques;
- Q_DECLARE_PUBLIC(Effect)
- Effect *q_ptr;
+ Q_DECLARE_PUBLIC(QAbstractEffect)
+ QAbstractEffect *q_ptr;
};
-class QT3DRENDERERSHARED_EXPORT Effect
+class QT3DRENDERERSHARED_EXPORT QAbstractEffect
{
public:
- Effect();
+ QAbstractEffect();
virtual void addTechnique(Technique *t);
virtual void removeTechnique(Technique *t);
@@ -80,21 +80,21 @@ public:
void clearTechniques();
-Q_SIGNALS:
+ // Signal
virtual void techniquesChanged() = 0;
private:
- Q_DECLARE_PRIVATE(Effect)
- EffectPrivate *d_ptr;
+ Q_DECLARE_PRIVATE(QAbstractEffect)
+ QAbstractEffectPrivate *d_ptr;
};
} // Qt3D
-Q_DECLARE_INTERFACE(Qt3D::Effect, "org.qt-project.Qt3D.Render.Effect/2.0")
+Q_DECLARE_INTERFACE(Qt3D::QAbstractEffect, "org.qt-project.Qt3D.Effect/2.0")
QT_END_NAMESPACE
-Q_DECLARE_METATYPE(Qt3D::Effect*)
+Q_DECLARE_METATYPE(Qt3D::QAbstractEffect*)
#endif // QT3D_EFFECT_H
diff --git a/src/render/frontend/render-frontend.pri b/src/render/frontend/render-frontend.pri
index fca1d3469..7a332d081 100644
--- a/src/render/frontend/render-frontend.pri
+++ b/src/render/frontend/render-frontend.pri
@@ -1,7 +1,7 @@
INCLUDEPATH += $$PWD
HEADERS += \
- $$PWD/effect.h \
+ $$PWD/qabstracteffect.h \
$$PWD/material.h \
$$PWD/mesh.h \
$$PWD/renderpass.h \
@@ -30,7 +30,7 @@ HEADERS += \
$$PWD/scenenode.h
SOURCES += \
- $$PWD/effect.cpp \
+ $$PWD/qabstracteffect.cpp \
$$PWD/material.cpp \
$$PWD/mesh.cpp \
$$PWD/renderpass.cpp \