- if (0 <= rank && rank < size())
- return rank_to_actor_map_[rank];
- else
- return nullptr;
-}
-
-int Group::rank(s4u::Actor* actor) const
-{
- auto iterator = actor_to_rank_map_.find(actor);
- //I'm not in the communicator ... but maybe my parent is ?
- if (iterator == actor_to_rank_map_.end())
- iterator = actor_to_rank_map_.find(s4u::Actor::by_pid(actor->get_ppid()).get());
- return (iterator == actor_to_rank_map_.end()) ? MPI_UNDEFINED : (*iterator).second;