add serialization template to MULTREGTScanner

This commit is contained in:
Arne Morten Kvarving 2020-03-13 08:16:25 +01:00
parent 037620d83f
commit e4465fc31c

View File

@ -66,6 +66,17 @@ namespace Opm {
nnc_behaviour == data.nnc_behaviour && nnc_behaviour == data.nnc_behaviour &&
region_name == data.region_name; region_name == data.region_name;
} }
template<class Serializer>
void serializeOp(Serializer& serializer)
{
serializer(src_value);
serializer(target_value);
serializer(trans_mult);
serializer(directions);
serializer(nnc_behaviour);
serializer(region_name);
}
}; };
typedef std::map< std::pair<int , int> , const MULTREGTRecord * > MULTREGTSearchMap; typedef std::map< std::pair<int , int> , const MULTREGTRecord * > MULTREGTSearchMap;
@ -100,6 +111,21 @@ namespace Opm {
bool operator==(const MULTREGTScanner& data) const; bool operator==(const MULTREGTScanner& data) const;
MULTREGTScanner& operator=(const MULTREGTScanner& data); MULTREGTScanner& operator=(const MULTREGTScanner& data);
template<class Serializer>
void serializeOp(Serializer& serializer)
{
serializer(nx);
serializer(ny);
serializer(nz);
serializer.vector(m_records);
ExternalSearchMap searchMap = getSearchMap();
serializer(searchMap);
if (m_searchMap.empty())
constructSearchMap(searchMap);
serializer(regions);
serializer(default_region);
}
private: private:
void constructSearchMap(const ExternalSearchMap& searchMap); void constructSearchMap(const ExternalSearchMap& searchMap);