diff --git a/include/SampleClip.h b/include/SampleClip.h index a975340cf..be5889479 100644 --- a/include/SampleClip.h +++ b/include/SampleClip.h @@ -65,8 +65,7 @@ public: std::shared_ptr sample() { - // TODO C++20: Deprecated, use std::atomic instead - return std::atomic_load(&m_sample); + return m_sample; } TimePos sampleLength() const; diff --git a/plugins/AudioFileProcessor/AudioFileProcessor.cpp b/plugins/AudioFileProcessor/AudioFileProcessor.cpp index 350540978..40f976ea7 100644 --- a/plugins/AudioFileProcessor/AudioFileProcessor.cpp +++ b/plugins/AudioFileProcessor/AudioFileProcessor.cpp @@ -165,8 +165,7 @@ void AudioFileProcessor::playNote( NotePlayHandle * _n, if( ! _n->isFinished() ) { - // TODO C++20: Deprecated, use std::atomic instead - if (std::atomic_load(&m_sample)->play(_working_buffer + offset, + if (m_sample->play(_working_buffer + offset, static_cast(_n->m_pluginData), frames, _n->frequency(), static_cast(m_loopModel.value()))) @@ -237,9 +236,7 @@ void AudioFileProcessor::loadSettings(const QDomElement& elem) } else if (!elem.attribute("sampledata").isEmpty()) { - auto buffer = gui::SampleLoader::createBufferFromBase64(elem.attribute("srcdata")); - // TODO C++20: Deprecated, use std::atomic instead - std::atomic_store(&m_sample, std::make_shared(std::move(buffer))); + m_sample = std::make_shared(gui::SampleLoader::createBufferFromBase64(elem.attribute("srcdata"))); } m_loopModel.loadSettings(elem, "looped"); @@ -327,10 +324,7 @@ void AudioFileProcessor::setAudioFile( const QString & _audio_file, } // else we don't touch the track-name, because the user named it self - auto buffer = gui::SampleLoader::createBufferFromFile(_audio_file); - // TODO C++20: Deprecated, use std::atomic instead - std::atomic_store(&m_sample, std::make_shared(std::move(buffer))); - + m_sample = std::make_shared(gui::SampleLoader::createBufferFromFile(_audio_file)); loopPointChanged(); emit sampleUpdated(); } diff --git a/plugins/TripleOscillator/TripleOscillator.cpp b/plugins/TripleOscillator/TripleOscillator.cpp index 968f6b25b..d540d1b7f 100644 --- a/plugins/TripleOscillator/TripleOscillator.cpp +++ b/plugins/TripleOscillator/TripleOscillator.cpp @@ -146,9 +146,7 @@ void OscillatorObject::oscUserDefWaveDblClick() QString af = gui::SampleLoader::openWaveformFile(); if (af != "") { - auto buffer = gui::SampleLoader::createBufferFromFile(af); - // TODO C++20: Deprecated, use std::atomic instead - std::atomic_store(&m_sampleBuffer, std::shared_ptr(std::move(buffer))); + m_sampleBuffer = gui::SampleLoader::createBufferFromFile(af); // TODO: //m_usrWaveBtn->setToolTip(m_sampleBuffer->audioFile()); @@ -262,8 +260,7 @@ void TripleOscillator::saveSettings( QDomDocument & _doc, QDomElement & _this ) "modalgo" + QString::number( i+1 ) ); m_osc[i]->m_useWaveTableModel.saveSettings( _doc, _this, "useWaveTable" + QString::number (i+1 ) ); - // TODO C++20: Deprecated, use std::atomic instead - _this.setAttribute("userwavefile" + is, std::atomic_load(&m_osc[i]->m_sampleBuffer)->audioFile()); + _this.setAttribute("userwavefile" + is, m_osc[i]->m_sampleBuffer->audioFile()); } } @@ -293,9 +290,7 @@ void TripleOscillator::loadSettings( const QDomElement & _this ) if (!_this.attribute("userwavefile" + is).isEmpty()) { - auto buffer = gui::SampleLoader::createBufferFromFile(_this.attribute("userwavefile" + is)); - // TODO C++20: Deprecated, use std::atomic instead - std::atomic_store(&m_osc[i]->m_sampleBuffer, std::shared_ptr(std::move(buffer))); + m_osc[i]->m_sampleBuffer = gui::SampleLoader::createBufferFromFile(_this.attribute("userwavefile" + is)); } } } @@ -363,10 +358,8 @@ void TripleOscillator::playNote( NotePlayHandle * _n, oscs_r[i + 1] ); oscs_r[i]->setUseWaveTable(m_osc[i]->m_useWaveTable); } - - // TODO C++20: Deprecated, use std::atomic instead - oscs_l[i]->setUserWave(std::atomic_load(&m_osc[i]->m_sampleBuffer)); - oscs_r[i]->setUserWave(std::atomic_load(&m_osc[i]->m_sampleBuffer)); + oscs_l[i]->setUserWave(m_osc[i]->m_sampleBuffer); + oscs_r[i]->setUserWave(m_osc[i]->m_sampleBuffer); } diff --git a/src/core/EnvelopeAndLfoParameters.cpp b/src/core/EnvelopeAndLfoParameters.cpp index b64b24afb..9fac4281b 100644 --- a/src/core/EnvelopeAndLfoParameters.cpp +++ b/src/core/EnvelopeAndLfoParameters.cpp @@ -222,7 +222,7 @@ inline sample_t EnvelopeAndLfoParameters::lfoShapeSample( fpp_t _frame_offset ) shape_sample = Oscillator::sawSample( phase ); break; case LfoShape::UserDefinedWave: - shape_sample = Oscillator::userWaveSample(std::atomic_load(&m_userWave).get(), phase); + shape_sample = Oscillator::userWaveSample(m_userWave.get(), phase); break; case LfoShape::RandomWave: if( frame == 0 ) @@ -355,9 +355,7 @@ void EnvelopeAndLfoParameters::saveSettings( QDomDocument & _doc, m_lfoAmountModel.saveSettings( _doc, _parent, "lamt" ); m_x100Model.saveSettings( _doc, _parent, "x100" ); m_controlEnvAmountModel.saveSettings( _doc, _parent, "ctlenvamt" ); - - // TODO C++20: Deprecated, use std::atomic instead - _parent.setAttribute("userwavefile", std::atomic_load(&m_userWave)->audioFile()); + _parent.setAttribute("userwavefile", m_userWave->audioFile()); } @@ -391,9 +389,7 @@ void EnvelopeAndLfoParameters::loadSettings( const QDomElement & _this ) if (!_this.attribute("userwavefile").isEmpty()) { - auto buffer = gui::SampleLoader::createBufferFromFile(_this.attribute("userwavefile")); - // TODO C++20: Deprecated, use std::atomic instead - std::atomic_store(&m_userWave, std::shared_ptr(std::move(buffer))); + m_userWave = gui::SampleLoader::createBufferFromFile(_this.attribute("userwavefile")); } updateSampleVars(); diff --git a/src/core/LfoController.cpp b/src/core/LfoController.cpp index 6532b5741..e0f2e390f 100644 --- a/src/core/LfoController.cpp +++ b/src/core/LfoController.cpp @@ -122,7 +122,7 @@ void LfoController::updateValueBuffer() } case Oscillator::WaveShape::UserDefined: { - currentSample = Oscillator::userWaveSample(std::atomic_load(&m_userDefSampleBuffer).get(), phase); + currentSample = Oscillator::userWaveSample(m_userDefSampleBuffer.get(), phase); break; } default: @@ -222,8 +222,7 @@ void LfoController::saveSettings( QDomDocument & _doc, QDomElement & _this ) m_phaseModel.saveSettings( _doc, _this, "phase" ); m_waveModel.saveSettings( _doc, _this, "wave" ); m_multiplierModel.saveSettings( _doc, _this, "multiplier" ); - // TODO C++20: Deprecated, use std::atomic instead - _this.setAttribute("userwavefile", std::atomic_load(&m_userDefSampleBuffer)->audioFile()); + _this.setAttribute("userwavefile", m_userDefSampleBuffer->audioFile()); } @@ -241,9 +240,7 @@ void LfoController::loadSettings( const QDomElement & _this ) if (!_this.attribute("userwavefile").isEmpty()) { - auto buffer = gui::SampleLoader::createBufferFromFile(_this.attribute("userwavefile")); - // TODO C++20: Deprecated, use std::atomic instead - std::atomic_store(&m_userDefSampleBuffer, std::shared_ptr(std::move(buffer))); + m_userDefSampleBuffer = gui::SampleLoader::createBufferFromFile(_this.attribute("userwavefile")); } updateSampleFunction(); diff --git a/src/core/Oscillator.cpp b/src/core/Oscillator.cpp index becd9f5db..2d55c5dd2 100644 --- a/src/core/Oscillator.cpp +++ b/src/core/Oscillator.cpp @@ -814,8 +814,7 @@ inline sample_t Oscillator::getSample( } else { - // TODO C++20: Deprecated, use std::atomic instead - return userWaveSample(std::atomic_load(&m_userWave).get(), _sample); + return userWaveSample(m_userWave.get(), _sample); } } diff --git a/src/core/SampleClip.cpp b/src/core/SampleClip.cpp index a1e422881..ffba0465e 100644 --- a/src/core/SampleClip.cpp +++ b/src/core/SampleClip.cpp @@ -90,8 +90,7 @@ SampleClip::SampleClip( Track * _track ) : SampleClip::SampleClip(const SampleClip& orig) : SampleClip(orig.getTrack()) { - // TODO C++20: Deprecated, use std::atomic instead - std::atomic_store(&m_sample, orig.m_sample); + m_sample = orig.m_sample; m_isPlaying = orig.m_isPlaying; } @@ -125,9 +124,7 @@ const QString& SampleClip::sampleFile() const void SampleClip::setSampleBuffer(std::unique_ptr sb) { - // TODO C++20: Deprecated, use std::atomic instead - auto buffer = std::shared_ptr(std::move(sb)); - std::atomic_store(&m_sample, std::make_shared(buffer)); + m_sample = std::make_shared(std::shared_ptr(std::move(sb))); updateLength(); emit sampleChanged(); @@ -142,9 +139,7 @@ void SampleClip::setSampleFile(const QString & sf) if (!sf.isEmpty()) { //Otherwise set it to the sample's length - auto buffer = gui::SampleLoader::createBufferFromFile(sf); - // TODO C++20: Deprecated, use std::atomic instead - std::atomic_store(&m_sample, std::make_shared(std::move(buffer))); + m_sample = std::make_shared(gui::SampleLoader::createBufferFromFile(sf)); length = sampleLength(); } @@ -293,8 +288,7 @@ void SampleClip::loadSettings( const QDomElement & _this ) Engine::audioEngine()->processingSampleRate(); auto buffer = gui::SampleLoader::createBufferFromBase64(_this.attribute("data"), sampleRate); - // TODO C++20: Deprecated, use std::atomic instead - std::atomic_store(&m_sample, std::make_shared(std::move(buffer))); + m_sample = std::make_shared(std::move(buffer)); } changeLength( _this.attribute( "len" ).toInt() ); setMuted( _this.attribute( "muted" ).toInt() ); diff --git a/src/gui/LfoControllerDialog.cpp b/src/gui/LfoControllerDialog.cpp index f3549a1c0..c13e0563e 100644 --- a/src/gui/LfoControllerDialog.cpp +++ b/src/gui/LfoControllerDialog.cpp @@ -216,9 +216,7 @@ void LfoControllerDialog::askUserDefWave() if (!fileName.isEmpty()) { - auto buffer = SampleLoader::createBufferFromFile(fileName); - // TODO C++20: Deprecated, use std::atomic instead - std::atomic_store(&sampleBuffer, std::shared_ptr(std::move(buffer))); + sampleBuffer = SampleLoader::createBufferFromFile(fileName); // TODO: m_userWaveBtn->setToolTip(sampleBuffer->audioFile()); diff --git a/src/gui/instrument/EnvelopeAndLfoView.cpp b/src/gui/instrument/EnvelopeAndLfoView.cpp index db3ec5a82..9182b9d03 100644 --- a/src/gui/instrument/EnvelopeAndLfoView.cpp +++ b/src/gui/instrument/EnvelopeAndLfoView.cpp @@ -325,9 +325,7 @@ void EnvelopeAndLfoView::dropEvent( QDropEvent * _de ) { if (!value.isEmpty()) { - auto buffer = SampleLoader::createBufferFromFile(value); - // TODO C++20: Deprecated, use std::atomic instead - std::atomic_store(&m_params->m_userWave, std::shared_ptr(std::move(buffer))); + m_params->m_userWave = SampleLoader::createBufferFromFile(value); } m_userLfoBtn->model()->setValue( true ); @@ -345,8 +343,7 @@ void EnvelopeAndLfoView::dropEvent( QDropEvent * _de ) if (!file.isEmpty()) { auto buffer = SampleLoader::createBufferFromFile(file); - // TODO C++20: Deprecated, use std::atomic instead - std::atomic_store(&m_params->m_userWave, std::shared_ptr(std::move(buffer))); + m_params->m_userWave = std::shared_ptr(std::move(buffer)); } m_userLfoBtn->model()->setValue( true ); @@ -495,8 +492,7 @@ void EnvelopeAndLfoView::paintEvent( QPaintEvent * ) val = m_randomGraph; break; case EnvelopeAndLfoParameters::LfoShape::UserDefinedWave: - // TODO C++20: Deprecated, use std::atomic instead - val = Oscillator::userWaveSample(std::atomic_load(&m_params->m_userWave).get(), phase); + val = Oscillator::userWaveSample(m_params->m_userWave.get(), phase); break; } if( static_cast( cur_sample ) <= @@ -547,4 +543,4 @@ void EnvelopeAndLfoView::lfoUserWaveChanged() } // namespace gui -} // namespace lmms \ No newline at end of file +} // namespace lmms