-/* Copyright (c) 2015-2020. The SimGrid Team. All rights reserved. */
+/* Copyright (c) 2015-2021. 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. */
#include "src/mc/remote/AppSide.hpp"
#include "src/internal_config.h"
+#include "src/kernel/actor/ActorImpl.hpp"
#include <simgrid/modelchecker.h>
#include <cerrno>
}
void AppSide::handle_simcall(const s_mc_message_simcall_handle_t* message) const
{
- smx_actor_t process = SIMIX_process_from_PID(message->pid);
+ kernel::actor::ActorImpl* process = kernel::actor::ActorImpl::by_PID(message->pid);
xbt_assert(process != nullptr, "Invalid pid %lu", message->pid);
process->simcall_handle(message->value);
if (channel_.send(MessageType::WAITING))
void AppSide::handle_actor_enabled(const s_mc_message_actor_enabled_t* msg) const
{
- bool res = simgrid::mc::actor_is_enabled(SIMIX_process_from_PID(msg->aid));
+ bool res = simgrid::mc::actor_is_enabled(kernel::actor::ActorImpl::by_PID(msg->aid));
s_mc_message_int_t answer{MessageType::ACTOR_ENABLED_REPLY, res};
channel_.send(answer);
}
{
s_mc_message_register_symbol_t message;
message.type = MessageType::REGISTER_SYMBOL;
- if (strlen(name) + 1 > sizeof(message.name))
+ if (strlen(name) + 1 > message.name.size())
xbt_die("Symbol is too long");
- strncpy(message.name, name, sizeof(message.name));
+ strncpy(message.name.data(), name, message.name.size());
message.callback = nullptr;
message.data = value;
if (channel_.send(message))