30 virtual string getName()
const override {
return m_name; };
34 virtual future<SimulatorStatus> timeStep()
override;
36 virtual void welcomeHomeTravellers(
const pair<vector<uint>, vector<Health>>& travellers)
override;
38 virtual void hostForeignTravellers(
const vector<stride::Simulator::TravellerType>& travellers,
uint days,
39 const string& destination_district,
const string& destination_facility)
override;
49 sendNewTravellers(
uint amount,
uint days,
const string& destination_sim_id,
const string& destination_district,
50 const string& destination_facility)
override;
52 virtual void returnForeignTravellers()
override;
58 MPI_Datatype m_simulator_status;
59 MPI_Datatype m_returning_travellers;
64 sendNewTravellers(
const vector<Simulator::TravellerType>& travellers,
uint days,
const string& destination_sim_id,
65 const string& destination_district,
const string& destination_facility)
override;
70 returnForeignTravellers(
const pair<vector<uint>, vector<Health>>& travellers,
const string& home_sim_id)
override;
72 void makeSimulatorStatus();
74 void makeTravellersReturningStruct();
86 virtual string getName()
const override {
return ""; };
89 virtual void hostForeignTravellers(
const vector<stride::Simulator::TravellerType>& travellers,
uint days,
const string& destination_district,
const string& destination_facility)
override {}
90 virtual void sendNewTravellers(
uint amount,
uint days,
const string& destination_sim_id,
const string& destination_district,
const string& destination_facility)
override {}
94 virtual void sendNewTravellers(
const vector<Simulator::TravellerType>& travellers,
uint days,
const string& destination_sim_id,
const string& destination_district,
const string& destination_facility)
override {}
95 virtual void returnForeignTravellers(
const pair<vector<uint>, vector<Health>>& travellers,
const string& home_sim_id)
override {}
virtual string getName() const override
virtual void hostForeignTravellers(const vector< stride::Simulator::TravellerType > &travellers, uint days, const string &destination_district, const string &destination_facility) override
Receive travellers travellers: the travellers this simulator has to host.
virtual future< SimulatorStatus > timeStep() override
void makeSimulatorStatus()
Time Dependent Person DataType.
virtual void sendNewTravellers(uint amount, uint days, const string &destination_sim_id, const string &destination_district, const string &destination_facility) override
Commands to send an amount of travellers to another region The Simulator will have to take action...
virtual void welcomeHomeTravellers(const pair< vector< uint >, vector< Health >> &travellers) override
RemoteSimulatorSender(const string &m_name, const int mpi_id)
virtual void sendNewTravellers(const vector< Simulator::TravellerType > &travellers, uint days, const string &destination_sim_id, const string &destination_district, const string &destination_facility) override
Send specifically chosen travellers to the destination region This function is used by the Simulator ...
Header for the Simulator class.
Main class that contains and direct the virtual world.
virtual void returnForeignTravellers(const pair< vector< uint >, vector< Health >> &travellers, const string &home_sim_id) override
Send foreign travellers to the original region This function is used by the Simulator to give the sig...
virtual void returnForeignTravellers() override
Return foreign people that would return today, signals the Simulator to return today's travellers...
void makeTravellersReturningStruct()