diff --git a/src/nostalgia/modules/gfx/src/keel/keelmodule.cpp b/src/nostalgia/modules/gfx/src/keel/keelmodule.cpp index 737837f9..01b2267b 100644 --- a/src/nostalgia/modules/gfx/src/keel/keelmodule.cpp +++ b/src/nostalgia/modules/gfx/src/keel/keelmodule.cpp @@ -13,79 +13,66 @@ namespace nostalgia::gfx { -static class: public keel::Module { - public: - [[nodiscard]] - ox::String id() const noexcept override { - return ox::String{"net.drinkingtea.nostalgia.gfx"}; - } +static struct: keel::Module { - [[nodiscard]] - ox::Vector types() const noexcept final { - return { - keel::generateTypeDesc, - keel::generateTypeDesc, - keel::generateTypeDesc, - keel::generateTypeDesc, - keel::generateTypeDesc, - keel::generateTypeDesc, - keel::generateTypeDesc, - keel::generateTypeDesc, - keel::generateTypeDesc, - keel::generateTypeDesc, - keel::generateTypeDesc, - keel::generateTypeDesc, - }; - } + [[nodiscard]] + ox::String id() const noexcept override { + return ox::String{"net.drinkingtea.nostalgia.gfx"}; + } - [[nodiscard]] - ox::Vector converters() const noexcept final { - return { - keel::Converter::make(), - keel::Converter::make(), - keel::Converter::make(), - keel::Converter::make(), - keel::Converter::make(), - keel::Converter::make(), - keel::Converter::make(), - keel::Converter::make(), - keel::Converter::make(), - keel::Converter::make(), - keel::Converter::make(), - }; - } + [[nodiscard]] + ox::Vector types() const noexcept final { + return { + keel::generateTypeDesc, + keel::generateTypeDesc, + keel::generateTypeDesc, + keel::generateTypeDesc, + keel::generateTypeDesc, + keel::generateTypeDesc, + keel::generateTypeDesc, + keel::generateTypeDesc, + keel::generateTypeDesc, + keel::generateTypeDesc, + keel::generateTypeDesc, + keel::generateTypeDesc, + }; + } - [[nodiscard]] - ox::Vector packTransforms() const noexcept final { - return { - // convert tilesheets to CompactTileSheets - [](keel::Context &ctx, ox::Buffer &buff, ox::StringViewCR typeId) -> ox::Result { - if (typeId == ox::ModelTypeId_v || - typeId == ox::ModelTypeId_v || - typeId == ox::ModelTypeId_v || - typeId == ox::ModelTypeId_v || - typeId == ox::ModelTypeId_v) { - OX_RETURN_ERROR(keel::convertBuffToBuff( - ctx, buff, ox::ClawFormat::Metal).moveTo(buff)); - return true; - } - return false; - }, - [](keel::Context &ctx, ox::Buffer &buff, ox::StringViewCR typeId) -> ox::Result { - if (typeId == ox::ModelTypeId_v || - typeId == ox::ModelTypeId_v || - typeId == ox::ModelTypeId_v || - typeId == ox::ModelTypeId_v || - typeId == ox::ModelTypeId_v || - typeId == ox::ModelTypeId_v) { - OX_RETURN_ERROR(keel::convertBuffToBuff( - ctx, buff, ox::ClawFormat::Metal).moveTo(buff)); - return true; - } - return false; - }, - }; - } + [[nodiscard]] + ox::Vector converters() const noexcept final { + return { + keel::Converter::make(), + keel::Converter::make(), + keel::Converter::make(), + keel::Converter::make(), + keel::Converter::make(), + keel::Converter::make(), + keel::Converter::make(), + keel::Converter::make(), + keel::Converter::make(), + keel::Converter::make(), + keel::Converter::make(), + }; + } + + [[nodiscard]] + ox::Vector packTransforms() const noexcept final { + return { + // convert tilesheets to CompactTileSheets + keel::transformRule, + keel::transformRule, + keel::transformRule, + keel::transformRule, + keel::transformRule, + // convert palettes to CompactPalettes + keel::transformRule, + keel::transformRule, + keel::transformRule, + keel::transformRule, + keel::transformRule, + keel::transformRule, + }; + } } const mod; diff --git a/src/nostalgia/modules/gfx/src/keel/typeconv.cpp b/src/nostalgia/modules/gfx/src/keel/typeconv.cpp index 3b179ddd..b0cc83c2 100644 --- a/src/nostalgia/modules/gfx/src/keel/typeconv.cpp +++ b/src/nostalgia/modules/gfx/src/keel/typeconv.cpp @@ -109,8 +109,8 @@ static void convertSubsheet( dst.rows = src.rows; dst.pixels = std::move(src.pixels); ++idIt; - dst.subsheets.resize(src.subsheets.size()); - for (auto i = 0u; i < src.subsheets.size(); ++i) { + dst.subsheets.reserveResize(src.subsheets.size()); + for (size_t i{}; i < src.subsheets.size(); ++i) { convertSubsheet(src.subsheets[i], dst.subsheets[i], idIt); } } @@ -136,8 +136,8 @@ static void convertSubsheet( dst.rows = src.rows; dst.pixels = std::move(src.pixels); ++idIt; - dst.subsheets.resize(src.subsheets.size()); - for (auto i = 0u; i < src.subsheets.size(); ++i) { + dst.subsheets.reserveResize(src.subsheets.size()); + for (size_t i{}; i < src.subsheets.size(); ++i) { convertSubsheet(src.subsheets[i], dst.subsheets[i], idIt); } } @@ -173,8 +173,8 @@ static void convertSubsheet( } else { dst.pixels = std::move(src.pixels); } - dst.subsheets.resize(src.subsheets.size()); - for (auto i = 0u; i < src.subsheets.size(); ++i) { + dst.subsheets.reserveResize(src.subsheets.size()); + for (size_t i{}; i < src.subsheets.size(); ++i) { convertSubsheet(bpp, src.subsheets[i], dst.subsheets[i]); } }