#define SIMGRID_MC_COMM_PATTERN_H
#include <cstddef>
-#include <cstring>
-#include <string>
#include <vector>
#include <simgrid_config.h>
struct PatternCommunicationList {
unsigned int index_comm = 0;
- xbt_dynar_t list = nullptr;
-
- PatternCommunicationList() {}
- ~PatternCommunicationList()
- {
- xbt_dynar_free(&(this->list));
- }
+ std::vector<std::unique_ptr<simgrid::mc::PatternCommunication>> list;
};
}
SG_BEGIN_DECL()
/**
- * Type: `xbt_dynar_t<mc_list_comm_pattenr_t>`
+ * Type: `xbt_dynar_t<mc_list_comm_pattern_t>`
*/
extern XBT_PRIVATE xbt_dynar_t initial_communications_pattern;
}
}
-XBT_PRIVATE void MC_get_comm_pattern(xbt_dynar_t communications_pattern, smx_simcall_t request, e_mc_call_type_t call_type, int backtracking);
XBT_PRIVATE void MC_handle_comm_pattern(e_mc_call_type_t call_type, smx_simcall_t request, int value, xbt_dynar_t current_pattern, int backtracking);
-XBT_PRIVATE void MC_complete_comm_pattern(xbt_dynar_t list, smx_synchro_t comm_addr, unsigned int issuer, int backtracking);
XBT_PRIVATE void MC_restore_communications_pattern(simgrid::mc::State* state);