static public JobHandle Schedule(Data data, OptimizedInfo info, MergeChecker mergeChecker, NativeArray <MergeCellInfo> optimizationCells, JobHandle dependOn = default) { var optimizationJob = new GenerateOptimizationData <MergeChecker> { distanceColNum = data.ColNum, distanceRowNum = data.RowNum, mode = info.OptimizationMode, mergeChecker = mergeChecker, cells = optimizationCells, distances = data.RawData }; return(optimizationJob.Schedule(dependOn)); }
static private JobHandle ScheduleGenerateOptimizationData <MergeChecker>(Data data, OptimizedInfo info, MergeChecker checker, NativeArray <MergeCellInfo> mergeInfoArray, JobHandle lastHandle) where MergeChecker : struct, IMergeChecker => GenerateOptimizationData <MergeChecker> .Schedule(data, info, checker, mergeInfoArray, lastHandle);