26 assert(
task !=
nullptr);
38 return "Task terminates";
std::shared_ptr< Process > task
virtual void print()
print information about the event
std::string getName() override
get the name of the event
static System * getInstance()
void scheduleTask(TriggeringEvent trigger)
This function is the scheduler. When called, it schedule the task to be executed on the processor ama...
void put(double currentTime, std::shared_ptr< Process > p)
TaskScheduler * getScheduler()
returns the task scheduler object
void clearRunningTask(std::shared_ptr< Process > p)
static SpecialMailbox * getInstance()
TriggeringEvent eventType
The event type is need by the scheduling discipline, to determine if this kind of event triggers invo...
void process() override
handle the the event TODO: 'process' is maybe not the best word for that, given that our simulator ac...