| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- using System;
- using System.Collections.Generic;
- using System.Collections.ObjectModel;
- using System.ComponentModel;
- using System.Linq;
- using System.Runtime.CompilerServices;
- using System.Text;
- using System.Threading.Tasks;
- namespace TeamAAS_VP.Models
- {
- /// <summary>
- /// 综合结果
- /// </summary>
- public class AnalysisResult : INotifyPropertyChanged
- {
- private double _sharpness;
- private CheckerboardResult _checkerboard = new CheckerboardResult();
- private double _qualityScore;
- private int _frameCount;
- private double _bestSharpness;
- private DateTime _analysisTime;
- private ObservableCollection<string> _suggestions = new ObservableCollection<string>();
- public double Sharpness
- {
- get => _sharpness;
- set => SetField(ref _sharpness, value);
- }
- public CheckerboardResult Checkerboard
- {
- get => _checkerboard;
- set => SetField(ref _checkerboard, value);
- }
- public double QualityScore
- {
- get => _qualityScore;
- set => SetField(ref _qualityScore, value);
- }
- public int FrameCount
- {
- get => _frameCount;
- set => SetField(ref _frameCount, value);
- }
- public double BestSharpness
- {
- get => _bestSharpness;
- set => SetField(ref _bestSharpness, value);
- }
- public DateTime AnalysisTime
- {
- get => _analysisTime;
- set => SetField(ref _analysisTime, value);
- }
- public ObservableCollection<string> Suggestions
- {
- get => _suggestions;
- set => SetField(ref _suggestions, value);
- }
- public event PropertyChangedEventHandler PropertyChanged;
- protected virtual void OnPropertyChanged([CallerMemberName] string propertyName = null)
- {
- PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(propertyName));
- }
- protected bool SetField<T>(ref T field, T value, [CallerMemberName] string propertyName = null)
- {
- if (EqualityComparer<T>.Default.Equals(field, value)) return false;
- field = value;
- OnPropertyChanged(propertyName);
- return true;
- }
- }
- }
|