- ModelChecker(pid_t pid, int socket);
- ~ModelChecker();
-
- Process& process()
- {
- return *process_;
- }
- PageStore& page_store()
- {
- return page_store_;
- }
- const char* get_host_name(const char* name);
-
- bool is_important_snapshot(Snapshot const& snapshot) const
- {
- return &snapshot == this->parent_snapshot_;
- }
-
- void start();
- void shutdown();
- void resume(simgrid::mc::Process& process);
- void loop();
- bool handle_events();
- void wait_client(simgrid::mc::Process& process);
- void simcall_handle(simgrid::mc::Process& process, unsigned long pid, int value);
- void wait_for_requests()
- {
- mc_model_checker->wait_client(mc_model_checker->process());
- }
-private:
- void setup_ignore();
- bool handle_message(char* buffer, ssize_t size);
- void handle_signals();
- void handle_waitpid();
- void on_signal(const struct signalfd_siginfo* info);