Remove use of atomic_store and atomic_load

This commit is contained in:
sakertooth
2023-09-26 13:15:50 -04:00
parent 8e41e4cf4f
commit 7d87637679
9 changed files with 25 additions and 59 deletions

View File

@@ -165,8 +165,7 @@ void AudioFileProcessor::playNote( NotePlayHandle * _n,
if( ! _n->isFinished() )
{
// TODO C++20: Deprecated, use std::atomic<std::shared_ptr> instead
if (std::atomic_load(&m_sample)->play(_working_buffer + offset,
if (m_sample->play(_working_buffer + offset,
static_cast<Sample::PlaybackState*>(_n->m_pluginData),
frames, _n->frequency(),
static_cast<Sample::Loop>(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<std::shared_ptr> instead
std::atomic_store(&m_sample, std::make_shared<Sample>(std::move(buffer)));
m_sample = std::make_shared<Sample>(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<std::shared_ptr> instead
std::atomic_store(&m_sample, std::make_shared<Sample>(std::move(buffer)));
m_sample = std::make_shared<Sample>(gui::SampleLoader::createBufferFromFile(_audio_file));
loopPointChanged();
emit sampleUpdated();
}

View File

@@ -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<std::shared_ptr> instead
std::atomic_store(&m_sampleBuffer, std::shared_ptr<const SampleBuffer>(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<std::shared_ptr> 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<std::shared_ptr> instead
std::atomic_store(&m_osc[i]->m_sampleBuffer, std::shared_ptr<const SampleBuffer>(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<std::shared_ptr> 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);
}