evaluate#
Types for scoring alternative change sets against the accepted baseline of a Project. Pass a list of Candidate objects and EvaluateOptions to Project#evaluate, or to Project#evaluateWith together with an Execution mode. Each candidate runs on a disposable copy, so the project itself doesn't change.
The call returns an EvaluateResult: baseline Metrics plus one CandidateResult per candidate. The rest of the folder holds the parts of those metrics: LeveledMetrics for the leveled stage, Finish, TaskFinish and Shift for finish dates, and Overload with ResourceOverload, FocusOverload and Amount.
Most of these are mutable classes with public fields and a fluent withX(value) setter per field, and they implement DeepCloneable<T>. Execution is a final class with public final fields, built only through its static factories. Amount takes its value and delta in the constructor and has a copy() method. Every type here is in the org.dhtmlx.plen package. For how to compare candidates, see Evaluating alternatives.
- CandidateOne alternative change set, identified by an id, that Project#evaluate scores against the baseline
- CandidateResultThe score of one candidate from Project#evaluate, either its stage metrics and cost or the error that rejected it
- EvaluateOptionsOptions for Project#evaluate - baseline guard, leveling stage, focus tasks and cleared reference state
- EvaluateResultThe result of Project#evaluate, with baseline metrics and one scored result per candidate
- ExecutionSelects whether Project#evaluateWith scores candidates one after another or on worker threads
- LeveledMetricsMetrics of the leveled stage plus a summary of the leveling run
- MetricsFinish dates, overload, conflict and cycle counts and the cost of one evaluated stage, measured against the baseline
- OverloadResource overload of one evaluated stage, in total, per resource and per focus task, each with its difference from the baseline