#include "simgrid/s4u/Host.hpp"
#include "simgrid/s4u/VirtualMachine.hpp"
#include "src/include/mc/mc.h"
+#include "src/kernel/EngineImpl.hpp"
#include "src/kernel/activity/ExecImpl.hpp"
#include "src/mc/mc_replay.hpp"
#include "src/surf/HostImpl.hpp"
ActorPtr Actor::create(const std::string& name, s4u::Host* host, const std::string& function,
std::vector<std::string> args)
{
- const simix::ActorCodeFactory& factory = SIMIX_get_actor_code_factory(function);
+ const simgrid::kernel::actor::ActorCodeFactory& factory =
+ simgrid::kernel::EngineImpl::get_instance()->get_function(function);
return create(name, host, factory(std::move(args)));
}
// The joined process is already finished, just wake up the issuer right away
issuer->simcall_answer();
} else {
- smx_activity_t sync = issuer->join(target, timeout);
+ kernel::activity::ActivityImplPtr sync = issuer->join(target, timeout);
sync->register_simcall(&issuer->simcall);
}
});
issuer->simcall_answer();
return;
}
- smx_activity_t sync = issuer->sleep(duration);
+ kernel::activity::ActivityImplPtr sync = issuer->sleep(duration);
sync->register_simcall(&issuer->simcall);
});
void sg_actor_start(sg_actor_t actor, xbt_main_func_t code, int argc, const char* const* argv)
{
- simgrid::simix::ActorCode function;
+ simgrid::kernel::actor::ActorCode function;
if (code)
function = simgrid::xbt::wrap_main(code, argc, argv);
actor->start(std::move(function));