Commit Graph

33 Commits

Author SHA1 Message Date
Joakim Hove
059efcd260 Add serializer support for std::array<T,N> 2021-10-25 10:50:34 +02:00
Elyes Ahmed
f53c597f90 Replacing use of MPI_COMM_WORLD with a variable communicator. 2021-10-05 13:07:52 +02:00
Bård Skaflestad
2dedb62363 Serializer: Detect Existence of 'serializeOp' Member Function
More direct test than looking for a 'serializeObject' member.
2021-09-29 13:41:01 +02:00
Joakim Hove
1b7ef65509 Add serializer support for set - closely modelled after map 2021-09-24 18:55:54 +02:00
Markus Blatt
e6c8f6985c Remove some shawowed variable warnings. 2021-09-13 12:08:13 +02:00
Joakim Hove
3d226abd24 Remove references to RestartConfig 2021-03-26 08:03:07 +01:00
Tor Harald Sandve
f4ac7f555b Add support for explicit guiderate for injection groups
With this commit the guiderate logic used for the production groups is also used for injectors
This allows for setting guiderates explicit at different group levels
Only RATE, NETV and VOID guiderate type is suppored.
2021-03-16 15:56:31 +01:00
Arne Morten Kvarving
49cc70f49c fixed: avoid deadlocks in parallel if serialization throws 2020-09-24 11:00:37 +02:00
Arne Morten Kvarving
dfd2109665 added: support for std::optional in eclmpiserializer 2020-09-23 12:23:18 +02:00
Joakim Hove
3c565ef59e Use const_cast< > in variant serialization 2020-08-27 11:01:22 +02:00
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