Exemplo n.º 1
0
 public void Handle(ChangeValidIntervalEvent message)
 {
     Dt.Stop();
     Dt.Interval = TimeSpan.FromSeconds(message.ValidInterval);
     Dt.Start();
 }
Exemplo n.º 2
0
        private bool Save()
        {
            if (UnitCore.Instance.LoadConfiguration() == false)
            {
                EventAggregator.PublishMessage(new LogEvent("访问配置文件出错!", LogType.Both));
                return(false);
            }
            IPAddress ip01, ip02, ip03, ip04;

            if (IPAddress.TryParse(Buoy01IpAddr, out ip01) == false)
            {
                EventAggregator.PublishMessage(new LogEvent("浮标01网络地址非法!", LogType.OnlyInfo));
                return(false);
            }
            if (IPAddress.TryParse(Buoy02IpAddr, out ip02) == false)
            {
                EventAggregator.PublishMessage(new LogEvent("浮标02网络地址非法!", LogType.OnlyInfo));
                return(false);
            }
            if (IPAddress.TryParse(Buoy03IpAddr, out ip03) == false)
            {
                EventAggregator.PublishMessage(new LogEvent("浮标03网络地址非法!", LogType.OnlyInfo));
                return(false);
            }
            if (IPAddress.TryParse(Buoy04IpAddr, out ip04) == false)
            {
                EventAggregator.PublishMessage(new LogEvent("浮标04网络地址非法!", LogType.OnlyInfo));
                return(false);
            }

            bool result = (UnitCore.Instance.MonConfigueService.SetNetIP(0, Buoy01IpAddr) &&
                           UnitCore.Instance.MonConfigueService.SetNetIP(1, Buoy02IpAddr) &&
                           UnitCore.Instance.MonConfigueService.SetNetIP(2, Buoy03IpAddr) &&
                           UnitCore.Instance.MonConfigueService.SetNetIP(3, Buoy04IpAddr));

            if (result == false)
            {
                EventAggregator.PublishMessage(new LogEvent("保存浮标地址出错", LogType.Both));
                return(false);
            }
            var ans = (UnitCore.Instance.MonConfigueService.SetNetBroadPort(BuoyPort) &&
                       UnitCore.Instance.MonConfigueService.SetNetRecvPort(ListenPort));

            if (ans == false)
            {
                EventAggregator.PublishMessage(new LogEvent("保存端口参数出错", LogType.Both));
                return(false);
            }
            if (!UnitCore.Instance.MonConfigueService.SetAcousticVel(Velocity))
            {
                EventAggregator.PublishMessage(new LogEvent("保存默认声速出错", LogType.Both));
                return(false);
            }
            if (!UnitCore.Instance.MonConfigueService.SetOffset(FixedOffset))
            {
                EventAggregator.PublishMessage(new LogEvent("保存测距偏移出错", LogType.Both));
                return(false);
            }
            //if (!UnitCore.Instance.MonConfigueService.SetTimeOut(TimeOut))
            //{
            //    EventAggregator.PublishMessage(new LogEvent("保存定位超时出错", LogType.Both));
            //    return false;
            //}
            //if (!UnitCore.Instance.MonConfigueService.SetValidInterval(ValidInterval))
            //{
            //    EventAggregator.PublishMessage(new LogEvent("保存定位间隔出错", LogType.Both));
            //    return false;
            //}
            if (!UnitCore.Instance.MonConfigueService.SetSonarDepth(SonarDepth))
            {
                EventAggregator.PublishMessage(new LogEvent("保存声呐深度出错", LogType.Both));
                return(false);
            }
            if (!UnitCore.Instance.MonConfigueService.SetPreAdjust(PreAdjust))
            {
                EventAggregator.PublishMessage(new LogEvent("保存压力校准值出错", LogType.Both));
                return(false);
            }
            if (!UnitCore.Instance.MonConfigueService.SetAUVID1(AUVID1))
            {
                EventAggregator.PublishMessage(new LogEvent("保存AUV 01 ID出错", LogType.Both));
                return(false);
            }
            if (!UnitCore.Instance.MonConfigueService.SetAUVID2(AUVID2))
            {
                EventAggregator.PublishMessage(new LogEvent("保存AUV 02 ID出错", LogType.Both));
                return(false);
            }
            BaseType.TeleRange.pressureadjust = PreAdjust;
            var interval = new ChangeValidIntervalEvent();

            interval.ValidInterval = ValidInterval;
            //UnitCore.Instance.EventAggregator.PublishMessage(interval);
            return(true);
        }