CrystalSpace

Public API Reference

iJobQueue Struct Reference

Interface to simple job management. More...

#include <iutil/job.h>

Inheritance diagram for iJobQueue:

Inheritance graph
[legend]
List of all members.

Public Member Functions

virtual void Enqueue (iJob *job)=0
 Add a job to the queue.
virtual void PullAndRun (iJob *job)=0
 Check if a job is still in the queue.
virtual void Unqueue (iJob *job, bool waitIfCurrent=true)=0
 Remove a job from the queue.

Detailed Description

Interface to simple job management.

Jobs are enqueued and run one after another, e.g. in another thread.

See also:
csThreadJobQueue

Definition at line 47 of file job.h.


Member Function Documentation

virtual void iJobQueue::Enqueue ( iJob job  )  [pure virtual]

Add a job to the queue.

Implemented in csThreadJobQueue.

virtual void iJobQueue::PullAndRun ( iJob job  )  [pure virtual]

Check if a job is still in the queue.

If yes, remove it from the queue and run it immediately.

Implemented in csThreadJobQueue.

virtual void iJobQueue::Unqueue ( iJob job,
bool  waitIfCurrent = true 
) [pure virtual]

Remove a job from the queue.

If the job is currently running and waitIfCurrent is true, wait until the job has finished. This guarantees that the queue won't hold any reference to the job object.

Implemented in csThreadJobQueue.


The documentation for this struct was generated from the following file:
Generated for Crystal Space by doxygen 1.4.7