diff --git a/openVulkanoCpp/Base/Observable.hpp b/openVulkanoCpp/Base/Observable.hpp index 7688066..041b854 100644 --- a/openVulkanoCpp/Base/Observable.hpp +++ b/openVulkanoCpp/Base/Observable.hpp @@ -23,7 +23,7 @@ namespace OpenVulkano Observable(const T& initValue) : object(initValue) {} - Observable(T&& initValue) : object(std::forward(initValue)) {} + Observable(T&& initValue) : object(std::forward(initValue)) {} //TODO make this somehow only work for none string types to prevent issues? /*template>> diff --git a/openVulkanoCpp/IO/Archive/ArchiveWriter.hpp b/openVulkanoCpp/IO/Archive/ArchiveWriter.hpp index c5aa5c0..a327ac8 100644 --- a/openVulkanoCpp/IO/Archive/ArchiveWriter.hpp +++ b/openVulkanoCpp/IO/Archive/ArchiveWriter.hpp @@ -9,6 +9,7 @@ #include "ArchiveBase.hpp" #include "ArchiveConfiguration.hpp" #include "IArchiveWriter.hpp" +#include "Base/Observable.hpp" namespace OpenVulkano { @@ -20,7 +21,7 @@ namespace OpenVulkano friend ArchiveStreamBufferWriter; ArchiveConfiguration m_archiveConfig; - size_t m_bytesWritten = 0; + Observable m_bytesWritten { 0 }; ArchiveOStream::ASBufferPtr m_asBuffer = nullptr; bool m_lastCompressed = true; std::function m_shouldCompress; @@ -49,6 +50,8 @@ namespace OpenVulkano void SetShouldCompressFunction(const std::function& shouldComp) override { m_shouldCompress = shouldComp; } + decltype(m_bytesWritten)& GetBytesWrittenObservable() { return m_bytesWritten; } + private: void WriteHeader(const FileDescription& fileDescription); @@ -56,4 +59,4 @@ namespace OpenVulkano void SetCompressed(); }; -} \ No newline at end of file +} diff --git a/openVulkanoCpp/Image/YuvUtils.hpp b/openVulkanoCpp/Image/YuvUtils.hpp index d57e9f1..9dd1aca 100644 --- a/openVulkanoCpp/Image/YuvUtils.hpp +++ b/openVulkanoCpp/Image/YuvUtils.hpp @@ -45,7 +45,6 @@ namespace OpenVulkano { if (srcLumRowPadding) { - uint32_t srcOffset = 0, destOffset = 0; for(uint32_t y = 0, srcOffset = 0, destOffset = 0; y < sizeLumY; y++, srcOffset += sizeLumX + srcLumRowPadding, destOffset += sizeLumX) { memcpy(buffer.get() + destOffset, srcLum + srcOffset, sizeLumX);