예제 #1
0
 /// <summary>
 /// 产生了结果
 /// </summary>
 /// <param name="result"></param>
 /// <param name="streamer"></param>
 private void OnResultProduced(TResult result, ObsFileProcessStreamer <TMaterial, TResult> streamer)
 {
     if (ResultProduced != null)
     {
         ResultProduced(result, streamer);
     }
 }
        /// <summary>
        /// 产生了一个结果
        /// </summary>
        /// <param name="result"></param>
        /// <param name="streamer"></param>
        protected void Solver_ResultProduced(TResult result, ObsFileProcessStreamer <TMaterial, TResult> streamer)
        {
            if (this.IsCancel)
            {
                streamer.IsCancel = this.IsCancel;
            }

            if (TotalRunnerCount == 1)
            {
                if (streamer.Previous != null && this.ProgressViewer != null)
                {
                    this.ProgressViewer.IsBackwardProcess = (result.ReceiverTime < streamer.Previous.ReceiverTime);
                }
                this.PerformProcessStep();
            }
        }