Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
properly split init/start for Exec activities
[simgrid.git] / src / s4u / s4u_Actor.cpp
index f693e25..5e2988b 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (c) 2006-2018. The SimGrid Team. All rights reserved.          */
+/* Copyright (c) 2006-2019. The SimGrid Team. All rights reserved.          */
 
 /* This program is free software; you can redistribute it and/or modify it
  * under the terms of the license (GNU LGPL) which comes with this package. */
@@ -35,7 +35,7 @@ ActorPtr Actor::self()
   if (self_context == nullptr)
     return simgrid::s4u::ActorPtr();
 
-  return self_context->process()->iface();
+  return self_context->get_actor()->iface();
 }
 
 ActorPtr Actor::create(std::string name, s4u::Host* host, std::function<void()> code)
@@ -175,7 +175,7 @@ double Actor::get_kill_time()
   return SIMIX_timer_get_date(pimpl_->kill_timer);
 }
 
-void Actor::kill(aid_t pid)
+void Actor::kill(aid_t pid) // deprecated
 {
   smx_actor_t killer  = SIMIX_process_self();
   smx_actor_t process = SIMIX_process_from_PID(pid);
@@ -338,11 +338,7 @@ void parallel_execute(int host_nb, sg_host_t* host_list, double* flops_amount, d
 
 ExecPtr exec_init(double flops_amount)
 {
-  ExecPtr res        = ExecPtr(new Exec());
-  res->host_         = get_host();
-  res->flops_amount_ = flops_amount;
-  res->set_remaining(flops_amount);
-  return res;
+  return ExecPtr(new Exec(get_host(), flops_amount));
 }
 
 ExecPtr exec_async(double flops)
@@ -392,12 +388,6 @@ void resume()
   simgrid::s4u::Actor::on_resume(process->iface());
 }
 
-bool is_suspended()
-{
-  smx_actor_t process = SIMIX_process_self();
-  return simgrid::simix::simcall([process] { return process->suspended_; });
-}
-
 void exit()
 {
   smx_actor_t process = SIMIX_process_self();
@@ -442,10 +432,6 @@ Host* getHost() /* deprecated */
 {
   return get_host();
 }
-bool isSuspended() /* deprecated */
-{
-  return is_suspended();
-}
 void on_exit(int_f_pvoid_pvoid_t fun, void* data) /* deprecated */
 {
   SIMIX_process_self()->iface()->on_exit([fun](int a, void* b) { fun((void*)(intptr_t)a, b); }, data);
@@ -470,7 +456,7 @@ void kill() /* deprecated */
  *
  * This function checks whether @a actor is a valid pointer and return its PID (or 0 in case of problem).
  */
-int sg_actor_get_PID(sg_actor_t actor)
+aid_t sg_actor_get_PID(sg_actor_t actor)
 {
   /* 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 */
@@ -485,7 +471,7 @@ int sg_actor_get_PID(sg_actor_t actor)
  * This function checks whether @a actor is a valid pointer and return its parent's PID.
  * Returns -1 if the actor has not been created by any other actor.
  */
-int sg_actor_get_PPID(sg_actor_t actor)
+aid_t sg_actor_get_PPID(sg_actor_t actor)
 {
   return actor->get_ppid();
 }