Example #1
0
 public void Initialize()
 {
     if (IsInitialize)
     {
         throw new Exception("已初始化");
     }
     IsInitialize = true;
     try
     {
         if (!TCPDataService.Init(int.Parse(_conf.GetNetPort())))
         {
             throw new Exception("数据端口初始化失败");
         }
         if (!TCPCmdService.Init(int.Parse(_conf.GetNetCmdPort())))
         {
             throw new Exception("命令端口初始化失败");
         }
     }
     catch (Exception)
     {
         IsInitialize = false;
     }
     try
     {
         if (!TCPPoseService.Init(int.Parse(_conf.GetPosePort())))
         {
             throw new Exception("姿态传感器端口初始化失败");
         }
     }
     catch (Exception)
     {
         IsInitialize = false;
     }
 }
Example #2
0
 private bool CreateTCPListening()
 {
     try
     {
         if (!SonarIsOK)
         {
             TCPDataService.Start();
             TCPDataService.Register(NetDataObserver);
             TCPCmdService.Start();
             TCPCmdService.Register(NetDataObserver);
             SonarIsOK = true;
         }
         if (!PoseIsOK)
         {
             TCPPoseService.Start();
             TCPPoseService.Register(NetDataObserver);
             PoseIsOK = true;
         }
         return(PoseIsOK && SonarIsOK);
     }
     catch (Exception e)
     {
         Error = e.Message;
         return(false);
     }
 }
Example #3
0
 public void Stop()
 {
     if (IsInitialize)
     {
         TCPDataService.UnRegister(NetDataObserver);
         TCPDataService.Stop();
         TCPCmdService.Stop();
         TCPPoseService.UnRegister(NetDataObserver);
         TCPPoseService.Stop();
     }
     IsWorking    = false;
     IsInitialize = false;
 }
Example #4
0
        public void Initialize()
        {
            if (IsInitialize)
            {
                throw new Exception("已初始化");
            }

            _datatcpClient = new TcpClient {
                SendTimeout = 1000
            };
            _cmdtcpClient = new TcpClient {
                SendTimeout = 1000
            };
            _posetcpClient = new TcpClient {
                SendTimeout = 1000
            };
            IsInitialize = true;
            try
            {
                if (!TCPDataService.Init(_datatcpClient, IPAddress.Parse(_conf.GetIP()), int.Parse(_conf.GetNetPort())))
                {
                    throw new Exception("数据端口初始化失败");
                }
                if (!TCPCmdService.Init(_cmdtcpClient, IPAddress.Parse(_conf.GetIP()), int.Parse(_conf.GetNetCmdPort())))
                {
                    throw new Exception("命令端口初始化失败");
                }
            }
            catch (Exception)
            {
                IsInitialize = false;
            }
            try
            {
                if (!TCPPoseService.Init(_posetcpClient, IPAddress.Parse(_conf.GetPoseIP()), int.Parse(_conf.GetPosePort())))
                {
                    throw new Exception("姿态传感器网络初始化失败");
                }
            }
            catch (Exception)
            {
                IsInitialize = false;
            }
        }
Example #5
0
 private bool CreateTCPService(BasicConf conf)
 {
     // 同步方法,会阻塞进程,调用init用task
     if (!SonarIsOK)
     {
         TCPDataService.ConnectSync();
         TCPDataService.Register(NetDataObserver);
         TCPCmdService.ConnectSync();
         TCPCmdService.Register(NetDataObserver);
     }
     if (!PoseIsOK)
     {
         TCPPoseService.ConnectSync();
         TCPPoseService.Register(NetDataObserver);
     }
     if (SonarIsOK && PoseIsOK)
     {
         return(true);
     }
     return(false);
 }