Ejemplo n.º 1
0
        // Update is called once per frame
        void Update()
        {
            if (_threadOnOpen)
            {
                OnOpen.Invoke();
                _threadOnOpen = false;
            }
            if (_threadOnOpenFailed)
            {
                ErrorClose();
                OnOpenFailed.Invoke();
                _threadOnOpenFailed = false;
            }
            if (_threadOnErrorClosed)
            {
                ErrorClose();
                OnErrorClosed.Invoke();
                _threadOnErrorClosed = false;
            }
            if (_threadOnStartSearch)
            {
                OnStartSearch.Invoke();
                _threadOnStartSearch = false;
            }
            if (_threadOnStopSearch)
            {
                OnStopSearch.Invoke();
                _threadOnStopSearch = false;
            }
            if (_threadOnFoundDevice)
            {
                OnFoundDevice.Invoke(new CommDevice(foundDevices[foundDevices.Count - 1]));
                _threadOnFoundDevice = false;
            }
            if (_threadOnChangedDevice)
            {
                OnChangedDevice.Invoke(new CommDevice(device));
                _threadOnChangedDevice = false;
            }
            if (_threadOnWriteCompleted)
            {
                OnWriteCompleted.Invoke();
                _threadOnWriteCompleted = false;
            }

            if (_searchTimeout > 0f)
            {
                _searchTimeout -= Time.deltaTime;
                if (_searchTimeout <= 0f)
                {
                    StopSearch();
                }
            }
        }
Ejemplo n.º 2
0
        void Update()
        {
            if (_threadOnOpen)
            {
                OnOpen.Invoke();
                _threadOnOpen = false;
            }

            if (_threadOnOpenFailed)
            {
                OnOpenFailed.Invoke();
                _threadOnOpenFailed = false;
            }
        }
Ejemplo n.º 3
0
        public override void Open()
        {
            server = toggle.isOn;
            if (server)
            {
                if (_server != null)
                {
                    return;
                }

                try
                {
                    _server = new TcpListener(IPAddress.Any, port);
                    _server.Start();
                    _server.BeginAcceptTcpClient(new AsyncCallback(AcceptTcpClientCallback), _server);
                    //       Debug.LogError("Server Open");
                    OnOpen.Invoke();
                }
                catch (Exception e)
                {
                    //       Debug.LogError("Server Open Failed");
                    //       Debug.LogError(e);
                    _server.Stop();
                    _server = null;
                    OnOpenFailed.Invoke();
                }
            }
            else
            {
                if (_client != null)
                {
                    return;
                }

                try
                {
                    _client = new TcpClient();
                    //      Debug.LogError("Client Begin Connect");
                    _client.BeginConnect(IPAddress.Parse(ipAddress), port, new AsyncCallback(ConnectCallback), _client);
                }
                catch (Exception e)
                {
                    //       Debug.LogError("Client Begin Connect Failed");
                    //       Debug.LogError(e);
                    _client.Close();
                    _client = null;
                    OnOpenFailed.Invoke();
                }
            }
        }
Ejemplo n.º 4
0
 private void ConnectCallback(IAsyncResult result)
 {
     try
     {
         _client.EndConnect(result);
         _client.GetStream().BeginRead(_buffer, 0, _buffer.Length, new AsyncCallback(ReadCallback), _buffer);
         //     Debug.LogError("Client Open");
         OnOpen.Invoke();
     }
     catch (Exception e)
     {
         //     Debug.LogError("ConnectCallback Error");
         //     Debug.LogError(e);
         _client.Close();
         _client = null;
         OnOpenFailed.Invoke();
     }
 }
Ejemplo n.º 5
0
        void Update()
        {
            if (_threadOnOpenFailed)
            {
                OnOpenFailed.Invoke();
                _threadOnOpenFailed = false;
            }

            if (_searchTimeout > 0f)
            {
                _searchTimeout -= Time.deltaTime;
                if (_searchTimeout <= 0f)
                {
#if UNITY_ANDROID
                    if (_android != null)
                    {
                        _android.Call("StopSearch");
                    }
#endif
                    OnStopSearch.Invoke();
                }
            }
        }
Ejemplo n.º 6
0
 private void AndroidMessageOpenFailed(string message)
 {
     Debug.Log(message);
     OnOpenFailed.Invoke();
 }