From 04653742243e4bb6452108cfd0fef2f4afd8f23b Mon Sep 17 00:00:00 2001 From: rtk0c Date: Mon, 6 Sep 2021 00:15:35 -0700 Subject: Fix all compile errors, remove OperateIOProxy requirement from DataStream api --- core/src/Model/Assets.cpp | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) (limited to 'core/src/Model/Assets.cpp') diff --git a/core/src/Model/Assets.cpp b/core/src/Model/Assets.cpp index 80c2fa4..40f300e 100644 --- a/core/src/Model/Assets.cpp +++ b/core/src/Model/Assets.cpp @@ -16,21 +16,26 @@ using namespace std::literals::string_view_literals; namespace fs = std::filesystem; -template -void SavedAsset::OperateIOProxy(TProxy& proxy) +template +void OperateStreamForSavedAsset(TSavedAsset& cell, TStream& proxy) { - proxy.template ObjectAdapted(Name); - proxy.template ObjectAdapted(Uuid); - proxy.Value(Payload); + proxy.template ObjectAdapted(cell.Name); + proxy.template ObjectAdapted(cell.Uuid); + proxy.Value(cell.Payload); } -template void SavedAsset::OperateIOProxy(InputDataStream& adapter); -template void SavedAsset::OperateIOProxy(OutputDataStream& adapter); +void SavedAsset::ReadFromDataStream(InputDataStream& stream) +{ + ::OperateStreamForSavedAsset(*this, stream); +} -Asset::Asset() +void SavedAsset::WriteToDataStream(OutputDataStream& stream) const { + ::OperateStreamForSavedAsset(*this, stream); } +Asset::Asset() = default; + class AssetList::Private { public: -- cgit v1.2.3-70-g09d2