getTuioObjects() public method

public getTuioObjects ( ) : List
return List
Ejemplo n.º 1
0
        public async Task <TuioState> Listen()
        {
            do
            {
                var res = await _listener.ReceiveAsync();

                if (res.Buffer == null || res.Buffer.Length == 0)
                {
                    continue;
                }

                var packet = OSCPacket.Unpack(res.Buffer);
                if (packet != null)
                {
                    if (packet.IsBundle())
                    {
                        packet.Values.ForEach(x => _tuioClient.ProcessMessage((OSCMessage)x));
                    }
                    else
                    {
                        _tuioClient.ProcessMessage((OSCMessage)packet);
                    }
                    var tuioObjs = _tuioClient.getTuioObjects();

                    return(new TuioState {
                        Objects = tuioObjs
                                  .Distinct(new CompareTuioObject())
                                  .Where(x => x.TuioState != TuioContainer.TUIO_REMOVED)
                                  .ToDictionary(x => x.SymbolID, x => x)
                    });
                }
            } while (true);
        }