Commit Graph

23 Commits

Author SHA1 Message Date
Joakim Hove
cc32189a2e Handle serialization of std::variant<T0,T1> 2020-08-25 22:37:24 +02:00
Joakim Hove
754f74df01 Adapt variant serialization to four types 2020-06-12 07:21:46 +02:00
Joakim Hove
a1306a62fc Add serialization of std::variant<T1,T2,T3> 2020-06-10 20:41:14 +02:00
Arne Morten Kvarving
a456b7dff5 fixed: broadcasting an int and receiving as a size_t is a very bad idea
pointy-hat: me
2020-03-30 11:48:00 +02:00
Atgeirr Flø Rasmussen
56222d4350 Make is_ptr() for unique_ptr handle two template parameters. 2020-03-23 13:36:07 +01:00
Atgeirr Flø Rasmussen
652c7d239b Simplify ptr(), avoiding a template template parameter.
Since unique_ptr<T, Deleter> takes two arguments it cannot strictly
speaking be used via a template template parameter that takes one,
even though the second has a default. GCC allows this anyway, but
not clang.
2020-03-23 11:55:45 +01:00
Arne Morten Kvarving
4c5f9f2241 add doxy to eclmpiserializer 2020-03-19 09:31:52 +01:00
Arne Morten Kvarving
59d1ff9b88 updates in EclMpiSerializer to avoid explicit instances in serializer
now the serializer is 'standard', as in we only require basic types
+ stl containers. this should make the actual implementation pretty
pluggable. will ease replacing our serialization routines
with those in Dune 2.7 later.
2020-03-19 09:31:52 +01:00
Arne Morten Kvarving
c86cfbd83a add complexType template parameter to EclMpiSerializer::vector
set to false if vector contains a type without a serializeOp
2020-03-19 09:31:07 +01:00
Arne Morten Kvarving
638a53ac88 add support for unique_ptr in EclMpiSerializer 2020-03-19 09:31:07 +01:00
Arne Morten Kvarving
f0bc3e3815 add bool parameter ComplexType to EclMpiSerializer::map
this is passed on to the serializeOp template for the underlying
type. used with maps over DynamicState where DynamicState is over
a non-complex type.
2020-03-19 09:31:07 +01:00
Arne Morten Kvarving
13639cdace add isSerializing member to eclmpiserializer
sometimes it is necessary to know in user code
2020-03-17 08:19:44 +01:00
Arne Morten Kvarving
5eb2ec30a5 add map handler to eclmpiserializer 2020-03-16 20:52:17 +01:00
Arne Morten Kvarving
30cac6b648 add shared_ptr handling in eclmpiserializer 2020-03-16 20:52:17 +01:00
Arne Morten Kvarving
fe2437e67e add pair handling in eclmpiserializer::vector 2020-03-16 11:44:13 +01:00
Arne Morten Kvarving
6fee426bfc remove static assert in vector handler of eclmpiserializer
std::is_pod is too generic
2020-03-16 10:49:42 +01:00
Arne Morten Kvarving
91e9d952d8 added: handler for vectors in eclmpiserializer
this shall be used by users when they have a vector of types
with a serializeOp template. it cannot (at least not right now)
be part of the regular operator() as some vectors should go
directly to the underlying serializer (trivial types).

we can possibly find some traits magic for this later.
2020-03-13 14:09:17 +01:00
Arne Morten Kvarving
dd0f6dd517 changed: simplify eclmpiserializer
now users only have to implement a single method for
packsize/pack/unpack
2020-03-10 08:56:40 +01:00
Arne Morten Kvarving
3162ed067e get rid of unused serialization template 2020-03-06 11:55:41 +01:00
Arne Morten Kvarving
db2ad1587d fixed: mark constructor explicit 2020-01-22 11:36:02 +01:00
Arne Morten Kvarving
60f3fea67a avoid deck usage on non-root processes setting up MaterialLawManager 2020-01-22 11:35:55 +01:00
Arne Morten Kvarving
3396b31852 changed: add helper template to serialize and broadcast static types 2020-01-22 00:32:46 +01:00
Arne Morten Kvarving
3b27df91b4 avoid usage of deck on all processes setting up EclSolventModule 2020-01-06 11:19:12 +01:00