-extern "C" {
-
-simgrid::mc::PatternCommunication* MC_comm_pattern_dup(simgrid::mc::PatternCommunication* comm)
-{
- simgrid::mc::PatternCommunication* res = new simgrid::mc::PatternCommunication();
- res->index = comm->index;
- res->type = comm->type;
- res->comm_addr = comm->comm_addr;
- res->rdv = comm->rdv;
- res->data = comm->data;
- res->dst_proc = comm->dst_proc;
- res->dst_host = comm->dst_host;
- return res;
-}
-
-xbt_dynar_t MC_comm_patterns_dup(xbt_dynar_t patterns)
-{
- xbt_dynar_t res = simgrid::xbt::newDeleteDynar<simgrid::mc::PatternCommunication>();
-
- simgrid::mc::PatternCommunication* comm;
- unsigned int cursor;
- xbt_dynar_foreach(patterns, cursor, comm) {
- simgrid::mc::PatternCommunication* copy_comm = MC_comm_pattern_dup(comm);
- xbt_dynar_push(res, ©_comm);
- }
-
- return res;
-}
-
-static void MC_patterns_copy(xbt_dynar_t dest, xbt_dynar_t source)
+static void MC_patterns_copy(xbt_dynar_t dest,
+ std::vector<simgrid::mc::PatternCommunication> const& source)