From d6a5ff8c8256662444becd075a4bcdebdce69f7f Mon Sep 17 00:00:00 2001 From: Uwe Klotz Date: Sun, 19 Sep 2021 08:56:39 +0200 Subject: Move compatibility workarounds for QMutex into new subdirectory --- src/controllers/controllermanager.cpp | 2 +- src/engine/cachingreader/cachingreaderworker.cpp | 2 +- src/engine/controls/cuecontrol.h | 2 +- src/engine/engineworkerscheduler.cpp | 2 +- src/errordialoghandler.cpp | 2 +- src/library/scanner/scannerglobal.h | 2 +- src/mixer/playerinfo.cpp | 2 +- src/mixer/playermanager.h | 2 +- src/track/cue.cpp | 2 +- src/track/keyutils.cpp | 2 +- src/track/track.h | 2 +- src/util/compatibility/qmutex.h | 40 ++++++++++++++++++++++++ src/util/logging.cpp | 2 +- src/util/mutex.h | 2 +- src/util/qtmutex.h | 40 ------------------------ src/util/sandbox.h | 2 +- src/util/statsmanager.cpp | 2 +- src/util/tapfilter.cpp | 2 +- src/vinylcontrol/vinylcontrolprocessor.h | 2 +- src/waveform/waveform.h | 6 ++-- src/widget/wlibrary.h | 2 +- 21 files changed, 61 insertions(+), 61 deletions(-) create mode 100644 src/util/compatibility/qmutex.h delete mode 100644 src/util/qtmutex.h (limited to 'src') diff --git a/src/controllers/controllermanager.cpp b/src/controllers/controllermanager.cpp index 606a45132a..0aee05c07f 100644 --- a/src/controllers/controllermanager.cpp +++ b/src/controllers/controllermanager.cpp @@ -8,7 +8,7 @@ #include "controllers/midi/portmidienumerator.h" #include "moc_controllermanager.cpp" #include "util/cmdlineargs.h" -#include "util/qtmutex.h" +#include "util/compatibility/qmutex.h" #include "util/time.h" #include "util/trace.h" #ifdef __HSS1394__ diff --git a/src/engine/cachingreader/cachingreaderworker.cpp b/src/engine/cachingreader/cachingreaderworker.cpp index 515b8d7e9c..4f0550905b 100644 --- a/src/engine/cachingreader/cachingreaderworker.cpp +++ b/src/engine/cachingreader/cachingreaderworker.cpp @@ -9,9 +9,9 @@ #include "sources/soundsourceproxy.h" #include "track/track.h" #include "util/compatibility.h" +#include "util/compatibility/qmutex.h" #include "util/event.h" #include "util/logger.h" -#include "util/qtmutex.h" namespace { diff --git a/src/engine/controls/cuecontrol.h b/src/engine/controls/cuecontrol.h index 2d26732f91..4af00fb3a1 100644 --- a/src/engine/controls/cuecontrol.h +++ b/src/engine/controls/cuecontrol.h @@ -11,8 +11,8 @@ #include "preferences/usersettings.h" #include "track/cue.h" #include "track/track_decl.h" +#include "util/compatibility/qmutex.h" #include "util/parented_ptr.h" -#include "util/qtmutex.h" #define NUM_HOT_CUES 37 diff --git a/src/engine/engineworkerscheduler.cpp b/src/engine/engineworkerscheduler.cpp index 120ff794ad..650ccbcb3c 100644 --- a/src/engine/engineworkerscheduler.cpp +++ b/src/engine/engineworkerscheduler.cpp @@ -4,8 +4,8 @@ #include "engine/engineworker.h" #include "moc_engineworkerscheduler.cpp" +#include "util/compatibility/qmutex.h" #include "util/event.h" -#include "util/qtmutex.h" EngineWorkerScheduler::EngineWorkerScheduler(QObject* pParent) : m_bWakeScheduler(false), diff --git a/src/errordialoghandler.cpp b/src/errordialoghandler.cpp index 276e898632..8f6b4961d1 100644 --- a/src/errordialoghandler.cpp +++ b/src/errordialoghandler.cpp @@ -8,7 +8,7 @@ #include "moc_errordialoghandler.cpp" #include "util/assert.h" -#include "util/qtmutex.h" +#include "util/compatibility/qmutex.h" #include "util/versionstore.h" ErrorDialogProperties::ErrorDialogProperties() diff --git a/src/library/scanner/scannerglobal.h b/src/library/scanner/scannerglobal.h index 82687e9a68..b19186b15f 100644 --- a/src/library/scanner/scannerglobal.h +++ b/src/library/scanner/scannerglobal.h @@ -10,9 +10,9 @@ #include #include "util/cache.h" +#include "util/compatibility/qmutex.h" #include "util/fileaccess.h" #include "util/performancetimer.h" -#include "util/qtmutex.h" #include "util/task.h" class ScannerGlobal { diff --git a/src/mixer/playerinfo.cpp b/src/mixer/playerinfo.cpp index c0e0f749a8..3f4a1dc7bd 100644 --- a/src/mixer/playerinfo.cpp +++ b/src/mixer/playerinfo.cpp @@ -9,7 +9,7 @@ #include "mixer/playermanager.h" #include "moc_playerinfo.cpp" #include "track/track.h" -#include "util/qtmutex.h" +#include "util/compatibility/qmutex.h" namespace { diff --git a/src/mixer/playermanager.h b/src/mixer/playermanager.h index f1bba67615..b48a02882d 100644 --- a/src/mixer/playermanager.h +++ b/src/mixer/playermanager.h @@ -9,9 +9,9 @@ #include "engine/channelhandle.h" #include "preferences/usersettings.h" #include "track/track_decl.h" +#include "util/compatibility/qmutex.h" #include "util/parented_ptr.h" #include "util/performancetimer.h" -#include "util/qtmutex.h" class Auxiliary; class BaseTrackPlayer; diff --git a/src/track/cue.cpp b/src/track/cue.cpp index 9b50216ec3..e65707ddd5 100644 --- a/src/track/cue.cpp +++ b/src/track/cue.cpp @@ -9,7 +9,7 @@ #include "util/assert.h" #include "util/color/color.h" #include "util/color/predefinedcolorpalettes.h" -#include "util/qtmutex.h" +#include "util/compatibility/qmutex.h" namespace { diff --git a/src/track/keyutils.cpp b/src/track/keyutils.cpp index 5d020f5978..62637f6682 100644 --- a/src/track/keyutils.cpp +++ b/src/track/keyutils.cpp @@ -6,8 +6,8 @@ #include #include +#include "util/compatibility/qmutex.h" #include "util/math.h" -#include "util/qtmutex.h" #define MUSIC_FLAT_UTF8 "\xe299ad" #define MUSIC_SHARP_UTF8 "\xe299af" diff --git a/src/track/track.h b/src/track/track.h index c5595d141b..c737a0d997 100644 --- a/src/track/track.h +++ b/src/track/track.h @@ -11,9 +11,9 @@ #include "track/cueinfoimporter.h" #include "track/track_decl.h" #include "track/trackrecord.h" +#include "util/compatibility/qmutex.h" #include "util/fileaccess.h" #include "util/memory.h" -#include "util/qtmutex.h" #include "waveform/waveform.h" class Track : public QObject { diff --git a/src/util/compatibility/qmutex.h b/src/util/compatibility/qmutex.h new file mode 100644 index 0000000000..e0df27e7e5 --- /dev/null +++ b/src/util/compatibility/qmutex.h @@ -0,0 +1,40 @@ +#pragma once + +#include +#include +#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) +#include +#endif + +/// Transitional utility macros and functions to migrate from +/// non-templated QMutexLocker in Qt5 to templated +/// QMutexLocker in Qt6. Also includes some helpers +/// to avoid conditional compilation for QRecursiveMutex that +/// has been introduced in Qt 5.14.0. + +#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) +#define QT_RECURSIVE_MUTEX QRecursiveMutex +#define QT_RECURSIVE_MUTEX_INIT +#else +#define QT_RECURSIVE_MUTEX QMutex +#define QT_RECURSIVE_MUTEX_INIT QMutex::Recursive +#endif + +#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) +#define QT_MUTEX_LOCKER_TYPE(MUTEX_TYPE) QMutexLocker +#else +#define QT_MUTEX_LOCKER_TYPE(MUTEX_TYPE) QMutexLocker +#endif + +#define QT_MUTEX_LOCKER QT_MUTEX_LOCKER_TYPE(QMutex) +#define QT_RECURSIVE_MUTEX_LOCKER QT_MUTEX_LOCKER_TYPE(QT_RECURSIVE_MUTEX) + +[[nodiscard]] inline QT_MUTEX_LOCKER lockMutex(QMutex* pMutex) { + return QT_MUTEX_LOCKER(pMutex); +} + +#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) +[[nodiscard]] inline QT_RECURSIVE_MUTEX_LOCKER lockMutex(QRecursiveMutex* pMutex) { + return QT_RECURSIVE_MUTEX_LOCKER(pMutex); +} +#endif diff --git a/src/util/logging.cpp b/src/util/logging.cpp index fe64be0fb5..1109596bbc 100644 --- a/src/util/logging.cpp +++ b/src/util/logging.cpp @@ -17,7 +17,7 @@ #include "controllers/controllerdebug.h" #include "util/assert.h" #include "util/cmdlineargs.h" -#include "util/qtmutex.h" +#include "util/compatibility/qmutex.h" namespace { diff --git a/src/util/mutex.h b/src/util/mutex.h index c7eef850b9..c9c314d167 100644 --- a/src/util/mutex.h +++ b/src/util/mutex.h @@ -8,7 +8,7 @@ #include #include -#include "util/qtmutex.h" +#include "util/compatibility/qmutex.h" #include "util/thread_annotations.h" class CAPABILITY("mutex") MMutex { diff --git a/src/util/qtmutex.h b/src/util/qtmutex.h deleted file mode 100644 index e0df27e7e5..0000000000 --- a/src/util/qtmutex.h +++ /dev/null @@ -1,40 +0,0 @@ -#pragma once - -#include -#include -#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) -#include -#endif - -/// Transitional utility macros and functions to migrate from -/// non-templated QMutexLocker in Qt5 to templated -/// QMutexLocker in Qt6. Also includes some helpers -/// to avoid conditional compilation for QRecursiveMutex that -/// has been introduced in Qt 5.14.0. - -#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) -#define QT_RECURSIVE_MUTEX QRecursiveMutex -#define QT_RECURSIVE_MUTEX_INIT -#else -#define QT_RECURSIVE_MUTEX QMutex -#define QT_RECURSIVE_MUTEX_INIT QMutex::Recursive -#endif - -#if QT_VERSION >= QT_VERSION_CHECK(6, 0, 0) -#define QT_MUTEX_LOCKER_TYPE(MUTEX_TYPE) QMutexLocker -#else -#define QT_MUTEX_LOCKER_TYPE(MUTEX_TYPE) QMutexLocker -#endif - -#define QT_MUTEX_LOCKER QT_MUTEX_LOCKER_TYPE(QMutex) -#define QT_RECURSIVE_MUTEX_LOCKER QT_MUTEX_LOCKER_TYPE(QT_RECURSIVE_MUTEX) - -[[nodiscard]] inline QT_MUTEX_LOCKER lockMutex(QMutex* pMutex) { - return QT_MUTEX_LOCKER(pMutex); -} - -#if QT_VERSION >= QT_VERSION_CHECK(5, 14, 0) -[[nodiscard]] inline QT_RECURSIVE_MUTEX_LOCKER lockMutex(QRecursiveMutex* pMutex) { - return QT_RECURSIVE_MUTEX_LOCKER(pMutex); -} -#endif diff --git a/src/util/sandbox.h b/src/util/sandbox.h index 8187fc296f..dbf9598bd5 100644 --- a/src/util/sandbox.h +++ b/src/util/sandbox.h @@ -8,8 +8,8 @@ #include #include "preferences/configobject.h" +#include "util/compatibility/qmutex.h" #include "util/fileinfo.h" -#include "util/qtmutex.h" #ifdef Q_OS_MAC #include diff --git a/src/util/statsmanager.cpp b/src/util/statsmanager.cpp index fb349d314f..6156bcd7e3 100644 --- a/src/util/statsmanager.cpp +++ b/src/util/statsmanager.cpp @@ -9,7 +9,7 @@ #include "moc_statsmanager.cpp" #include "util/cmdlineargs.h" #include "util/compatibility.h" -#include "util/qtmutex.h" +#include "util/compatibility/qmutex.h" // In practice we process stats pipes about once a minute @1ms latency. const int kStatsPipeSize = 1 << 10; diff --git a/src/util/tapfilter.cpp b/src/util/tapfilter.cpp index 4b3234d848..0be820d00e 100644 --- a/src/util/tapfilter.cpp +++ b/src/util/tapfilter.cpp @@ -1,7 +1,7 @@ #include "util/tapfilter.h" #include "moc_tapfilter.cpp" -#include "util/qtmutex.h" +#include "util/compatibility/qmutex.h" TapFilter::TapFilter(QObject* pParent, int filterLength, mixxx::Duration maxInterval) : QObject(pParent), diff --git a/src/vinylcontrol/vinylcontrolprocessor.h b/src/vinylcontrol/vinylcontrolprocessor.h index 6184a08944..defe9cdbe2 100644 --- a/src/vinylcontrol/vinylcontrolprocessor.h +++ b/src/vinylcontrol/vinylcontrolprocessor.h @@ -8,8 +8,8 @@ #include "preferences/usersettings.h" #include "soundio/soundmanagerutil.h" +#include "util/compatibility/qmutex.h" #include "util/fifo.h" -#include "util/qtmutex.h" #include "vinylcontrol/vinylsignalquality.h" class VinylControl; diff --git a/src/waveform/waveform.h b/src/waveform/waveform.h index f6019e57b5..a5484c34c8 100644 --- a/src/waveform/waveform.h +++ b/src/waveform/waveform.h @@ -10,7 +10,7 @@ #include "util/class.h" #include "util/compatibility.h" -#include "util/qtmutex.h" +#include "util/compatibility/qmutex.h" enum FilterIndex { Low = 0, Mid = 1, High = 2, FilterCount = 3}; enum ChannelIndex { Left = 0, Right = 1, ChannelCount = 2}; @@ -32,7 +32,7 @@ class Waveform { public: enum class SaveState { NotSaved = 0, - SavePending, + SavePending, Saved }; @@ -84,7 +84,7 @@ class Waveform { return m_saveState; } - // AnalysisDAO needs to be able to change the state to savePending when finished + // AnalysisDAO needs to be able to change the state to savePending when finished // so we mark this as const and m_saveState mutable. void setSaveState(SaveState eState) const { m_saveState = eState; diff --git a/src/widget/wlibrary.h b/src/widget/wlibrary.h index 33602b942f..0b2c1399bf 100644 --- a/src/widget/wlibrary.h +++ b/src/widget/wlibrary.h @@ -8,7 +8,7 @@ #include "library/libraryview.h" #include "skin/legacy/skincontext.h" -#include "util/qtmutex.h" +#include "util/compatibility/qmutex.h" #include "widget/wbasewidget.h" class KeyboardEventFilter; -- cgit v1.2.3