public bool Execute(IWaferEdgeFindData edgeFindData, ref IWaferFittingData edgeFitData) { return(true); }
/// <summary> /// /// </summary> /// <returns></returns> public override bool Execute() { if (!IsInitialized) { _logger?.Error($"{this.GetType().Name} Run is not initialized yet."); return(false); } _logger?.Info($"{this.GetType().Name} Run started."); while (!_dirReader.IsEndOfDirectory()) { _watch1.Restart(); string name = string.Empty; _dirReader.GetNextImage(_dynamicResult, ref name); LogElapsedTime(_watch1, $"Image reading: {Path.GetFileName(name)}"); _preProc.Execute(_dynamicResult, name); //_preProc.Run(_dynamicResult, name); LogElapsedTime(_watch1, $"Image pre-processing: {Path.GetFileName(name)}"); _borderSearcher.Execute(_dynamicResult, name); //_borderSearcher.Run(_images[1], _masks[1], ref _borderPoints2, name); LogElapsedTime(_watch1, $"Border search: {Path.GetFileName(name)}"); _columnDataCalculator.Execute(_dynamicResult, string.Empty); LogElapsedTime(_watch1, $"Column data, statistical calculation: {Path.GetFileName(name)}"); IColumnMeasurementResult result1 = new ColumnMeasurementResult { Name = "img1", ColumnMeanVector = _meanVector1, ColumnStdVector = _stdVector1 }; IColumnMeasurementResult result2 = new ColumnMeasurementResult { Name = "img2", ColumnMeanVector = _meanVector2, ColumnStdVector = _stdVector2 }; _saver.SaveResult(result1, name, ""); _saver.SaveResult(result2, name, ""); LogElapsedTime(_watch1, $"Result saving: {Path.GetFileName(name)}"); IWaferEdgeFindData waferEdgeFindData1 = null; IWaferEdgeFindData waferEdgeFindData2 = null; _edgeFinder.Execute(_dynamicResult, ref waferEdgeFindData1); //_edgeFinder.Run(_images[1], _masks[1], ref waferEdgeFindData2); LogElapsedTime(_watch1, "Edge finder"); IWaferFittingData waferEdgeFittingData1 = null; IWaferFittingData waferEdgeFittingData2 = null; _edgeFitter.Execute(waferEdgeFindData1, ref waferEdgeFittingData1); _edgeFitter.Execute(waferEdgeFindData2, ref waferEdgeFittingData2); LogElapsedTime(_watch1, "Edge fitter"); Console.WriteLine(); } _logger?.Info($"{this.GetType().Name} Run ended."); return(true); }