Exemple #1
0
 private void listen()
 {
     while (connected)
     {
         try {
             OSCPacket packet = receiver.Receive();
             if (packet != null)
             {
                 if (packet.IsBundle())
                 {
                     ArrayList messages = packet.Values;
                     for (int i = 0; i < messages.Count; i++)
                     {
                         processMessage((OSCMessage)messages[i]);
                     }
                 }
                 else
                 {
                     processMessage((OSCMessage)packet);
                 }
             }
             else
             {
                 Console.WriteLine("null packet");
             }
         } catch (Exception e) { Console.WriteLine(e.Message); }
     }
 }
Exemple #2
0
 private void ListenToOSC()
 {
     while (FListening)
     {
         try
         {
             OSCPacket packet = FOSCReceiver.Receive();
             if (packet != null)
             {
                 lock (FMessageQueue)
                     if (packet.IsBundle())
                     {
                         ArrayList messages = packet.Values;
                         for (int i = 0; i < messages.Count; i++)
                         {
                             FMessageQueue.Add((OSCMessage)messages[i]);
                         }
                     }
                     else
                     {
                         FMessageQueue.Add((OSCMessage)packet);
                     }
             }
         }
         catch (Exception e)
         {
             FLogger.Log(LogType.Debug, "UDP: " + e.Message);
         }
     }
 }
Exemple #3
0
 private void listen()
 {
     while (connected)
     {
         try {
             OSCPacket packet = receiver.Receive();
             if (packet != null)
             {
                 lock (processQueue){
                     //Debug.Log( "adding  packets " + processQueue.Count );
                     if (packet.IsBundle())
                     {
                         ArrayList messages = packet.Values;
                         for (int i = 0; i < messages.Count; i++)
                         {
                             processQueue.Add((OSCMessage)messages[i]);
                         }
                     }
                     else
                     {
                         processQueue.Add((OSCMessage)packet);
                     }
                 }
             }
             else
             {
                 Console.WriteLine("null packet");
             }
         } catch (Exception e) {
             Debug.Log(e.Message);
             Console.WriteLine(e.Message);
         }
     }
 }
Exemple #4
0
    void UpdateOSC()
    {
        while (true)
        {
            OSCPacket msg = oscin.Receive();
            if (msg != null)
            {
                OSCBundle b = (OSCBundle)msg;
                foreach (OSCPacket subm in b.Values)
                {
                    parseMessage(subm, true);
                }
                //Debug.Log("message");
                recognizor.received = true;
                //gotAMessage = false;
            }
            #region receive

            /*if (msg.IsBundle())
             * {
             *  OSCBundle b = (OSCBundle)msg;
             *  foreach (OSCPacket subm in b.Values)
             *  {
             *      parseMessage(subm, flag_rec);
             *      //Debug.Log("here");
             *  }
             * }
             * else
             * {
             *  parseMessage(msg, flag_rec);
             * }
             * //            }*/
            #endregion
        }
    }
Exemple #5
0
        void ThreadedFunction()
        {
            OSCPacket p;

            while (FRunning)
            {
                p = FServer.Receive();

                if (p.IsBundle())
                {
                    lock (FLockList)
                    {
                        foreach (var packet in p.Values)
                        {
                            var packet2 = packet as OSCPacket;
                            if (packet2 != null)
                            {
                                FPacketList.Add(packet2);
                            }
                        }
                    }
                }
                else
                {
                    lock (FLockList)
                        FPacketList.Add(p);
                }
            }
        }
Exemple #6
0
 private void ListenToOSC()
 {
     while (FListening)
     {
         try
         {
             OSCPacket packet = FOSCReceiver.Receive();
             if (packet != null)
             {
                 if (packet.IsBundle())
                 {
                     ArrayList messages = packet.Values;
                     for (int i = 0; i < messages.Count; i++)
                     {
                         ProcessOSCMessage((OSCMessage)messages[i]);
                     }
                 }
                 else
                 {
                     ProcessOSCMessage((OSCMessage)packet);
                 }
             }
             else
             {
                 DebugLog.Items.Add("UDP: null packet received!");
             }
         }
         catch (Exception e)
         {
             DebugLog.Items.Add("UDP: " + e.Message);
         }
     }
 }
