diff options
author | Chris Robinson <[email protected]> | 2021-01-24 02:07:39 -0800 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2021-01-24 02:07:39 -0800 |
commit | 13c1d7efb7141aee93d32a60c0e609e61a64f550 (patch) | |
tree | c788c53507811f8adb8a33ee668c014f66d9b8fa /alc/buffer_storage.h | |
parent | 3142fb30eaa451c955a1607b8cffe2069cbd15b2 (diff) |
Store buffer info in the queue entry
Diffstat (limited to 'alc/buffer_storage.h')
-rw-r--r-- | alc/buffer_storage.h | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/alc/buffer_storage.h b/alc/buffer_storage.h index 80ccbc7b..d6518bc0 100644 --- a/alc/buffer_storage.h +++ b/alc/buffer_storage.h @@ -5,7 +5,7 @@ #include "albyte.h" #include "almalloc.h" -#include "vector.h" +#include "alspan.h" using uint = unsigned int; @@ -50,8 +50,6 @@ inline uint FrameSizeFromFmt(FmtChannels chans, FmtType type, uint ambiorder) no using CallbackType = int(*)(void*, void*, int); struct BufferStorage { - al::vector<al::byte,16> mData; - CallbackType mCallback{nullptr}; void *mUserData{nullptr}; @@ -64,9 +62,6 @@ struct BufferStorage { AmbiScaling mAmbiScaling{AmbiScaling::FuMa}; uint mAmbiOrder{0u}; - uint mLoopStart{0u}; - uint mLoopEnd{0u}; - inline uint bytesFromFmt() const noexcept { return BytesFromFmt(mType); } inline uint channelsFromFmt() const noexcept { return ChannelsFromFmt(mChannels, mAmbiOrder); } @@ -80,6 +75,10 @@ struct BufferStorage { struct BufferlistItem { std::atomic<BufferlistItem*> mNext{nullptr}; uint mSampleLen{0u}; + uint mLoopStart{0u}; + uint mLoopEnd{0u}; + al::span<al::byte> mSamples; + BufferStorage *mBuffer{nullptr}; DEF_NEWDEL(BufferlistItem) |