summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/openal/openal.pri8
-rw-r--r--src/openal/openal.pro28
-rw-r--r--src/openal/openalaspect.cpp87
-rw-r--r--src/openal/openalaspect.h75
-rw-r--r--src/openal/qt3dopenal_global.h57
-rw-r--r--src/src.pro1
-rw-r--r--sync.profile1
7 files changed, 257 insertions, 0 deletions
diff --git a/src/openal/openal.pri b/src/openal/openal.pri
new file mode 100644
index 000000000..7c0536c4f
--- /dev/null
+++ b/src/openal/openal.pri
@@ -0,0 +1,8 @@
+INCLUDEPATH += $$PWD
+
+HEADERS += \
+ $$PWD/openalaspect.h
+
+SOURCES += \
+ $$PWD/openalaspect.cpp
+
diff --git a/src/openal/openal.pro b/src/openal/openal.pro
new file mode 100644
index 000000000..3fced1b81
--- /dev/null
+++ b/src/openal/openal.pro
@@ -0,0 +1,28 @@
+TARGET = Qt3DOpenAL
+
+QT += core 3dcore
+
+DEFINES += QT3DOPENAL_LIBRARY
+
+MODULE = 3dopenal
+
+load(qt_module)
+
+include(openal.pri)
+
+gcov {
+ CONFIG += static
+ QMAKE_CXXFLAGS += -fprofile-arcs -ftest-coverage
+ QMAKE_LFLAGS += -fprofile-arcs -ftest-coverage
+} else {
+ CONFIG += dll
+}
+
+# otherwise mingw headers do not declare common functions like ::strcasecmp
+win32-g++*:QMAKE_CXXFLAGS_CXX11 = -std=gnu++0x
+
+PUBLIC_HEADERS = $$HEADERS
+HEADERS += $$PRIVATE_HEADERS \
+ qt3dopenal_global.h
+
+!contains(QT_CONFIG, egl):DEFINES += QT_NO_EGL
diff --git a/src/openal/openalaspect.cpp b/src/openal/openalaspect.cpp
new file mode 100644
index 000000000..12770f5fe
--- /dev/null
+++ b/src/openal/openalaspect.cpp
@@ -0,0 +1,87 @@
+/****************************************************************************
+**
+** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt3D module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#include "openalaspect.h"
+
+QT_BEGIN_NAMESPACE
+
+namespace Qt3D {
+
+OpenALAspect::OpenALAspect(QObject *parent)
+ : AbstractAspect(AbstractAspect::AspectAudio, parent)
+{
+}
+
+void OpenALAspect::setWindow(QWindow *window)
+{
+
+}
+
+QVector<QJobPtr> OpenALAspect::jobsToExecute()
+{
+ QVector<QJobPtr> jobs;
+
+ return jobs;
+}
+
+void OpenALAspect::registerAspectHelper(Node *rootObject)
+{
+
+}
+
+void OpenALAspect::unregisterAspectHelper(Node *rootObject)
+{
+
+}
+
+void OpenALAspect::initializeHelper(QAspectManager *aspectManager)
+{
+
+}
+
+void OpenALAspect::cleanupHelper()
+{
+
+}
+
+} // Qt3D
+
+QT_END_NAMESPACE
diff --git a/src/openal/openalaspect.h b/src/openal/openalaspect.h
new file mode 100644
index 000000000..c5cab24de
--- /dev/null
+++ b/src/openal/openalaspect.h
@@ -0,0 +1,75 @@
+/****************************************************************************
+**
+** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt3D module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QT3D_OPENALASPECT_H
+#define QT3D_OPENALASPECT_H
+
+#include <Qt3DOpenAL/qt3dopenal_global.h>
+#include <Qt3DCore/abstractaspect.h>
+
+QT_BEGIN_NAMESPACE
+
+namespace Qt3D {
+
+class QT3DOPENALSHARED_EXPORT OpenALAspect : public AbstractAspect
+{
+ Q_OBJECT
+public:
+ explicit OpenALAspect(QObject *parent = 0);
+
+ virtual void setWindow(QWindow *window) Q_DECL_OVERRIDE;
+
+ // QJobProviderInterface interface
+ QVector<QJobPtr> jobsToExecute() Q_DECL_OVERRIDE;
+
+ // AbstractAspect interface
+protected:
+ void registerAspectHelper(Node *rootObject) Q_DECL_OVERRIDE;
+ void unregisterAspectHelper(Node *rootObject) Q_DECL_OVERRIDE;
+ void initializeHelper(QAspectManager *aspectManager) Q_DECL_OVERRIDE;
+ void cleanupHelper() Q_DECL_OVERRIDE;
+};
+
+} // Qt3D
+
+QT_END_NAMESPACE
+
+#endif // QT3D_OPENALASPECT_H
diff --git a/src/openal/qt3dopenal_global.h b/src/openal/qt3dopenal_global.h
new file mode 100644
index 000000000..e3ca96e17
--- /dev/null
+++ b/src/openal/qt3dopenal_global.h
@@ -0,0 +1,57 @@
+/****************************************************************************
+**
+** Copyright (C) 2014 Klaralvdalens Datakonsult AB (KDAB).
+** Contact: http://www.qt-project.org/legal
+**
+** This file is part of the Qt3D module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:LGPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and Digia. For licensing terms and
+** conditions see http://qt.digia.com/licensing. For further information
+** use the contact form at http://qt.digia.com/contact-us.
+**
+** GNU Lesser General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU Lesser
+** General Public License version 2.1 as published by the Free Software
+** Foundation and appearing in the file LICENSE.LGPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU Lesser General Public License version 2.1 requirements
+** will be met: http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
+**
+** In addition, as a special exception, Digia gives you certain additional
+** rights. These rights are described in the Digia Qt LGPL Exception
+** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3.0 as published by the Free Software
+** Foundation and appearing in the file LICENSE.GPL included in the
+** packaging of this file. Please review the following information to
+** ensure the GNU General Public License version 3.0 requirements will be
+** met: http://www.gnu.org/copyleft/gpl.html.
+**
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+
+#ifndef QT3DOPENAL_GLOBAL_H
+#define QT3DOPENAL_GLOBAL_H
+
+#include <QtCore/qglobal.h>
+
+QT_BEGIN_NAMESPACE
+
+#if defined(QT3DOPENAL_LIBRARY)
+# define QT3DOPENALSHARED_EXPORT Q_DECL_EXPORT
+#else
+# define QT3DOPENALSHARED_EXPORT Q_DECL_IMPORT
+#endif
+
+QT_END_NAMESPACE
+
+#endif // QT3DOPENAL_GLOBAL_H
diff --git a/src/src.pro b/src/src.pro
index 9816756ac..0cbc23b0d 100644
--- a/src/src.pro
+++ b/src/src.pro
@@ -3,4 +3,5 @@ CONFIG += ordered
SUBDIRS += \
core \
render \
+ openal \
quick3d
diff --git a/sync.profile b/sync.profile
index 9515e877e..5cb1a7fb2 100644
--- a/sync.profile
+++ b/sync.profile
@@ -3,6 +3,7 @@
"Qt3DRenderer" => "$basedir/src/render",
"Qt3DQuick" => "$basedir/src/quick3d/quick3d",
"Qt3DQuickRenderer" => "$basedir/src/quick3d/quick3drenderer",
+ "Qt3DOpenAL" => "$basedir/src/openal",
);
%moduleheaders = ( # restrict the module headers to those found in relative path
);