fpmas 1.6
Public Member Functions | List of all members
fpmas::scheduler::Job Class Reference

#include <scheduler.h>

Inheritance diagram for fpmas::scheduler::Job:
Inheritance graph
[legend]
Collaboration diagram for fpmas::scheduler::Job:
Collaboration graph
[legend]

Public Member Functions

 Job ()
 
 Job (std::initializer_list< std::reference_wrapper< api::scheduler::Task > > tasks)
 
 Job (api::scheduler::Task &begin, std::initializer_list< std::reference_wrapper< api::scheduler::Task > > tasks)
 
 Job (api::scheduler::Task &begin, std::initializer_list< std::reference_wrapper< api::scheduler::Task > > tasks, api::scheduler::Task &end)
 
 Job (std::initializer_list< std::reference_wrapper< api::scheduler::Task > > tasks, api::scheduler::Task &end)
 
JID id () const override
 
void add (api::scheduler::Task &) override
 
void remove (api::scheduler::Task &) override
 
std::vector< api::scheduler::Task * > tasks () const override
 
TaskIterator begin () const override
 
TaskIterator end () const override
 
void setBeginTask (api::scheduler::Task &) override
 
void setEndTask (api::scheduler::Task &) override
 
api::scheduler::TaskgetBeginTask () const override
 
api::scheduler::TaskgetEndTask () const override
 
virtual JID id () const =0
 
virtual void add (Task &task)=0
 
virtual void remove (Task &task)=0
 
virtual std::vector< Task * > tasks () const =0
 
virtual TaskIterator begin () const =0
 
virtual TaskIterator end () const =0
 
virtual void setBeginTask (Task &task)=0
 
virtual TaskgetBeginTask () const =0
 
virtual void setEndTask (Task &task)=0
 
virtual TaskgetEndTask () const =0
 

Additional Inherited Members

- Public Types inherited from fpmas::api::scheduler::Job
typedef std::list< Task * >::const_iterator TaskIterator
 

Detailed Description

api::scheduler::Job implementation.

Constructor & Destructor Documentation

◆ Job() [1/5]

fpmas::scheduler::Job::Job ( )
inline

Job constructor.

Parameters
idjob id

◆ Job() [2/5]

fpmas::scheduler::Job::Job ( std::initializer_list< std::reference_wrapper< api::scheduler::Task > >  tasks)

Initializes a Job from the specified tasks.

Parameters
tasksinitial tasks

◆ Job() [3/5]

fpmas::scheduler::Job::Job ( api::scheduler::Task begin,
std::initializer_list< std::reference_wrapper< api::scheduler::Task > >  tasks 
)

Initializes a Job from the specified tasks.

Parameters
beginbegin task
tasksinitial tasks

◆ Job() [4/5]

fpmas::scheduler::Job::Job ( api::scheduler::Task begin,
std::initializer_list< std::reference_wrapper< api::scheduler::Task > >  tasks,
api::scheduler::Task end 
)

Initializes a Job from the specified tasks.

Parameters
beginbegin task
tasksinitial tasks
endend task

◆ Job() [5/5]

fpmas::scheduler::Job::Job ( std::initializer_list< std::reference_wrapper< api::scheduler::Task > >  tasks,
api::scheduler::Task end 
)

Initializes a Job from the specified tasks.

Parameters
tasksinitial tasks
endend task

Member Function Documentation

◆ id()

JID fpmas::scheduler::Job::id ( ) const
overridevirtual

◆ add()

void fpmas::scheduler::Job::add ( api::scheduler::Task task)
overridevirtual

Adds a task to this Job.

Parameters
tasktask to add

Implements fpmas::api::scheduler::Job.

◆ remove()

void fpmas::scheduler::Job::remove ( api::scheduler::Task task)
overridevirtual

Removes a task from this job.

Parameters
tasktask to remove

Implements fpmas::api::scheduler::Job.

◆ tasks()

std::vector< api::scheduler::Task * > fpmas::scheduler::Job::tasks ( ) const
overridevirtual

Returns a reference to the internal Tasks list.

Returns
current tasks list

Implements fpmas::api::scheduler::Job.

◆ begin()

Job::TaskIterator fpmas::scheduler::Job::begin ( ) const
overridevirtual

Returns a begin iterator to the job's tasks.

Returns
begin iterator

Implements fpmas::api::scheduler::Job.

◆ end()

Job::TaskIterator fpmas::scheduler::Job::end ( ) const
overridevirtual

Returns an end iterator to the job's tasks.

Returns
end iterator

Implements fpmas::api::scheduler::Job.

◆ setBeginTask()

void fpmas::scheduler::Job::setBeginTask ( api::scheduler::Task task)
overridevirtual

Sets the begin task of the job.

This task is assumed to be executed before the regular and unordered task list.

Parameters
taskbegin task

Implements fpmas::api::scheduler::Job.

◆ setEndTask()

void fpmas::scheduler::Job::setEndTask ( api::scheduler::Task task)
overridevirtual

Sets the end task of the job.

This task is assumed to be executed after the regular and unordered task list.

Parameters
taskend task

Implements fpmas::api::scheduler::Job.

◆ getBeginTask()

api::scheduler::Task & fpmas::scheduler::Job::getBeginTask ( ) const
overridevirtual

Gets a reference to the begin task of this job.

Returns
begin task

Implements fpmas::api::scheduler::Job.

◆ getEndTask()

api::scheduler::Task & fpmas::scheduler::Job::getEndTask ( ) const
overridevirtual

Gets a reference to the end task of this job.

Returns
end task

Implements fpmas::api::scheduler::Job.


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