auto* actor = new ActorImpl(xbt::string(name), host);
/* Actor data */
- actor->set_user_data(data);
+ actor->piface_.set_data(data);
actor->code_ = nullptr;
XBT_VERB("Create context %s", actor->get_cname());
actor = self()->init(xbt::string(name), host);
/* actor data */
- actor->set_user_data(data);
+ actor->piface_.set_data(data);
actor->start(code);
void* SIMIX_process_self_get_data() // XBT_ATTRIB_DEPRECATED_v329
{
- smx_actor_t self = simgrid::kernel::actor::ActorImpl::self();
-
- if (self == nullptr) {
- return nullptr;
- }
- return self->get_user_data();
+ simgrid::s4u::Actor* self = simgrid::s4u::Actor::self();
+ return self ? self->get_data() : nullptr;
}
void SIMIX_process_self_set_data(void* data) // XBT_ATTRIB_DEPRECATED_v329
{
- simgrid::kernel::actor::ActorImpl::self()->set_user_data(data);
+ simgrid::s4u::Actor::self()->set_data(data);
}
/* needs to be public and without simcall because it is called
void simcall_process_set_data(smx_actor_t process, void* data) // XBT_ATTRIB_DEPRECATED_v329
{
- simgrid::kernel::actor::simcall([process, data] { process->set_user_data(data); });
+ simgrid::kernel::actor::simcall([process, data] { process->get_ciface()->set_data(data); });
}
class XBT_PUBLIC ActorImpl : public xbt::PropertyHolder {
s4u::Host* host_ = nullptr; /* the host on which the actor is running */
- void* userdata_ = nullptr; /* XBT_ATTRIB_DEPRECATED_v329 kept for compatibility, should be replaced with moddata */
aid_t pid_ = 0;
aid_t ppid_ = -1;
bool daemon_ = false; /* Daemon actors are automatically killed when the last non-daemon leaves */
// Accessors to private fields
s4u::Host* get_host() { return host_; }
void set_host(s4u::Host* dest);
- void* get_user_data() { return userdata_; } // XBT_ATTRIB_DEPRECATED_v329
- void set_user_data(void* data) { userdata_ = data; } // XBT_ATTRIB_DEPRECATED_v329
aid_t get_pid() const { return pid_; }
aid_t get_ppid() const { return ppid_; }
void set_ppid(aid_t ppid) { ppid_ = ppid; }
explicit ProcessArg(s4u::Host* host, ActorImpl* actor)
: name(actor->get_name())
, code(actor->code_)
- , data(actor->get_user_data())
+ , data(actor->get_ciface()->get_data())
, host(host)
, kill_time(actor->get_kill_time())
, auto_restart(actor->has_to_auto_restart())