Exemple #7
0
 private void listen()
 {
     while (connected)
     {
         try
         {
             OSCPacket packet = receiver.Receive();
             if (packet != null)
             {
                 if (packet.IsBundle())
                 {
                     List <object> messages = packet.Values;
                     for (int i = 0, ic = messages.Count; i < ic; i++)
                     {
                         processMessage((OSCMessage)messages[i]);
                     }
                 }
                 else
                 {
                     processMessage((OSCMessage)packet);
                 }
             }
         }
         catch (Exception e)
         {
             // HACK : Exception notification changed to debug output by frog (@rktut)
             System.Diagnostics.Debug.WriteLine(e.ToString());
         }
     }
 }
Exemple #8
0
 void ListenToOSC()
 {
     while (FListening)
     {
         try
         {
             var packet = FOSCReceiver.Receive();
             if (packet != null)
             {
                 if (packet.IsBundle())
                 {
                     var messages = packet.Values;
                     for (int i = 0; i < messages.Count; i++)
                     {
                         ProcessOSCMessage((OSCMessage)messages[i]);
                     }
                 }
                 else
                 {
                     ProcessOSCMessage((OSCMessage)packet);
                 }
             }
         }
         catch (Exception e)
         {
         }
     }
 }
    void UpdateOSC()
    {
        while (true)
        {
            OSCPacket msg = oscin.Receive();
            if (msg != null)
            {
                if (msg.IsBundle())
                {
                    //Debug.Log ("msg is bundle");
                    OSCBundle b = (OSCBundle)msg;
                    foreach (OSCPacket subm in b.Values)
                    {
                        parseMessage(subm);
                    }
                }
                else
                {
//					Debug.Log ("msg is singular");
                    parseMessage(msg);
                }
            }
            //Debug.Log("while loop works");
            // Thread.Sleep( 5 );
        }
    }
Exemple #10
0
        void ThreadedFunction()
        {
            OSCPacket p;

            while (FRunning)
            {
                p = FServer.Receive();

                lock (FLockList)
                    FPacketList.Add(p);
            }
        }
        /// <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();
            });
        }
Exemple #12
0
 void UpdateOSC()
 {
     while (true)
     {
         OSCPacket msg = oscin.Receive();
         if (msg != null)
         {
             if (msg.IsBundle())
             {
                 OSCBundle b = (OSCBundle)msg;
                 foreach (OSCPacket subm in b.Values)
                 {
                     parseMessage(subm);
                 }
             }
             else
             {
                 parseMessage(msg);
             }
         }
         Thread.Sleep(5);
     }
 }
    private void listen()
    {
        while (connected)
        {
            try
            {
                OSCPacket packet = receiver.Receive();

                if (packet != null)
                {
                    Debug.Log(packet.Address + ": " + packet.Values[0]);
                }
                else
                {
                    Console.WriteLine("null packet");
                }
            } catch (Exception e)
            {
                Debug.Log(e.Message);
                Console.WriteLine(e.Message);
            }
        }
    }
Exemple #14
0
 private void listen()
 {
     statusString = "Listening:" + connected;
     while (connected)
     {
         try {
             OSCPacket packet = receiver.Receive();
             packetCount++;
             if (packet != null)
             {
                 if (packet.IsBundle())
                 {
                     bundleCount++;
                     ArrayList messages = packet.Values;
                     for (int i = 0; i < messages.Count; i++)
                     {
                         messageCount++;
                         processMessage((OSCMessage)messages[i]);
                     }
                 }
                 else
                 {
                     processMessage((OSCMessage)packet);
                 }
             }
             else
             {
                 packetErrorCount++;
                 Console.WriteLine("null packet");
             }
         } catch (Exception e) {
             Console.WriteLine(e.Message);
             statusString = " " + e.Message;
         }
     }
 }
        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");
            }
        }