KTaskSelector

class KTaskSelector

Abstract interface class for task selection heuristic A custom scheduling optimization strategy can be specified by using the KTaskSerializer branching scheme to select the task to be scheduled and value choice heuristics for its start and duration variables.

../../_images/taskSerializer.png

See

KSmallestEarliestStartTime KSmallestEarliestCompletionTime KLargestEarliestStartTime KLargestEarliestCompletionTime KSmallestLatestStartTime KSmallestLatestCompletionTime KLargestLatestStartTime KLargestLatestCompletionTime

Since

2016.1

Subclassed by KLargestDurationDomain, KLargestEarliestCompletionTime, KLargestEarliestStartTime, KLargestLatestCompletionTime, KLargestLatestStartTime, KSmallestEarliestCompletionTime, KSmallestEarliestStartTime, KSmallestLatestCompletionTime, KSmallestLatestStartTime, KSmallestTargetStartTime, KTaskInputOrder, KTaskRandomOrder

Public Functions

KTaskSelector()

Empty constructor

KTaskSelector(KProblem *problem)

Constructor with KProblem

KTaskSelector(const KTaskSelector &selectorToCopy)

Copy constructor

virtual ~KTaskSelector()

Destructor.

virtual KTask *selectNextTask(KTaskArray *taskArray)

virtual interface method to overload for definition of your own task selection heuristics

Parameters

intVarArray – Array of variable from wich selecting a variable

virtual KTaskSelector *getCopyPtr() const

Return a copy of this task selector

Returns

a copy of this task selector

inline virtual void printName() const

Pretty printing

inline virtual const char *getName() const

Return the name of this task selector