#pragma once #include #include #include #include namespace theo { class swapchain_t { public: struct buffers_t { std::vector< std::uint8_t > front, back; std::shared_ptr< iff_t > iff; }; explicit swapchain_t( const std::vector< std::uint8_t > &img ); static std::shared_ptr< swapchain_t > make( const std::vector< std::uint8_t > &img ); void swap( buffers_t &buffers ); std::vector< buffers_t > objs; const std::vector< std::uint8_t > archive; }; } // namespace theo