using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DW5S.DTO
{
    /// 
    /// 融合带参定位参数模型(含星历)
    /// 
    public class RHPosDto
    {
        /// 
        /// 任务ID(可空)
        /// 
        public int? TaskID { get; set; }
        /// 
        /// 信号时刻
        /// 
        public DateTime SigTime { get; set; }
        /// 
        /// 主星编号
        /// 
        [Range(0, 100000)]
        public int MainCode { get; set; }
        /// 
        /// 邻星编号
        /// 
        [Range(0, 100000)]
        public int AdjaCode { get; set; }
        /// 
        /// 目标双星时差(主减邻,单位us)
        /// 
        public double SxDto { get; set; }
        /// 
        /// 目标双星频差(Hz)
        /// 
        public double SxDfo { get; set; }
        /// 
        /// 目标双星信噪比(dB)
        /// 
        public double SxSnr { get; set; }
        /// 
        /// 目标主星超短时差(主减地(>0),单位us)
        /// 
        public double XdDto { get; set; }
        /// 
        /// 目标星地频差(Hz)
        /// 
        public double XdDfo { get; set; }
        /// 
        /// 目标星地信噪比(dB)
        /// 
        public double XdSnr { get; set; }
        /// 
        /// 主星样本时差(>0,单位us)
        /// 
        public double MainYbDto { get; set; }
        /// 
        /// 邻星样本时差(>0,单位us)
        /// 
        public double AdjaYbDto { get; set; }
        /// 
        /// 测向结果
        /// 
        public double CxRes { get; set; }
        /// 
        /// 目标上行频点Hz
        /// 
        [Range(0,double.MaxValue)]
        public double FreqUp { get; set; }
        /// 
        /// 目标下行频点Hz(可空)
        /// 
        [Range(0,double.MaxValue)]
        public double? FreqDown { get; set; }
        /// 
        ///  主星X坐标
        /// 
        public double MainX { get; set; }
        /// 
        /// 主星Y坐标
        /// 
        public double MainY { get; set; }
        /// 
        /// 主星Z坐标
        /// 
        public double MainZ { get; set; }
        /// 
        ///  邻星X坐标
        /// 
        public double AdjaX { get; set; }
        /// 
        ///  邻星Y坐标
        /// 
        public double AdjaY { get; set; }
        /// 
        ///  邻星Z坐标
        /// 
        public double AdjaZ { get; set; }
        /// 
        /// 卫星接收天线经度
        /// 
        [Range(-180, 180)]
        public double SatTxLon { get; set; }
        /// 
        /// 卫星接收天线纬度
        /// 
        [Range(-90, 90)]
        public double SatTxLat { get; set; }
        /// 
        /// 超短波天线经度
        /// 
        [Range(-180, 180)]
        public double CdbTxLon { get; set; }
        /// 
        /// 超短波接收天线纬度
        /// 
        [Range(-90, 90)]
        public double CdbTxLat { get; set; }
        /// 
        /// 测向站经度
        /// 
        [Range(-180, 180)]
        public double CxLon { get; set; }
        /// 
        /// 测向站纬度
        /// 
        [Range(-90, 90)]
        public double CxLat { get; set; }
        /// 
        /// 参考站经度
        /// 
        [Range(-180, 180)]
        public double RefLon { get; set; }
        /// 
        /// 参考站纬度
        /// 
        [Range(-90, 90)]
        public double RefLat { get; set; }
        /// 
        /// 检测结果(可空)
        /// 
        public CheckResDto CheckRes { get; set; }
        /// 
        /// 是否计算理论频差
        /// 
        [Obsolete]
        public bool TheoryDfoCalc { get; set; } = false;
        /// 
        /// 是否计算置信度
        /// 
        [Obsolete]
        public bool CalcConfidence { get; set; } = false;
    }
}