Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
make s4u::Mailbox::setReceiver() working; add s4u::Actor::self()
[simgrid.git] / src / s4u / s4u_actor.cpp
index 24a6bb8..d5bf15d 100644 (file)
@@ -20,6 +20,15 @@ namespace simgrid {
 namespace s4u {
 
 // ***** Actor creation *****
+ActorPtr Actor::self()
+{
+  smx_context_t self_context = SIMIX_context_self();
+  if (self_context == nullptr)
+    return simgrid::s4u::ActorPtr();
+
+  return simgrid::s4u::ActorPtr(&self_context->process()->actor());
+}
+
 
 ActorPtr Actor::createActor(const char* name, s4u::Host *host, double killTime, std::function<void()> code)
 {