diff --git a/src/sfizz/Buffer.h b/src/sfizz/Buffer.h index 9644f17d..0fd8dc29 100644 --- a/src/sfizz/Buffer.h +++ b/src/sfizz/Buffer.h @@ -65,44 +65,32 @@ protected: } public: - void newBuffer(int size) noexcept + template + void newBuffer(I size) noexcept { - numBuffers++; - bytes.fetch_add(size); + ++numBuffers; + bytes.fetch_add(static_cast(size)); } - void bufferResized(int oldSize, int newSize) noexcept + template + void bufferResized(I oldSize, I newSize) noexcept { - bytes.fetch_add(newSize); - bytes.fetch_sub(oldSize); + bytes.fetch_add(static_cast(newSize)); + bytes.fetch_sub(static_cast(oldSize)); } - void bufferDeleted(int size) noexcept + template + void bufferDeleted(I size) noexcept { - numBuffers--; - bytes.fetch_sub(size); + --numBuffers; + bytes.fetch_sub(static_cast(size)); } - void bufferDeleted(size_t size) noexcept - { - bufferDeleted(static_cast(size)); - } - - void bufferResized(size_t oldSize, size_t newSize) noexcept - { - bufferResized(static_cast(oldSize), static_cast(newSize)); - } - - void newBuffer(size_t size) noexcept - { - newBuffer(static_cast(size)); - } - - int getNumBuffers() const noexcept { return numBuffers; } - int getTotalBytes() const noexcept { return bytes; } + size_t getNumBuffers() const noexcept { return numBuffers; } + size_t getTotalBytes() const noexcept { return bytes; } private: - std::atomic numBuffers { 0 }; - std::atomic bytes { 0 }; + std::atomic numBuffers { 0 }; + std::atomic bytes { 0 }; };