Operations a pair rule merged into another.
Color stages the operations collapsed into.
Extent the decode produced.
What the planner gave up to fit a budget, by name.
Empty unless Image.budget was set and the estimate was over it. 'effort' means the
decode ran fast: a lossy decoder dropped its smoothing pass and an enlargement the caller
left open stepped down a filter. 'filter' means a filter left open went to nearest.
'scale' means the decoder was asked for a further reduction, so the resample read fewer
source samples than the output it produced and the result is softer.
A caller who would rather fail than serve a softer image reads this and refuses.
Operations an identity or annihilation rule removed.
What running this plan is expected to cost in milliseconds, before any encoder.
An estimate and not a promise: the rates behind it were measured on one machine, and against real transforms it lands within about 20%. That is the accuracy the question needs when the question is whether work will fit inside a CPU limit, and it is not a substitute for measuring, which TinyImgModule.measure does.
0 when the source header could not be read.
Special cases the planner took, by name.
Operations left after the rewrites.
Extent of the final image, and how many channels it carries.
Channels per pixel, 1 through 4.
Fused passes the run will make.
The region of the source the decoder was asked for.
The subsampling denominator the decoder was asked for: 1, 2, 4 or 8.
What the planner decided, before any pixel was touched.