summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTim Blechmann <[email protected]>2025-05-29 09:57:58 +0800
committerTim Blechmann <[email protected]>2025-06-28 14:01:39 +0800
commite6d969fc3889387f0bcc136521f932fd4913927f (patch)
tree3b408af022a76c6d6c4dfe753293f3850daadf33 /src
parent98291a2f6e2565b5834a1c740f792a30bc8a5f99 (diff)
QtAudio: promote from alias to namespaceHEADdev
We want to put more functionality into namespace QtAudio without polluting the (deprecated) QAudio namespace. * pull symbols from QAudio into QtAudio namespace * add inline constexpr variables for enum values * add shim for convertVolume as separate symbol This allows us to keep binary compatibility of the QAudio namespace, but use QtAudio for more functionality. Pick-to: 6.8 6.9 6.10 Change-Id: I286727d17b4bb6b58f6c8bec20af37269105d605 Reviewed-by: Artem Dyomin <[email protected]>
Diffstat (limited to 'src')
-rw-r--r--src/multimedia/audio/qaudio.h25
-rw-r--r--src/multimedia/audio/qtaudio.cpp19
2 files changed, 38 insertions, 6 deletions
diff --git a/src/multimedia/audio/qaudio.h b/src/multimedia/audio/qaudio.h
index c7d3eaa49..bcc75545b 100644
--- a/src/multimedia/audio/qaudio.h
+++ b/src/multimedia/audio/qaudio.h
@@ -12,7 +12,7 @@
QT_BEGIN_NAMESPACE
-// ### Qt7: Remove the QAudio namespace
+// ### Qt7: merge the QAudio namespace into QtAudio
#if defined(Q_QDOC)
namespace QtAudio
#else
@@ -48,7 +48,28 @@ Q_MULTIMEDIA_EXPORT float convertVolume(float volume, VolumeScale from, VolumeSc
} // namespace QtAudio
#if !defined(Q_QDOC)
-namespace QtAudio = QAudio;
+namespace QtAudio {
+using Error = QAudio::Error;
+using State = QAudio::State;
+using VolumeScale = QAudio::VolumeScale;
+
+inline constexpr auto NoError = QAudio::NoError;
+inline constexpr auto OpenError = QAudio::OpenError;
+inline constexpr auto IOError = QAudio::IOError;
+inline constexpr auto UnderrunError = QAudio::UnderrunError;
+inline constexpr auto FatalError = QAudio::FatalError;
+inline constexpr auto ActiveState = QAudio::ActiveState;
+inline constexpr auto SuspendedState = QAudio::SuspendedState;
+inline constexpr auto StoppedState = QAudio::StoppedState;
+inline constexpr auto IdleState = QAudio::IdleState;
+inline constexpr auto LinearVolumeScale = QAudio::LinearVolumeScale;
+inline constexpr auto CubicVolumeScale = QAudio::CubicVolumeScale;
+inline constexpr auto LogarithmicVolumeScale = QAudio::LogarithmicVolumeScale;
+inline constexpr auto DecibelVolumeScale = QAudio::DecibelVolumeScale;
+
+Q_MULTIMEDIA_EXPORT float convertVolume(float volume, VolumeScale from, VolumeScale to);
+
+} // namespace QtAudio
#endif
#ifndef QT_NO_DEBUG_STREAM
diff --git a/src/multimedia/audio/qtaudio.cpp b/src/multimedia/audio/qtaudio.cpp
index fa84e0786..3c3d6ee4b 100644
--- a/src/multimedia/audio/qtaudio.cpp
+++ b/src/multimedia/audio/qtaudio.cpp
@@ -69,11 +69,7 @@ QT_BEGIN_NAMESPACE
\sa QtAudio::convertVolume()
*/
-#if defined(Q_QDOC)
namespace QtAudio
-#else
-namespace QAudio
-#endif
{
/*!
@@ -176,8 +172,23 @@ float convertVolume(float volume, VolumeScale from, VolumeScale to)
return volume;
}
+} // namespace QtAudio
+
+#if !defined(Q_QDOC)
+
+// Qt7
+namespace QAudio {
+
+// ### Qt7 remove this implementation
+float convertVolume(float volume, VolumeScale from, VolumeScale to)
+{
+ return QtAudio::convertVolume(volume, from, to);
}
+} // namespace QAudio
+
+#endif
+
#ifndef QT_NO_DEBUG_STREAM
QDebug operator<<(QDebug dbg, QAudio::Error error)
{