using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.IO;
using System.Linq;
using System.Runtime.Serialization;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Markup;
using XdCxRhDW.Dto.Attribute;
namespace XdCxRhDW.Dto
{
///
/// GPU参估参数模型
///
public class GpuCgRequestDto
{
///
/// 上传后返回的文件名
///
[FileMustExist]
public string file1 { get; set; }
///
/// 上传后返回的文件名
///
[FileMustExist]
public string file2 { get; set; }
///
/// 样点数(0表示文件末尾,0-1之间的小数表示样点百分比)
///
[RangeDouble(0, IncludeMin = true)]
public double smpCount { get; set; }
///
/// 采样率(Hz)
///
[RangeDouble(0, 100e6)]
public double samplingRate { get; set; }
///
/// 时差中心(us)
///
public double dtCenter { get; set; }
///
/// 时差范围(us)
///
[RangeDouble(0, 100000)]
public double dtRange { get; set; }
///
/// 频差范围(单位Hz,默认16384)
///
[Pow2]
public double dfRange { get; set; } = 32768;
///
/// 信噪比门限dB
///
[RangeDouble(10, 50, IncludeMin = true)]
public double snrThreshold { get; set; }
///
/// 超时时间(单位秒,默认120秒)
///
[RangeInt(10, 600, IncludeMin = true)]
public int TimeoutSeconds { get; set; } = 120;
}
///
/// GPU参估结果模型
///
public class GpuCgResponseDto
{
///
/// 样点长度
///
public long Smplen { get; set; }
///
/// 相关时差,单位:us
///
public double Dt { get; set; }
///
/// 相关频差:单位:Hz
///
public double Df { get; set; }
///
/// 相关信噪比,单位:db
///
public double Snr { get; set; }
///
/// 耗时(ms)
///
public int TimeMs { get; set; }
///
/// 54专用,避免样点转时间出现毫秒级误差
///
[Obsolete]
public float TimeSeconds { get; set; }
}
}