Exemple #1
0
        protected void InGameControls()
        {
            GUI.color = _receiver.IsStarted ? Color.green : Color.red;
            if (GUILayout.Button(_receiver.IsStarted ? "Connected" : "Disconnected"))
            {
                if (_receiver.IsStarted)
                {
                    _receiver.Close();
                }
                else
                {
                    _receiver.Connect();
                }
            }

            GUI.color   = Color.yellow;
            GUI.enabled = _receiver.IsStarted;
            if (GUILayout.Button("Reconnect"))
            {
                if (_receiver.IsStarted)
                {
                    _receiver.Close();
                }

                _receiver.Connect();
            }

            GUI.enabled = true;
        }
Exemple #2
0
 private void OnDisable()
 {
     httpServer?.Stop();
     receiver?.Close();
     zeroconfService?.Dispose();
     oscService?.Dispose();
 }
Exemple #3
0
 void OnApplicationQuit()
 {
     oscin.Close();
     thread.Interrupt();
     if (!thread.Join(2000))
     {
         thread.Abort();
     }
 }
Exemple #4
0
 public void disconnect()
 {
     if (receiver != null)
     {
         receiver.Close();
     }
     receiver  = null;
     connected = false;
 }
Exemple #5
0
 private void stopListening()
 {
     if (receiver != null)
     {
         receiver.Close();
     }
     thread.Abort();
     listening = false;
     receiver  = null;
 }
Exemple #6
0
        private void StopListeningOSC()
        {
            FListening = false;
            if (FOSCReceiver != null)
            {
                FOSCReceiver.Close();
            }

            FOSCReceiver = null;
        }
        private void stopListening()
        {
            listening = false;

            if (receiver != null)
            {
                receiver.Close();
            }

            receiver = null;
        }
Exemple #8
0
    public void disconnect()
    {
        if (receiver != null)
        {
//		print("disconnecting.");
            receiver.Close();
        }

        receiver  = null;
        connected = false;
    }
Exemple #9
0
        protected void OnDisable()
        {
            _receiver = target as OSCReceiver;

            EditorApplication.update -= ReceiverEditorUpdate;

            if (!Application.isPlaying && _receiver.IsStarted)
            {
                _receiver.Close();
            }
        }
Exemple #10
0
        void Close()
        {
            if (FRunning)
            {
                FRunning = false;
                FThread.Abort();

                FServer.Close();
                FServer = null;
            }
        }
Exemple #11
0
        void StopOSCReceiver()
        {
            FListening = false;

            //should join here but oscreiver blocks
            //todo: add receivetimeout to oscreceiver
//            FOSCListener.Join();
            if (FOSCReceiver != null)
            {
                FOSCReceiver.Close();
            }

            FOSCReceiver = null;
        }
Exemple #12
0
        void Close()
        {
            if (FRunning)
            {
                FRunning = false;
                if (!FThread.Join(1000))
                {
                    FThread.Abort();
                }

                FServer.Close();
                FServer = null;
            }
        }
Exemple #13
0
 void OnDestroy()
 {
     if (oscin != null)
     {
         oscin.Close();
     }
     if (thread != null)
     {
         thread.Interrupt();
         if (!thread.Join(2000))
         {
             thread.Abort();
         }
     }
 }
Exemple #14
0
        private void StopListeningOSC()
        {
            if (FThread != null && FThread.IsAlive)
            {
                FListening = false;
                //FOSCReceiver is blocking the thread
                //so waiting would freeze
                //shouldn't be necessary here anyway...
                //FThread.Join();
            }

            if (FOSCReceiver != null)
            {
                FOSCReceiver.Close();
            }
            FOSCReceiver = null;
        }
Exemple #15
0
        /**
         * The TuioClient stops listening to TUIO messages on the configured UDP port
         */
        public void disconnect()
        {
            if (receiver != null)
            {
                receiver.Close();
            }
            receiver = null;

            aliveObjectList.Clear();
            aliveCursorList.Clear();
            objectList.Clear();
            cursorList.Clear();
            freeCursorList.Clear();
            frameObjects.Clear();
            frameCursors.Clear();

            connected = false;
        }
