sclass G22FindSimilarMasksTask { // Image we are looking up settable Image2B queryImage; // optional - which primary mask holder is tasked with the search settable IG22MasksHolder mainMasksHolder; // where the found masks go (probability = similarity) settable new ProbabilisticList outList; // probabilistic stack & scheduler settable new PStack pstack; // how many full mask comparisons were made int comparisons; class FoundMask { settable G22Mask mask; settable double similarity; settable int candidateNumber; } IProbabilisticScheduler scheduler() { ret pstack.scheduler(); } void foundMask(IG22Mask mask, double similarity) { print("Found mask with similarity " + formatDouble3X(similarity) + " in step " + scheduler().stepCount()); outList.add(new FoundMask().+mask.+similarity); } }