return mc_model_checker->get_remote_simulation().actors().size();
}
-void mc_api::copy_incomplete_comm_pattern(const simgrid::mc::State* state) const
-{
- MC_state_copy_incomplete_communications_pattern((simgrid::mc::State*)state);
+void mc_api::copy_incomplete_comm_pattern(simgrid::mc::State* state) const
+{
+ state->incomplete_comm_pattern_.clear();
+ for (unsigned i=0; i < MC_smx_get_maxpid(); i++) {
+ std::vector<simgrid::mc::PatternCommunication> res;
+ for (auto const& comm : incomplete_communications_pattern[i])
+ res.push_back(comm->dup());
+ state->incomplete_comm_pattern_.push_back(std::move(res));
+ }
}
void mc_api::copy_index_comm_pattern(simgrid::mc::State* state) const
int get_actors_size() const;
// COMMUNICATION APIs
- void copy_incomplete_comm_pattern(const simgrid::mc::State* state) const;
+ void copy_incomplete_comm_pattern(simgrid::mc::State* state) const;
void copy_index_comm_pattern(simgrid::mc::State* state) const;
kernel::activity::CommImpl* get_pattern_comm_addr(smx_simcall_t request) const;
std::string get_pattern_comm_rdv(void* addr) const;
MC_patterns_copy(incomplete_communications_pattern[i], state->incomplete_comm_pattern_[i]);
}
-void MC_state_copy_incomplete_communications_pattern(simgrid::mc::State* state)
-{
- state->incomplete_comm_pattern_.clear();
- for (unsigned i=0; i < MC_smx_get_maxpid(); i++) {
- std::vector<simgrid::mc::PatternCommunication> res;
- for (auto const& comm : incomplete_communications_pattern[i])
- res.push_back(comm->dup());
- state->incomplete_comm_pattern_.push_back(std::move(res));
- }
-}
-
void MC_handle_comm_pattern(simgrid::mc::CallType call_type, smx_simcall_t req, int value, int backtracking)
{
// HACK, do not rely on the Checker implementation outside of it
XBT_PRIVATE void MC_restore_communications_pattern(simgrid::mc::State* state);
-XBT_PRIVATE void MC_state_copy_incomplete_communications_pattern(simgrid::mc::State* state);
-
#endif