simcall_process_join(this->pimpl_, timeout);
}
-void Actor::setAutoRestart(bool autorestart) {
+void Actor::set_auto_restart(bool autorestart)
+{
simgrid::simix::kernelImmediate([this, autorestart]() { pimpl_->auto_restart = autorestart; });
}
-void Actor::onExit(int_f_pvoid_pvoid_t fun, void* data)
+void Actor::on_exit(int_f_pvoid_pvoid_t fun, void* data)
{
simcall_process_on_exit(pimpl_, fun, data);
}
return this->pimpl_->get_cname();
}
-aid_t Actor::get_pid()
+aid_t Actor::get_pid() const
{
return this->pimpl_->pid;
}
-aid_t Actor::get_ppid()
+aid_t Actor::get_ppid() const
{
return this->pimpl_->ppid;
}
simgrid::instr::Container::byName(instr_pid(this))->getState("ACTOR_STATE")->popEvent();
}
-int Actor::isSuspended()
+int Actor::is_suspended()
{
return simgrid::simix::kernelImmediate([this] { return pimpl_->suspended; });
}
-void Actor::setKillTime(double time) {
+void Actor::set_kill_time(double time)
+{
simcall_process_set_kill_time(pimpl_,time);
}
/** \brief Get the kill time of an actor(or 0 if unset). */
-double Actor::getKillTime()
+double Actor::get_kill_time()
{
return SIMIX_timer_get_date(pimpl_->kill_timer);
}
[this, process] { SIMIX_process_kill(pimpl_, (pimpl_ == simix_global->maestro_process) ? pimpl_ : process); });
}
-smx_actor_t Actor::getImpl()
+smx_actor_t Actor::get_impl()
{
return pimpl_;
}
// ***** Static functions *****
-ActorPtr Actor::byPid(aid_t pid)
+ActorPtr Actor::by_pid(aid_t pid)
{
smx_actor_t process = SIMIX_process_from_PID(pid);
if (process != nullptr)
return ActorPtr();
}
-void Actor::killAll()
+void Actor::kill_all()
{
simcall_process_killall();
}
-std::map<std::string, std::string>* Actor::getProperties()
+std::map<std::string, std::string>* Actor::get_properties()
{
return simgrid::simix::kernelImmediate([this] { return this->pimpl_->getProperties(); });
}
/** Retrieve the property value (or nullptr if not set) */
-const char* Actor::getProperty(const char* key)
+const char* Actor::get_property(const char* key)
{
return simgrid::simix::kernelImmediate([this, key] { return pimpl_->getProperty(key); });
}
-void Actor::setProperty(const char* key, const char* value)
+void Actor::set_property(const char* key, const char* value)
{
simgrid::simix::kernelImmediate([this, key, value] { pimpl_->setProperty(key, value); });
}
* In SimGrid, the actor in charge of doing the stuff in kernel mode is called Maestro,
* because it is the one scheduling when the others should move or wait.
*/
-bool isMaestro()
+bool is_maestro()
{
smx_actor_t process = SIMIX_process_self();
return process == nullptr || process == simix_global->maestro_process;
void execute(double flops)
{
- smx_activity_t s = simcall_execution_start(nullptr, flops, 1.0 /*priority*/, 0. /*bound*/, getHost());
+ smx_activity_t s = simcall_execution_start(nullptr, flops, 1.0 /*priority*/, 0. /*bound*/, get_host());
simcall_execution_wait(s);
}
void execute(double flops, double priority)
{
- smx_activity_t s = simcall_execution_start(nullptr, flops, 1 / priority /*priority*/, 0. /*bound*/, getHost());
+ smx_activity_t s = simcall_execution_start(nullptr, flops, 1 / priority /*priority*/, 0. /*bound*/, get_host());
simcall_execution_wait(s);
}
ExecPtr exec_init(double flops_amount)
{
ExecPtr res = ExecPtr(new Exec());
- res->host_ = getHost();
+ res->host_ = get_host();
res->flops_amount_ = flops_amount;
res->set_remaining(flops_amount);
return res;
return res;
}
-aid_t getPid()
+aid_t get_pid()
{
return SIMIX_process_self()->pid;
}
-aid_t getPpid()
+aid_t get_ppid()
{
return SIMIX_process_self()->ppid;
}
return SIMIX_process_self()->get_cname();
}
-Host* getHost()
+Host* get_host()
{
return SIMIX_process_self()->host;
}
void suspend()
{
if (TRACE_actor_is_enabled())
- instr::Container::byName(get_name() + "-" + std::to_string(getPid()))
+ instr::Container::byName(get_name() + "-" + std::to_string(get_pid()))
->getState("ACTOR_STATE")
->pushEvent("suspend");
simcall_process_suspend(SIMIX_process_self());
simgrid::simix::kernelImmediate([process] { process->resume(); });
if (TRACE_actor_is_enabled())
- instr::Container::byName(get_name() + "-" + std::to_string(getPid()))->getState("ACTOR_STATE")->popEvent();
+ instr::Container::byName(get_name() + "-" + std::to_string(get_pid()))->getState("ACTOR_STATE")->popEvent();
}
-bool isSuspended()
+bool is_suspended()
{
smx_actor_t process = SIMIX_process_self();
return simgrid::simix::kernelImmediate([process] { return process->suspended; });
simgrid::simix::kernelImmediate([process] { SIMIX_process_kill(process, process); });
}
-void onExit(int_f_pvoid_pvoid_t fun, void* data)
+void on_exit(int_f_pvoid_pvoid_t fun, void* data)
{
simcall_process_on_exit(SIMIX_process_self(), fun, data);
}
SIMIX_process_self()->iface()->migrate(new_host);
}
+std::string getName() /* deprecated */
+{
+ return get_name();
+}
+const char* getCname() /* deprecated */
+{
+ return get_cname();
+}
+bool isMaestro() /* deprecated */
+{
+ return is_maestro();
+}
+aid_t getPid() /* deprecated */
+{
+ return get_pid();
+}
+aid_t getPpid() /* deprecated */
+{
+ return get_ppid();
+}
+Host* getHost() /* deprecated */
+{
+ return get_host();
+}
+bool isSuspended() /* deprecated */
+{
+ return is_suspended();
+}
+void onExit /* deprecated */ (int_f_pvoid_pvoid_t fun, void* data)
+{
+ on_exit(fun, data);
+}
+
} // namespace this_actor
} // namespace s4u
} // namespace simgrid
{
/* Do not raise an exception here: this function is called by the logs
* and the exceptions, so it would be called back again and again */
- if (actor == nullptr || actor->getImpl() == nullptr)
+ if (actor == nullptr || actor->get_impl() == nullptr)
return 0;
return actor->get_pid();
}
*/
const char* sg_actor_get_property_value(sg_actor_t actor, const char* name)
{
- return actor->getProperty(name);
+ return actor->get_property(name);
}
/** \ingroup m_actor_management
{
xbt_assert(actor != nullptr, "Invalid parameter: First argument must not be nullptr");
xbt_dict_t as_dict = xbt_dict_new_homogeneous(xbt_free_f);
- std::map<std::string, std::string>* props = actor->getProperties();
+ std::map<std::string, std::string>* props = actor->get_properties();
if (props == nullptr)
return nullptr;
for (auto const& elm : *props) {
*/
int sg_actor_is_suspended(sg_actor_t actor)
{
- return actor->isSuspended();
+ return actor->is_suspended();
}
/**
*/
void sg_actor_set_kill_time(sg_actor_t actor, double kill_time)
{
- actor->setKillTime(kill_time);
+ actor->set_kill_time(kill_time);
}