ULIS  dev4.0.7
Utility Library for Imaging Systems
Public Member Functions | Static Public Attributes | List of all members
FSchedulePolicy Class Reference

The FSchedulePolicy class provides a way to control how a task is dispatched and scheduled on a multithreaded system, in coordination with a FThreadPool and a FCommandQueue. More...

Public Member Functions

 FSchedulePolicy (eScheduleTimePolicy iTime=ScheduleTime_Sync, eScheduleRunPolicy iRun=ScheduleRun_Multi, eScheduleModePolicy iMode=ScheduleMode_Scanlines, eScheduleParameterPolicy iParam=ScheduleParameter_Count, int64 iValue=-1)
 
 ~FSchedulePolicy ()
 
eScheduleModePolicy ModePolicy () const
 
eScheduleParameterPolicy ParameterPolicy () const
 
eScheduleRunPolicy RunPolicy () const
 
eScheduleTimePolicy TimePolicy () const
 
int64 Value () const
 

Static Public Attributes

static const FSchedulePolicy AsyncCacheEfficient
 
static const FSchedulePolicy AsyncMonoChunk
 
static const FSchedulePolicy AsyncMonoScanlines
 
static const FSchedulePolicy AsyncMultiScanlines
 
static const FSchedulePolicy CacheEfficient
 
static const FSchedulePolicy MonoChunk
 
static const FSchedulePolicy MonoScanlines
 
static const FSchedulePolicy MultiScanlines
 

Detailed Description

The FSchedulePolicy specifies wether a task should be multithreaded or not, and if so which policy should be applied. Wether the scheduling is done on a chunk basis, or on a scanline basis, for example.

See also
FContext
FThreadPool
FCPUInfo
FCommandQueue

Constructor & Destructor Documentation

◆ ~FSchedulePolicy()

FSchedulePolicy::~FSchedulePolicy ( )

Destructor

◆ FSchedulePolicy()

Constructor with default values. Defaults to mono scanline run and synchronous.

Member Function Documentation

◆ ModePolicy()

eScheduleModePolicy FSchedulePolicy::ModePolicy ( ) const

Getter for the Mode Policy.

◆ ParameterPolicy()

eScheduleParameterPolicy FSchedulePolicy::ParameterPolicy ( ) const

Getter for the Parameter Policy.

◆ RunPolicy()

eScheduleRunPolicy FSchedulePolicy::RunPolicy ( ) const

Getter for the Run Policy.

◆ TimePolicy()

eScheduleTimePolicy FSchedulePolicy::TimePolicy ( ) const

Getter for the Time Value.

◆ Value()

int64 FSchedulePolicy::Value ( ) const

Getter for the Parameter Value.

Member Data Documentation

◆ AsyncCacheEfficient

const FSchedulePolicy FSchedulePolicy::AsyncCacheEfficient
static

◆ AsyncMonoChunk

const FSchedulePolicy FSchedulePolicy::AsyncMonoChunk
static

◆ AsyncMonoScanlines

const FSchedulePolicy FSchedulePolicy::AsyncMonoScanlines
static

◆ AsyncMultiScanlines

const FSchedulePolicy FSchedulePolicy::AsyncMultiScanlines
static

◆ CacheEfficient

const FSchedulePolicy FSchedulePolicy::CacheEfficient
static

◆ MonoChunk

const FSchedulePolicy FSchedulePolicy::MonoChunk
static

◆ MonoScanlines

const FSchedulePolicy FSchedulePolicy::MonoScanlines
static

◆ MultiScanlines

const FSchedulePolicy FSchedulePolicy::MultiScanlines
static