Exemple #16
0
    public void disconnect()
    {
        lock (this){
            connected = false;

            if (receiver != null)
            {
                receiver.Close();
            }
            receiver = null;

            if (thread != null)
            {
                thread.Abort();
            }
            thread = null;
        }
    }
        protected void OnDisable()
        {
            if (_receiver == null)
            {
                _receiver = target as OSCReceiver;
            }

            EditorApplication.update -= ReceiverEditorUpdate;

            if (!Application.isPlaying && _receiver.IsAvaible)
            {
                _receiver.Close();
            }
        }
        /// <summary>
        /// Connect the client and server.
        /// </summary>
        /// <param name="portNumber">Port number to listen on.</param>
        public void Connect(int portNumber)
        {
            connected = true;
            client.Connect();

            server = new OSCReceiver(portNumber);
            server.Connect();

            //server loop
            Task.Run(() => {
                while (connected)
                {
                    var packet = server.Receive();

                    if (PacketReceived != null)
                    {
                        PacketReceived(this, packet);
                    }
                }
                server.Close();
            });
        }
 /// <summary>
 /// Closes the connection.
 /// </summary>
 public void Close()
 {
     connected = false;
     client.Close();
     server.Close();
 }
        private void oscListenerLoop()
        {
            OSCReceiver oscReceiver    = null;
            OSCMessage  oscWiimoteData = null;

            oscStopNow = false;

            double[] beams = new double[200];

            beams[0] = 0.0d;
            beams[1] = 0.0d;
            beams[2] = 0.0d;

            double accel     = 0.0d;
            double accelBase = 0.0d;
            double speed     = 0.0d;
            double dist      = 0.0d;
            double dT        = 0.0d;
            double par4      = 0.0d;

            long currTick;
            long prevTick;

            currTick = prevTick = DateTime.Now.Ticks;

            try
            {
                int oscPort = Convert.ToInt32(oscPortTextBox.Text);

                oscReceiver = new OSCReceiver(oscPort);

                oscReceiver.Connect();

                Tracer.Trace("OSC connected and listening on port " + oscPort);

                while (!oscStopNow && (oscWiimoteData = (OSCMessage)oscReceiver.Receive()) != null)
                {
                    string addr = oscWiimoteData.Address;

                    if (wiiValuesControls.ContainsKey(addr))
                    {
                        wiimoteValuesUserControl = (WiimoteValuesUserControl)wiiValuesControls[addr];
                    }
                    else
                    {
                        this.Invoke(new MethodInvoker(createWiimoteValuesUserControl));
                        wiiValuesControls.Add(addr, wiimoteValuesUserControl);
                    }

                    wiimoteValuesUserControl.values = oscWiimoteData;


                    switch (addr)
                    {
                    case "/wiimote-g":

                        currTick = DateTime.Now.Ticks;

                        dT = (double)(currTick - prevTick) / 10000000.0d;                                       // sec

                        //   string str = DateTime.Now.ToLongTimeString() + "  OSC packet: " + oscWiimoteData.Address + "   ";

                        int i = 0;

                        foreach (object obj in oscWiimoteData.Values)
                        {
                            //                        str += obj.ToString() + "   ";
                            if (i == 0)
                            {
                                try
                                {
                                    beams[i] = Convert.ToDouble((float)obj);
                                }
                                catch
                                {
                                    beams[i] = 0.0d;
                                }
                                accel = beams[i];                                          //  m/c2
                            }
                            if (i == 4)
                            {
                                try
                                {
                                    beams[i] = Convert.ToDouble((float)obj);
                                }
                                catch
                                {
                                    beams[i] = 0.0d;
                                }
                                par4 = beams[i];
                            }
                            i++;
                        }


                        if (par4 > 0.0d)
                        {
                            accelBase = accel;
                            speed     = 0.0d;
                            dist      = 0.0d;
                        }
                        else
                        {
                            accel -= accelBase;
                            speed += accel * dT;
                            dist  += speed * dT;
                        }

                        // oscilloscope.AddData(beams[0], beams[1], beams[2]);

                        oscilloscope.AddData(accel, speed * 100.0d, dist * 100.0d);


                        //                    Tracer.Trace(str.Trim());

                        prevTick = currTick;
                        break;
                    }
                }
            }
            catch (Exception exc)
            {
                Tracer.Error(exc.ToString());
            }
            finally
            {
                if (oscReceiver != null)
                {
                    oscReceiver.Close();
                }
                Tracer.Trace("OSC finished and closed");
            }
        }
Exemple #21
0
 private void stopListening()
 {
     receiver.Close();
     listening = false;
     receiver  = null;
 }