Scheduler
Public Member Functions | Protected Attributes | List of all members
Scheduler::TimeOut Class Referenceabstract

#include <timeoutEvent.h>

Inheritance diagram for Scheduler::TimeOut:
Scheduler::Event Scheduler::DummyEvent Scheduler::FreqUpdate Scheduler::SchedTimeOut Scheduler::StatsTick Scheduler::UsageUpdate

Public Member Functions

 TimeOut (double time, bool renew=true)
 
void process () override
 handle the the event TODO: 'process' is maybe not the best word for that, given that our simulator actually manipulated processes More...
 
virtual void doWork ()
 
virtual std::shared_ptr< TimeOutgetNextTimeout ()=0
 
double getInterval ()
 
void setInterval (double inter)
 
- Public Member Functions inherited from Scheduler::Event
 Event (double time, bool renew=true)
 Event constructor. More...
 
void setTask (std::shared_ptr< Process > task)
 if the event is specific to a task, set it here. TODO not all events have an associated task. This should be moved More...
 
double getTime ()
 get the time at which the event is scheduled More...
 
virtual ~Event ()
 
virtual void print ()
 print information about the event More...
 
virtual std::string getName ()=0
 get the name of the event More...
 

Protected Attributes

double interval {2.0}
 
- Protected Attributes inherited from Scheduler::Event
double time
 
bool renew
 
std::shared_ptr< Processtask {nullptr}
 
TriggeringEvent eventType {nothing}
 The event type is need by the scheduling discipline, to determine if this kind of event triggers invokatio of that discipline. More...
 

Detailed Description

Definition at line 19 of file timeoutEvent.h.

Constructor & Destructor Documentation

Scheduler::TimeOut::TimeOut ( double  time,
bool  renew = true 
)
inline

Definition at line 22 of file timeoutEvent.h.

Member Function Documentation

void TimeOut::doWork ( )
virtual
double TimeOut::getInterval ( )

Definition at line 52 of file timeoutEvent.cpp.

virtual std::shared_ptr<TimeOut> Scheduler::TimeOut::getNextTimeout ( )
pure virtual
void TimeOut::process ( )
overridevirtual

handle the the event TODO: 'process' is maybe not the best word for that, given that our simulator actually manipulated processes

Implements Scheduler::Event.

Definition at line 24 of file timeoutEvent.cpp.

void TimeOut::setInterval ( double  inter)

Definition at line 57 of file timeoutEvent.cpp.

Member Data Documentation

double Scheduler::TimeOut::interval {2.0}
protected

Definition at line 29 of file timeoutEvent.h.


The documentation for this class was generated from the following files: