Main Page | Namespace List | Class Hierarchy | Alphabetical List | Data Structures | Directories | File List | Namespace Members | Data Fields | Globals

Scheduler Namespace Reference


Data Structures

class  Scheduler::NoSmoothing
 Does no frame time smoothing. More...
class  Scheduler::FixedLimitSmoothing
 Ends frame processing at a fixed time. More...
class  Scheduler::MovingAverageSmoothing
 Uses a moving average frame-length to restrict frame processing. More...
class  Scheduler::PriorityOrdering< CallbackType >
 Order tasks by a simple priority metric. More...
struct  Scheduler::PriorityOrdering< CallbackType >::Task
class  Scheduler::UrgencyOrdering< CallbackType >
 Order tasks based on a window of possible execution. More...
struct  Scheduler::UrgencyOrdering< CallbackType >::Task
struct  Scheduler::UrgencyOrdering< CallbackType >::ShortlistTask
class  Scheduler::TaskQueue< TaskOrderingPolicy, StepSmoothingPolicy >
 Coordinate task scheduling. More...

Typedefs

typedef boost::function< bool(unsigned long) BoostCallback )
typedef TaskQueue< PriorityOrdering<
BoostCallback >, NoSmoothing
FrameLockedQueue
 Frame-locked task queue.
typedef TaskQueue< UrgencyOrdering<
BoostCallback >, FixedLimitSmoothing
FixedLimitQueue
 Fixed-length frame queue, for periodic tasks.
typedef TaskQueue< UrgencyOrdering<
BoostCallback >, MovingAverageSmoothing
MovingAverageQueue
 Adaptively adjusted frame-length queue, for periodic tasks.
typedef fastdelegate::FastDelegate1<
unsigned long, bool > 
FastDelegateCallback
typedef unsigned int TaskId


Typedef Documentation

typedef boost::function<bool (unsigned long) Scheduler::BoostCallback)
 

Definition at line 20 of file BoostScheduler.h.

typedef TaskQueue< PriorityOrdering< FastDelegateCallback >, NoSmoothing > Scheduler::FrameLockedQueue
 

Frame-locked task queue.

Useful for tasks that must execute in sync with each other. Eg. graphics rendering, input handling, possibly physics, etc.

Definition at line 28 of file BoostScheduler.h.

typedef TaskQueue< UrgencyOrdering< FastDelegateCallback >, FixedLimitSmoothing > Scheduler::FixedLimitQueue
 

Fixed-length frame queue, for periodic tasks.

Useful for a set of tasks where each processing step should only take a given amount of time, and where low-priority tasks can tolerate being called at a much lower than expected frequency under periods of heavy load. (Can help create a fixed frame-rate).

Definition at line 37 of file BoostScheduler.h.

typedef TaskQueue< UrgencyOrdering< FastDelegateCallback >, MovingAverageSmoothing > Scheduler::MovingAverageQueue
 

Adaptively adjusted frame-length queue, for periodic tasks.

Useful for managing tasks under fluctuating load. As load increases, higher variance tasks are used as a buffer to ensure low variance tasks are executed regularly. If load stays high, the over-capacity processing burden is spread amongst all tasks and frame rate drops.

Definition at line 45 of file BoostScheduler.h.

typedef fastdelegate::FastDelegate1<unsigned long, bool> Scheduler::FastDelegateCallback
 

Definition at line 126 of file Scheduler.h.

typedef unsigned int Scheduler::TaskId
 

Definition at line 17 of file TaskOrderingPolicies.h.


Copyright (c) 2005, Paul Bridger
All rights reserved.