20 [[
nodiscard]] std::shared_ptr<const data::LegacyBitmapRGBA8>
23 using Pack = std::array<std::shared_ptr<const data::LegacyBitmapRGBA8>, 28>;
24 struct PackResult { Pack frames{};
bool complete{}; };
26 [[
nodiscard]]
static std::shared_ptr<const data::LegacyBitmapRGBA8>
27 decode(
const std::filesystem::path&
path);
28 std::filesystem::path root_;
29 std::optional<std::uint8_t> activeToken_;
31 std::future<PackResult> pending_;
32 std::optional<std::uint8_t> pendingToken_;
33 std::array<bool, data::ModernTokenCount> failedPacks_{}, attemptedThumbnails_{};