Simplify creation of new dynamic schedulers
For now, if someone wants to create a new dynamic scheduler (or transform a static scheduler into dynamic), here is what one should do:
- change super class from
ISchedulingAlgorithm
toDynScheduler
- add the call
DynScheduler::on_simulation_start(date, batsim_config);
at the beginning ofon_simulation_start
- add the call
DynScheduler::make_decisions(date, update_info, compare_info);
at the end ofmake_decisions
- update the status of jobs with
if (broker_enabled) broker->update_status_if_dyn_job(new_job_id, STATUS);
each time the scheduler adds or rejects a job
This should be made easier by hiding these calls somehow.
Edited by Maël Madon