summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTim Blechmann <[email protected]>2025-05-15 16:31:08 +0200
committerTim Blechmann <[email protected]>2025-05-23 16:15:21 +0200
commitbc782f538c2afe70457a14c5102cbf978740fa60 (patch)
treeeb5873bbb019996c1e4dd6146a91f5aee0afc197
parent8aca073ec8e6a1a9d26d63f6ce7afbce66896f1f (diff)
SpatialAudio: QAudioListener cleanupsHEADdev
use QObjectPrivate, sort includes and fix inclusion guards Pick-to: 6.8 6.9 Change-Id: I4baa7dc98a8b50b2c65eeef42f7e78a3011e82f4 Reviewed-by: Artem Dyomin <[email protected]>
-rw-r--r--src/spatialaudio/qaudiolistener.cpp30
-rw-r--r--src/spatialaudio/qaudiolistener.h15
2 files changed, 28 insertions, 17 deletions
diff --git a/src/spatialaudio/qaudiolistener.cpp b/src/spatialaudio/qaudiolistener.cpp
index ed4dbd58e..e4e7f77f7 100644
--- a/src/spatialaudio/qaudiolistener.cpp
+++ b/src/spatialaudio/qaudiolistener.cpp
@@ -1,16 +1,17 @@
// Copyright (C) 2022 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-3.0-only
+
#include "qaudiolistener.h"
-#include "qaudioengine_p.h"
-#include "resonance_audio.h"
-#include <qaudiosink.h>
-#include <qurl.h>
-#include <qdebug.h>
-#include <qaudiodecoder.h>
+
+#include <QtSpatialAudio/private/qaudioengine_p.h>
+#include <QtMultimedia/qaudiosink.h>
+#include <QtCore/private/qobject_p.h>
+
+#include <resonance_audio.h>
QT_BEGIN_NAMESPACE
-class QAudioListenerPrivate
+class QAudioListenerPrivate : public QObjectPrivate
{
public:
QAudioEngine *engine = nullptr;
@@ -34,9 +35,9 @@ public:
/*!
Creates a listener for the spatial audio engine for \a engine.
*/
-QAudioListener::QAudioListener(QAudioEngine *engine)
- : d(new QAudioListenerPrivate)
+QAudioListener::QAudioListener(QAudioEngine *engine) : QObject(*new QAudioListenerPrivate)
{
+ QT6_ONLY((void)unused); // silence unused private field
setEngine(engine);
}
@@ -47,7 +48,6 @@ QAudioListener::~QAudioListener()
{
// Unregister this listener from the engine
setEngine(nullptr);
- delete d;
}
/*!
@@ -58,6 +58,8 @@ QAudioListener::~QAudioListener()
*/
void QAudioListener::setPosition(QVector3D pos)
{
+ Q_D(QAudioListener);
+
auto *ep = QAudioEnginePrivate::get(d->engine);
if (!ep)
return;
@@ -77,10 +79,12 @@ void QAudioListener::setPosition(QVector3D pos)
*/
QVector3D QAudioListener::position() const
{
+ Q_D(const QAudioListener);
auto *ep = QAudioEnginePrivate::get(d->engine);
if (!ep)
return QVector3D();
- return d->pos/ep->distanceScale;
+
+ return d->pos / ep->distanceScale;
}
/*!
@@ -88,6 +92,7 @@ QVector3D QAudioListener::position() const
*/
void QAudioListener::setRotation(const QQuaternion &q)
{
+ Q_D(QAudioListener);
d->rotation = q;
auto *ep = QAudioEnginePrivate::get(d->engine);
if (ep && ep->resonanceAudio->api)
@@ -99,6 +104,7 @@ void QAudioListener::setRotation(const QQuaternion &q)
*/
QQuaternion QAudioListener::rotation() const
{
+ Q_D(const QAudioListener);
return d->rotation;
}
@@ -107,6 +113,7 @@ QQuaternion QAudioListener::rotation() const
*/
void QAudioListener::setEngine(QAudioEngine *engine)
{
+ Q_D(QAudioListener);
if (d->engine) {
auto *ed = QAudioEnginePrivate::get(d->engine);
ed->listener = nullptr;
@@ -128,6 +135,7 @@ void QAudioListener::setEngine(QAudioEngine *engine)
*/
QAudioEngine *QAudioListener::engine() const
{
+ Q_D(const QAudioListener);
return d->engine;
}
diff --git a/src/spatialaudio/qaudiolistener.h b/src/spatialaudio/qaudiolistener.h
index 966e78c49..6ef0a41ce 100644
--- a/src/spatialaudio/qaudiolistener.h
+++ b/src/spatialaudio/qaudiolistener.h
@@ -1,19 +1,19 @@
// Copyright (C) 2022 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-3.0-only
-#ifndef QLISTENER_H
-#define QLISTENER_H
+#ifndef QAUDIOLISTENER_H
+#define QAUDIOLISTENER_H
#include <QtSpatialAudio/qtspatialaudioglobal.h>
-#include <QtCore/QObject>
#include <QtMultimedia/qaudioformat.h>
+#include <QtCore/qobject.h>
#include <QtGui/qvector3d.h>
#include <QtGui/qquaternion.h>
QT_BEGIN_NAMESPACE
class QAudioEngine;
-
class QAudioListenerPrivate;
+
class Q_SPATIALAUDIO_EXPORT QAudioListener : public QObject
{
public:
@@ -29,9 +29,12 @@ public:
private:
void setEngine(QAudioEngine *engine);
- QAudioListenerPrivate *d = nullptr;
+ Q_DECLARE_PRIVATE(QAudioListener)
+
+ // ### Qt7: remove unused member
+ QT6_ONLY(void *unused = nullptr;) // for ABI compatibility
};
QT_END_NAMESPACE
-#endif
+#endif // QAUDIOLISTENER_H