diff options
-rw-r--r-- | src/openal/openal.pri | 8 | ||||
-rw-r--r-- | src/openal/openal.pro | 28 | ||||
-rw-r--r-- | src/openal/openalaspect.cpp | 87 | ||||
-rw-r--r-- | src/openal/openalaspect.h | 75 | ||||
-rw-r--r-- | src/openal/qt3dopenal_global.h | 57 | ||||
-rw-r--r-- | src/src.pro | 1 | ||||
-rw-r--r-- | sync.profile | 1 |
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 ); |