aboutsummaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorChris Robinson <[email protected]>2021-12-17 04:07:00 -0800
committerChris Robinson <[email protected]>2021-12-17 04:07:00 -0800
commitc9537abfb1a9d1c94d6bf9aa0e6cfa2cda1ae94b (patch)
tree294ac9a7fa7a921e2ae9320cc59ed8ca9a1117e5 /core
parent21bdea776a1fca9f009470c6e5753cf78e208593 (diff)
Allocate voice properties in clusters
Diffstat (limited to 'core')
-rw-r--r--core/context.h4
-rw-r--r--core/voice.h2
2 files changed, 5 insertions, 1 deletions
diff --git a/core/context.h b/core/context.h
index 155ee167..0e531db0 100644
--- a/core/context.h
+++ b/core/context.h
@@ -122,6 +122,7 @@ struct ContextBase {
std::atomic<VoiceChange*> mCurrentVoiceChange{};
void allocVoiceChanges(size_t addcount);
+ void allocVoiceProps();
ContextParams mParams;
@@ -162,6 +163,9 @@ struct ContextBase {
using VoiceCluster = std::unique_ptr<Voice[]>;
al::vector<VoiceCluster> mVoiceClusters;
+ using VoicePropsCluster = std::unique_ptr<VoicePropsItem[]>;
+ al::vector<VoicePropsCluster> mVoicePropClusters;
+
ContextBase(DeviceBase *device);
ContextBase(const ContextBase&) = delete;
diff --git a/core/voice.h b/core/voice.h
index 8b5ae37f..d7168fb9 100644
--- a/core/voice.h
+++ b/core/voice.h
@@ -252,7 +252,7 @@ struct Voice {
al::vector<ChannelData> mChans{2};
Voice() = default;
- ~Voice() { delete mUpdate.exchange(nullptr, std::memory_order_acq_rel); }
+ ~Voice() = default;
Voice(const Voice&) = delete;
Voice& operator=(const Voice&) = delete;