PUP namespace
Extensions to Charm++'s Pack/Unpack routines.
Contents
-
Reference
- Functions
- Charm++ pack/unpack serializer member functions for Refinement_State
- Charm++ pack/unpack serializer member functions for Edge_Refinement
- Charm++ pack/unpack serializer member functions for edge_store_t
- Charm++ pack/unpack serializer member functions for edge_t
- Charm++ pack/unpack serializer member functions for marked_refinements_store_t
- Charm++ pack/unpack serializer member functions for active_element_store_t
- Charm++ pack/unpack serializer member functions for master_element_store_t
- Charm++ pack/unpack serializer member functions for tet_store_t
- Charm++ pack/unpack serializer member functions for mesh_adapter_t
- Charm++ pack/unpack serializer member functions for node_store_t
- Charm++ pack/unpack serializer member functions for node_connectivity_t
- Charm++ pack/unpack serializer member functions for refinement_t
Functions
-
template<typename E, typename std::enable_if<std::is_enum<E>::value, int>::type = 0>void pup(PUP::er& p, E& e)
- Pack/Unpack enum class.
-
template<class Key, class T, class Hash = std::hash<Key>, class KeyEqual = std::equal_to<Key>>void pup(PUP::er& p, std::unordered_map<Key, T, Hash, KeyEqual>& m)
-
template<class Key, class T, class Hash = std::hash<Key>, class KeyEqual = std::equal_to<Key>>void operator|(PUP::er& p, std::unordered_map<Key, T, Hash, KeyEqual>& m)
-
template<class Key, class Hash = std::hash<Key>, class KeyEqual = std::equal_to<Key>>void pup(PUP::er& p, std::unordered_set<Key, Hash, KeyEqual>& s)
-
template<class Key, class Hash = std::hash<Key>, class KeyEqual = std::equal_to<Key>>void operator|(PUP::er& p, std::unordered_set<Key, Hash, KeyEqual>& s)
-
template<class T>void pup(PUP::er& p, std::optional<T>& o)
-
template<class T>void operator|(PUP::er& p, std::optional<T>& o)
-
template<class T, class... Ts>auto pup_helper(std::size_t& index, const std::size_t send_index, PUP::er& p, std::variant<Ts...>& var) -> char
-
template<class... Ts>void pup(PUP::er& p, std::variant<Ts...>& var)
-
template<typename... Ts>void operator|(PUP::er& p, std::variant<Ts...>& d)
Charm++ pack/unpack serializer member functions for Refinement_State
-
void pup(PUP::er& p,
AMR::
Refinement_State& s) -
void operator|(PUP::er& p,
AMR::
Refinement_State& s)
Charm++ pack/unpack serializer member functions for Edge_Refinement
-
void pup(PUP::er& p,
AMR::
Edge_Refinement& e) -
void operator|(PUP::er& p,
AMR::
Edge_Refinement& e)
Charm++ pack/unpack serializer member functions for edge_store_t
-
void pup(PUP::er& p,
AMR::
edge_store_t& e) -
void operator|(PUP::er& p,
AMR::
edge_store_t& e)
Charm++ pack/unpack serializer member functions for edge_t
-
void pup(PUP::er& p,
AMR::
edge_t& e) -
void operator|(PUP::er& p,
AMR::
edge_t& e)
Charm++ pack/unpack serializer member functions for marked_refinements_store_t
-
template<class case_t>void pup(PUP::er& p, AMR::
marked_refinements_store_t<case_t>& m) -
template<class case_t>void operator|(PUP::er& p, AMR::
marked_refinements_store_t<case_t>& m)
Charm++ pack/unpack serializer member functions for active_element_store_t
-
void pup(PUP::er& p,
AMR::
active_element_store_t& a) -
void operator|(PUP::er& p,
AMR::
active_element_store_t& a) -
void pup(PUP::er& p,
AMR::
id_generator_t& i) -
void operator|(PUP::er& p,
AMR::
id_generator_t& i)
Charm++ pack/unpack serializer member functions for master_element_store_t
-
void pup(PUP::er& p,
AMR::
master_element_store_t& m) -
void operator|(PUP::er& p,
AMR::
master_element_store_t& m)
Charm++ pack/unpack serializer member functions for tet_store_t
-
void pup(PUP::er& p,
AMR::
tet_store_t& t) -
void operator|(PUP::er& p,
AMR::
tet_store_t& t)
Charm++ pack/unpack serializer member functions for mesh_adapter_t
-
void pup(PUP::er& p,
AMR::
mesh_adapter_t& m) -
void operator|(PUP::er& p,
AMR::
mesh_adapter_t& m)
Charm++ pack/unpack serializer member functions for node_store_t
-
void pup(PUP::er& p,
AMR::
node_store_t& n) -
void operator|(PUP::er& p,
AMR::
node_store_t& n)
Charm++ pack/unpack serializer member functions for node_connectivity_t
-
void pup(PUP::er& p,
AMR::
node_connectivity_t& n) -
void operator|(PUP::er& p,
AMR::
node_connectivity_t& n)
Charm++ pack/unpack serializer member functions for refinement_t
-
void pup(PUP::er& p,
AMR::
refinement_t& r) -
void operator|(PUP::er& p,
AMR::
refinement_t& r)
Function documentation
template<typename E, typename std::enable_if<std::is_enum<E>::value, int>::type = 0>
void PUP:: pup(PUP::er& p,
E& e)
Pack/Unpack enum class.
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
e in | Enum class to pack/unpack |
In Charm++ usually both the pup() overload and an overload for operator| are defined for all serializable types. However, we cannot define operator| for enum class as it would conflict with Charm++'s catch-all, template< class T > inline void operator|(PUP::er &p,T &t) {...}.
template<class Key, class T, class Hash = std::hash<Key>, class KeyEqual = std::equal_to<Key>>
void PUP:: pup(PUP::er& p,
std::unordered_map<Key, T, Hash, KeyEqual>& m)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
m in | std::unordered_map< Key, T, Hash, KeyEqual > to pack/unpack |
Pack/Unpack std::unordered_map.
template<class Key, class T, class Hash = std::hash<Key>, class KeyEqual = std::equal_to<Key>>
void PUP:: operator|(PUP::er& p,
std::unordered_map<Key, T, Hash, KeyEqual>& m)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
m in | std::unordered_map< Key, T, Hash, KeyEqual > to pack/unpack |
Pack/Unpack std::unordered_map.
template<class Key, class Hash = std::hash<Key>, class KeyEqual = std::equal_to<Key>>
void PUP:: pup(PUP::er& p,
std::unordered_set<Key, Hash, KeyEqual>& s)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
s in | std::unordered_set< Key, Hash, KeyEqual > to pack/unpack |
Pack/Unpack std::unordered_set.
template<class Key, class Hash = std::hash<Key>, class KeyEqual = std::equal_to<Key>>
void PUP:: operator|(PUP::er& p,
std::unordered_set<Key, Hash, KeyEqual>& s)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
s in | std::unordered_set< Key, Hash, KeyEqual > to pack/unpack |
Pack/Unpack std::unordered_set.
template<class T>
void PUP:: pup(PUP::er& p,
std::optional<T>& o)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
o in | std::optional< T > of arbitrary type T to pack/unpack |
Pack/Unpack std::optional
template<class T>
void PUP:: operator|(PUP::er& p,
std::optional<T>& o)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
o in | std::optional< T > of arbitrary type T to pack/unpack |
Pack/Unpack std::optional
template<class T, class... Ts>
char PUP:: pup_helper(std::size_t& index,
const std::size_t send_index,
PUP::er& p,
std::variant<Ts...>& var)
Parameters | |
---|---|
index in/out | Counter (location) for type in variant |
send_index in | Target counter (location) for type in variant |
p in | Charm++'s pack/unpack object |
var in | std::variant< Ts... > of arbitrary types to pack/unpack |
Pack/Unpack helper for std::variant
template<class... Ts>
void PUP:: pup(PUP::er& p,
std::variant<Ts...>& var)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
var in | std::variant< Ts... > of arbitrary types to pack/unpack |
Pack/Unpack std::variant
template<typename... Ts>
void PUP:: operator|(PUP::er& p,
std::variant<Ts...>& d)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
d in | std::variant< Ts... > of arbitrary types to pack/unpack |
Pack/Unpack std::variant
void PUP:: pup(PUP::er& p,
AMR:: Refinement_State& s)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
s in/out | Refinement_State object reference |
Pack/Unpack Refinement_State
void PUP:: operator|(PUP::er& p,
AMR:: Refinement_State& s)
Parameters | |
---|---|
p in/out | Charm++'s PUP::er serializer object reference |
s in/out | Refinement_State object reference |
Pack/Unpack serialize operator|
void PUP:: pup(PUP::er& p,
AMR:: Edge_Refinement& e)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
e in/out | Edge_Refinement object reference |
Pack/Unpack Edge_Refinement
void PUP:: operator|(PUP::er& p,
AMR:: Edge_Refinement& e)
Parameters | |
---|---|
p in/out | Charm++'s PUP::er serializer object reference |
e in/out | Edge_Refinement object reference |
Pack/Unpack serialize operator|
void PUP:: pup(PUP::er& p,
AMR:: edge_store_t& e)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
e in/out | edge_store_t object reference |
Pack/Unpack edge_store_t
void PUP:: operator|(PUP::er& p,
AMR:: edge_store_t& e)
Parameters | |
---|---|
p in/out | Charm++'s PUP::er serializer object reference |
e in/out | edge_store_t object reference |
Pack/Unpack serialize operator|
void PUP:: pup(PUP::er& p,
AMR:: edge_t& e)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
e in/out | edge_t object reference |
Pack/Unpack edge_t
void PUP:: operator|(PUP::er& p,
AMR:: edge_t& e)
Parameters | |
---|---|
p in/out | Charm++'s PUP::er serializer object reference |
e in/out | edge_t object reference |
Pack/Unpack serialize operator|
template<class case_t>
void PUP:: pup(PUP::er& p,
AMR:: marked_refinements_store_t<case_t>& m)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
m in/out | marked_refinements_store_t object reference |
Pack/Unpack marked_refinements_store_t
template<class case_t>
void PUP:: operator|(PUP::er& p,
AMR:: marked_refinements_store_t<case_t>& m)
Parameters | |
---|---|
p in/out | Charm++'s PUP::er serializer object reference |
m in/out | marked_refinements_store_t object reference |
Pack/Unpack serialize operator|
void PUP:: pup(PUP::er& p,
AMR:: active_element_store_t& a)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
a in/out | active_element_store_t object reference |
Pack/Unpack active_element_store_t
void PUP:: operator|(PUP::er& p,
AMR:: active_element_store_t& a)
Parameters | |
---|---|
p in/out | Charm++'s PUP::er serializer object reference |
a in/out | active_element_store_t object reference |
Pack/Unpack serialize operator|
void PUP:: pup(PUP::er& p,
AMR:: id_generator_t& i)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
i in/out | id_generator_t object reference |
Pack/Unpack id_generator_t
void PUP:: operator|(PUP::er& p,
AMR:: id_generator_t& i)
Parameters | |
---|---|
p in/out | Charm++'s PUP::er serializer object reference |
i in/out | id_generator_t object reference |
Pack/Unpack serialize operator|
void PUP:: pup(PUP::er& p,
AMR:: master_element_store_t& m)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
m in/out | master_element_store_t object reference |
Pack/Unpack master_element_store_t
void PUP:: operator|(PUP::er& p,
AMR:: master_element_store_t& m)
Parameters | |
---|---|
p in/out | Charm++'s PUP::er serializer object reference |
m in/out | master_element_store_t object reference |
Pack/Unpack serialize operator|
void PUP:: pup(PUP::er& p,
AMR:: tet_store_t& t)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
t in/out | tet_store_t object reference |
Pack/Unpack tet_store_t
void PUP:: operator|(PUP::er& p,
AMR:: tet_store_t& t)
Parameters | |
---|---|
p in/out | Charm++'s PUP::er serializer object reference |
t in/out | tet_store_t object reference |
Pack/Unpack serialize operator|
void PUP:: pup(PUP::er& p,
AMR:: mesh_adapter_t& m)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
m in/out | mesh_adapter_t object reference |
Pack/Unpack mesh_adapter_t
void PUP:: operator|(PUP::er& p,
AMR:: mesh_adapter_t& m)
Parameters | |
---|---|
p in/out | Charm++'s PUP::er serializer object reference |
m in/out | mesh_adapter_t object reference |
Pack/Unpack serialize operator|
void PUP:: pup(PUP::er& p,
AMR:: node_store_t& n)
Pack/Unpack node_store_t
void PUP:: operator|(PUP::er& p,
AMR:: node_store_t& n)
Parameters | |
---|---|
p in/out | Charm++'s PUP::er serializer object reference |
n in/out | node_store_t object reference |
Pack/Unpack serialize operator|
void PUP:: pup(PUP::er& p,
AMR:: node_connectivity_t& n)
Parameters | |
---|---|
p in | Charm++'s pack/unpack object |
n in/out | node_connectivity_t object reference |
Pack/Unpack node_connectivity_t
void PUP:: operator|(PUP::er& p,
AMR:: node_connectivity_t& n)
Parameters | |
---|---|
p in/out | Charm++'s PUP::er serializer object reference |
n in/out | node_connectivity_t object reference |
Pack/Unpack serialize operator|
void PUP:: pup(PUP::er& p,
AMR:: refinement_t& r)
Pack/Unpack refinement_t
void PUP:: operator|(PUP::er& p,
AMR:: refinement_t& r)
Parameters | |
---|---|
p in/out | Charm++'s PUP::er serializer object reference |
r in/out | refinement_t object reference |
Pack/Unpack serialize operator|