diff options
| author | Stanislaw Halik <sthalik@misaki.pl> | 2024-01-13 04:48:59 +0100 |
|---|---|---|
| committer | Stanislaw Halik <sthalik@misaki.pl> | 2024-01-13 05:05:16 +0100 |
| commit | 7cec20e4f295ea2f92613b0231a765d710c2411a (patch) | |
| tree | db693feb5e5b80da75a09263242a1d89f6f2f770 /loader | |
| parent | e75f99e22197008bd8a2e6df70c5b7554698300e (diff) | |
dw
Diffstat (limited to 'loader')
| -rw-r--r-- | loader/vobj.cpp | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/loader/vobj.cpp b/loader/vobj.cpp index db277410..ca6a2e63 100644 --- a/loader/vobj.cpp +++ b/loader/vobj.cpp @@ -16,9 +16,17 @@ struct vobj { }; } // namespace floormat::loader_detail +namespace nlohmann { + using floormat::loader_detail::vobj; -void nlohmann::adl_serializer<vobj>::to_json(json& j, const vobj& val) +template<> +struct adl_serializer<vobj> { + static void to_json(json& j, const vobj& val); + static void from_json(const json& j, vobj& val); +}; + +void adl_serializer<vobj>::to_json(json& j, const vobj& val) { j["name"] = val.name; if (val.descr) @@ -26,7 +34,7 @@ void nlohmann::adl_serializer<vobj>::to_json(json& j, const vobj& val) j["image"] = val.image_filename; } -void nlohmann::adl_serializer<vobj>::from_json(const json& j, vobj& val) +void adl_serializer<vobj>::from_json(const json& j, vobj& val) { val.name = j["name"]; if (j.contains("description")) @@ -36,6 +44,8 @@ void nlohmann::adl_serializer<vobj>::from_json(const json& j, vobj& val) val.image_filename = j["image"]; } +} // namespace nlohmann + namespace floormat::loader_detail { std::shared_ptr<class anim_atlas> loader_impl::make_vobj_anim_atlas(StringView name, StringView image_filename) |
