} \
}
-XBT_PRIVATE void* smpi_get_tmp_sendbuffer(int size);
-XBT_PRIVATE void* smpi_get_tmp_recvbuffer(int size);
-XBT_PRIVATE void smpi_free_tmp_buffer(void* buf);
-XBT_PRIVATE void smpi_free_replay_tmp_buffers();
+XBT_PRIVATE unsigned char* smpi_get_tmp_sendbuffer(size_t size);
+XBT_PRIVATE unsigned char* smpi_get_tmp_recvbuffer(size_t size);
XBT_PRIVATE void log_timed_action(simgrid::xbt::ReplayAction& action, double clock);
T args;
public:
- explicit ReplayAction(std::string name) : name(std::move(name)), my_proc_id(simgrid::s4u::this_actor::get_pid()) {}
+ explicit ReplayAction(const std::string& name) : name(name), my_proc_id(simgrid::s4u::this_actor::get_pid()) {}
virtual ~ReplayAction() = default;
void execute(simgrid::xbt::ReplayAction& action)
}
virtual void kernel(simgrid::xbt::ReplayAction& action) = 0;
- void* send_buffer(int size) { return smpi_get_tmp_sendbuffer(size); }
- void* recv_buffer(int size) { return smpi_get_tmp_recvbuffer(size); }
+ unsigned char* send_buffer(int size) { return smpi_get_tmp_sendbuffer(size); }
+ unsigned char* recv_buffer(int size) { return smpi_get_tmp_recvbuffer(size); }
};
class WaitAction : public ReplayAction<WaitTestParser> {
RequestStorage& req_storage;
public:
- explicit SendAction(std::string name, RequestStorage& storage) : ReplayAction(std::move(name)), req_storage(storage)
- {
- }
+ explicit SendAction(const std::string& name, RequestStorage& storage) : ReplayAction(name), req_storage(storage) {}
void kernel(simgrid::xbt::ReplayAction& action) override;
};
RequestStorage& req_storage;
public:
- explicit RecvAction(std::string name, RequestStorage& storage) : ReplayAction(std::move(name)), req_storage(storage)
- {
- }
+ explicit RecvAction(const std::string& name, RequestStorage& storage) : ReplayAction(name), req_storage(storage) {}
void kernel(simgrid::xbt::ReplayAction& action) override;
};
class GatherAction : public ReplayAction<GatherArgParser> {
public:
- explicit GatherAction(std::string name) : ReplayAction(std::move(name)) {}
+ explicit GatherAction(const std::string& name) : ReplayAction(name) {}
void kernel(simgrid::xbt::ReplayAction& action) override;
};
class GatherVAction : public ReplayAction<GatherVArgParser> {
public:
- explicit GatherVAction(std::string name) : ReplayAction(std::move(name)) {}
+ explicit GatherVAction(const std::string& name) : ReplayAction(name) {}
void kernel(simgrid::xbt::ReplayAction& action) override;
};