#ifndef __BOOTLOADER_FWZIP_H_ #define __BOOTLOADER_FWZIP_H_ #ifdef __cplusplus #include #include #include #include namespace icsneo { namespace Bootloader { class ZipHandle; class FWZip { private: std::unique_ptr handle; std::vector zipData; std::optional uncompressedSize = std::nullopt; public: FWZip(std::vector&& tagData); ~FWZip(); std::optional size() const { return uncompressedSize; } bool readAll(uint8_t* out); bool readAll(std::vector& out); }; } // namespace Bootloader } // namespace icsneo #endif // __cplusplus #endif // __BOOTLOADER_FWZIP_H_