namespace kernel {
namespace actor {
-class ActivityTestSimcall : public ResultingSimcall<bool> {
+class ActivityTestSimcall final : public ResultingSimcall<bool> {
activity::ActivityImpl* const activity_;
public:
void serialize(std::stringstream& stream) const override;
};
-class ActivityTestanySimcall : public ResultingSimcall<ssize_t> {
+class ActivityTestanySimcall final : public ResultingSimcall<ssize_t> {
const std::vector<activity::ActivityImpl*>& activities_;
std::vector<int> indexes_; // indexes in activities_ pointing to ready activities (=whose test() is positive)
int next_value_ = 0;
int get_value() const { return next_value_; }
};
-class ActivityWaitSimcall : public ResultingSimcall<bool> {
+class ActivityWaitSimcall final : public ResultingSimcall<bool> {
activity::ActivityImpl* activity_;
const double timeout_;
double get_timeout() const { return timeout_; }
};
-class ActivityWaitanySimcall : public ResultingSimcall<ssize_t> {
+class ActivityWaitanySimcall final : public ResultingSimcall<ssize_t> {
const std::vector<activity::ActivityImpl*>& activities_;
std::vector<int> indexes_; // indexes in activities_ pointing to ready activities (=whose test() is positive)
const double timeout_;
int get_value() const { return next_value_; }
};
-class CommIsendSimcall : public SimcallObserver {
+class CommIsendSimcall final : public SimcallObserver {
activity::MailboxImpl* mbox_;
double payload_size_;
double rate_;
size_t src_buff_size_;
void* payload_;
bool detached_;
- activity::CommImpl* comm_;
- int tag_;
+ activity::CommImpl* comm_ = {};
+ int tag_ = {};
std::function<bool(void*, void*, activity::CommImpl*)> match_fun_;
std::function<void(void*)> clean_fun_; // used to free the synchro in case of problem after a detached send
auto const& get_copy_data_fun() const { return copy_data_fun_; }
};
-class CommIrecvSimcall : public SimcallObserver {
+class CommIrecvSimcall final : public SimcallObserver {
activity::MailboxImpl* mbox_;
unsigned char* dst_buff_;
size_t* dst_buff_size_;
void* payload_;
double rate_;
- int tag_;
- activity::CommImpl* comm_;
+ activity::CommImpl* comm_ = {};
+ int tag_ = {};
std::function<bool(void*, void*, activity::CommImpl*)> match_fun_;
std::function<void(activity::CommImpl*, void*, size_t)> copy_data_fun_; // used to copy data if not default one