diff options
author | Chris Robinson <[email protected]> | 2021-12-17 04:07:00 -0800 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2021-12-17 04:07:00 -0800 |
commit | c9537abfb1a9d1c94d6bf9aa0e6cfa2cda1ae94b (patch) | |
tree | 294ac9a7fa7a921e2ae9320cc59ed8ca9a1117e5 /core | |
parent | 21bdea776a1fca9f009470c6e5753cf78e208593 (diff) |
Allocate voice properties in clusters
Diffstat (limited to 'core')
-rw-r--r-- | core/context.h | 4 | ||||
-rw-r--r-- | core/voice.h | 2 |
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; |