fixed: do not handle RestartSchedule as POD

valgrind is not happy
This commit is contained in:
Arne Morten Kvarving 2020-01-16 12:27:39 +01:00
parent 1b81e43e73
commit b7d7ced43d

View File

@ -455,7 +455,6 @@ HANDLE_AS_POD(MLimits)
HANDLE_AS_POD(PVTWRecord)
HANDLE_AS_POD(PVCDORecord)
HANDLE_AS_POD(Regdims)
HANDLE_AS_POD(RestartSchedule)
HANDLE_AS_POD(ROCKRecord)
HANDLE_AS_POD(Tabdims)
HANDLE_AS_POD(TimeMap::StepData)
@ -1882,6 +1881,16 @@ std::size_t packSize(const FoamData& data,
packSize(data.rockDensity(), comm);
}
std::size_t packSize(const RestartSchedule& data,
Dune::MPIHelper::MPICommunicator comm)
{
return packSize(data.timestep, comm) +
packSize(data.basic, comm) +
packSize(data.frequency, comm) +
packSize(data.rptsched_restart_set, comm) +
packSize(data.rptsched_restart, comm);
}
////// pack routines
template<class T>
@ -3651,6 +3660,17 @@ void pack(const FoamData& data,
pack(data.rockDensity(), buffer, position, comm);
}
void pack(const RestartSchedule& data,
std::vector<char>& buffer, int& position,
Dune::MPIHelper::MPICommunicator comm)
{
pack(data.timestep, buffer, position, comm);
pack(data.basic, buffer, position, comm);
pack(data.frequency, buffer, position, comm);
pack(data.rptsched_restart_set, buffer, position, comm);
pack(data.rptsched_restart, buffer, position, comm);
}
/// unpack routines
template<class T>
@ -6204,6 +6224,17 @@ void unpack(FoamData& data,
minimumSurfactantConcentration, allowDesorption, rockDensity);
}
void unpack(RestartSchedule& data,
std::vector<char>& buffer, int& position,
Dune::MPIHelper::MPICommunicator comm)
{
unpack(data.timestep, buffer, position, comm);
unpack(data.basic, buffer, position, comm);
unpack(data.frequency, buffer, position, comm);
unpack(data.rptsched_restart_set, buffer, position, comm);
unpack(data.rptsched_restart, buffer, position, comm);
}
#define INSTANTIATE_PACK_VECTOR(T) \
template std::size_t packSize(const std::vector<T>& data, \
Dune::MPIHelper::MPICommunicator comm); \