From ad32950271d34ada8ff049901d153e4f598c402a Mon Sep 17 00:00:00 2001 From: Arne Morten Kvarving Date: Tue, 17 Mar 2020 13:19:59 +0100 Subject: [PATCH] add serialization template to RestartConfig --- .../EclipseState/IOConfig/RestartConfig.hpp | 25 ++++++++++++++++--- .../EclipseState/Schedule/Schedule.hpp | 2 +- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/opm/parser/eclipse/EclipseState/IOConfig/RestartConfig.hpp b/opm/parser/eclipse/EclipseState/IOConfig/RestartConfig.hpp index 6be00de13..ba8efc575 100644 --- a/opm/parser/eclipse/EclipseState/IOConfig/RestartConfig.hpp +++ b/opm/parser/eclipse/EclipseState/IOConfig/RestartConfig.hpp @@ -302,7 +302,15 @@ namespace Opm { bool operator!=(const RestartSchedule& rhs) const; bool operator==( const RestartSchedule& rhs ) const; - + template + void serializeOp(Serializer& serializer) + { + serializer(timestep); + serializer(basic); + serializer(frequency); + serializer(rptsched_restart_set); + serializer(rptsched_restart); + } //private: size_t timestep = 0; @@ -348,10 +356,19 @@ namespace Opm { const std::vector& saveKeywords() const; bool operator==(const RestartConfig& data) const; + + template + void serializeOp(Serializer& serializer) + { + m_timemap.serializeOp(serializer); + serializer(m_first_restart_step); + serializer(m_write_initial_RST_file); + restart_schedule.serializeOp(serializer); + restart_keywords.serializeOp(serializer); + serializer(save_keywords); + } + private: - - - /// This method will internalize variables with information of /// the first report step with restart and rft output /// respectively. This information is important because right diff --git a/opm/parser/eclipse/EclipseState/Schedule/Schedule.hpp b/opm/parser/eclipse/EclipseState/Schedule/Schedule.hpp index f2ae5c5dc..26cf9c40a 100644 --- a/opm/parser/eclipse/EclipseState/Schedule/Schedule.hpp +++ b/opm/parser/eclipse/EclipseState/Schedule/Schedule.hpp @@ -312,7 +312,7 @@ namespace Opm serializer(m_actions); serializer(rft_config); serializer(m_nupcol); - serializer(restart_config); + restart_config.serializeOp(serializer); serializer(wellgroup_events); if (wells_static.size() == 0) reconstructDynMap(splitWells.first, splitWells.second, wells_static);