using DevExpress.Xpo; using Ips.Library.Entity; using Ips.Sps.Sigs; using System; namespace Ips.Sps.Tsks { public class TskSignal : SignalBasic { public TskSignal() : base() { } public TskSignal(Session session) : base(session) { } public override void AfterConstruction() { base.AfterConstruction(); SigCategory = SignalCategory.TarSig; SigType = SignalType.NORMAL; } private Tsk _tsk; [Association("Tsk_SignalList")] [MemberDesignTimeVisibility(false)] public Tsk Tsk { get => _tsk; set => SetPropertyValue(nameof(Tsk), ref _tsk, value); } private Tsk _refTsk; [Association("Tsk_RefSignalList")] [MemberDesignTimeVisibility(false)] public Tsk RefTsk { get => _refTsk; set => SetPropertyValue(nameof(RefTsk), ref _refTsk, value); } public static TskSignal CreateFrom(Sigs.Signal sig, Session session) { TskSignal tskSig = new TskSignal(session); tskSig.SigCategory = sig.SigCategory; tskSig.SigType = sig.SigType; tskSig.SigFreq = sig.SigFreq; tskSig.FreqStart = sig.FreqStart; tskSig.FreqEnd = sig.FreqEnd; tskSig.FreqStep = sig.FreqStep; tskSig.BandWidth = sig.BandWidth; tskSig.SigLen = sig.SigLen; tskSig.EmtId = sig.EmtId; tskSig.MainSatId = sig.MainSatId; tskSig.AdjaSatIds = sig.AdjaSatIds; tskSig.HasRange = sig.HasRange; tskSig.SigLon = sig.SigLon; tskSig.SigLat = sig.SigLat; tskSig.LonRange = sig.LonRange; tskSig.LatRange = sig.LatRange; tskSig.SigAlt = sig.SigAlt; return tskSig; } } }