private void ParseData(UDPConnector udpSource)
        {
            OIMSG msg = udpSource.GetNewData();

            while (msg != null && msg.data != null && msg.data.Length > 0)
            {
                int packetID = -1;
                using (MemoryStream str = new MemoryStream(msg.data)) {
                    using (BinaryReader reader = new BinaryReader(str)) {
                        packetID = reader.ReadInt32();
                    }
                }

                if (packetID == 2)   // transform packet
                {
                    Vector3    pos;
                    Quaternion rot;
                    int        transformID;
                    TransformSerializer.Deserialize(msg.data, out transformID, out pos, out rot);

                    if (transformCopies.ContainsKey(transformID))
                    {
                        transformCopies[transformID].NewTransform(pos, rot);
                    }
                }
                msg = udpSource.GetNewData();
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Add a new connector to this client.
        /// </summary>
        /// <param name="name">The name of the connector.</param>
        /// <param name="readBufferSize">The Maximum number of bytes the connector can read at a time.</param>
        /// <param name="readTimeOut">The maximum time in milliseconds the connector can use to read incoming data.</param>
        /// <param name="serverIP">The server's ip address the connector will use to send data.</param>
        /// <param name="serverPort">The server's udp port.</param>
        /// <returns>The connector.</returns>
        public UDPConnector AddConnector(string name, int readBufferSize, int readTimeOut, IPAddress serverIP, int serverPort)
        {
            UDPConnector connector = new UDPConnector(this, name, readBufferSize, readTimeOut, serverIP, serverPort);

            fConnectors.Add(connector);
            return(connector);
        }
Exemplo n.º 3
0
 public WebcamParser(UDPConnector _udpClient, WebcamFrameSource fs)
 {
     _listenThread = new Thread(new ThreadStart(Listen));
     _frameSource  = fs;
     udpClient     = _udpClient;
     _listenThread.Start();
 }
 public IncomingUDPClientPacket(UDPConnector connector, DatagramPacket data, IncomingUDPClientPacket previousPacket)
 {
     fConnector          = connector;
     fData               = data;
     fPreviousPacket     = previousPacket;
     connector.fBytesIn += data.Length;
     ThreadPool.QueueUserWorkItem(new WaitCallback(ReadData));
 }
Exemplo n.º 5
0
        public OutgoingUDPClientPacket(UDPConnector connector, DatagramPacket data, OutgoingUDPClientPacket previousPacket)
        {
            fConnector      = connector;
            fData           = data;
            fPreviousPacket = previousPacket;

            ThreadPool.QueueUserWorkItem(new WaitCallback(SendData));
        }
Exemplo n.º 6
0
        public OutgoingUDPClientPacket(UDPConnector connector, DatagramPacket data, OutgoingUDPClientPacket previousPacket)
        {
            fConnector = connector;
            fData = data;
            fPreviousPacket = previousPacket;

            ThreadPool.QueueUserWorkItem(new WaitCallback(SendData));
        }
Exemplo n.º 7
0
 public IncomingUDPClientPacket(UDPConnector connector, DatagramPacket data, IncomingUDPClientPacket previousPacket)
 {
     fConnector = connector;
     fData = data;
     fPreviousPacket = previousPacket;
     connector.fBytesIn += data.Length;
     ThreadPool.QueueUserWorkItem(new WaitCallback(ReadData));
 }
Exemplo n.º 8
0
 public StreamParser(UDPConnector _udpClient, RGBDAudio audio, RGBDControl control, StreamFrameSource fs)
 {
     _listenThread = new Thread(new ThreadStart(Listen));
     _frameSource  = fs;
     udpClient     = _udpClient;
     _listenThread.Start();
     _audio   = audio;
     _control = control;
 }
Exemplo n.º 9
0
        public override void OnInspectorGUI()
        {
            udpc = (UDPConnector)target;
            if (udpc == null)
            {
                return;
            }
            serializedObject.Update();


            if (Application.isPlaying)
            {
                EditorGUILayout.Toggle("Connected? ", udpc.connected);
            }

            debugLevelSP.intValue = EditorGUILayout.IntField("Debug Level: ", udpc.debugLevel);

            EditorGUI.BeginDisabledGroup(Application.isPlaying);
            if (udpc.debugLevel > 0)
            {
                guidSuffixSP.stringValue = EditorGUILayout.TextField("GUID Suffix:", udpc.guidSuffix);
            }

            UseMatchmakingServerSP.boolValue = EditorGUILayout.Toggle("Use Matchmaking: ", udpc.UseMatchmakingServer);
            if (!udpc.UseMatchmakingServer || Application.isPlaying)
            {
                ManualHostNameSP.stringValue = EditorGUILayout.TextField("Send Host:",
                                                                         Application.isPlaying ? udpc._remoteAddress : udpc.ManualHostName);
                ManualPortSP.intValue = EditorGUILayout.IntField("Send Port:",
                                                                 Application.isPlaying ? udpc._remotePort : udpc.ManualPort);
                ManualListenPortSP.intValue = EditorGUILayout.IntField("Listen Port:",
                                                                       Application.isPlaying ? udpc._listenPort : udpc.ManualListenPort);
            }

            SocketIDSP.stringValue = EditorGUILayout.TextField("Socket ID:", udpc.SocketID);
            IsSenderSP.boolValue   = EditorGUILayout.Toggle("Is Sender:", udpc.IsSender);
            EditorGUI.EndDisabledGroup();

            if (!Application.isPlaying)
            {
                serializedObject.ApplyModifiedProperties();
            }
        }
Exemplo n.º 10
0
        void Start()
        {
            bookmarks      = new ulong[n_bookmarks];
            _bodyFrames    = new Queue <RGBDBodyFrame>();
            _trackedBodies = new Dictionary <uint, RGBDBody>();
            _eventQueue    = new Queue <RGBDStreamEventArgs>();

            _state                    = RGBD_STATE.IDLE;
            oiudp                     = GetComponent <UDPConnector>();
            sfs                       = GetComponent <StreamFrameSource>();
            _audio                    = GetComponent <RGBDAudio>();
            _defaultTransform         = sfs.cameraTransform;
            _recordedTransform        = (new GameObject("_kinect_recorded")).transform;
            _recordedTransform.parent = transform;
            //cameraKinectView.transform.parent = _recordedTransform;
            //cameraKinectView.transform.localPosition = Vector3.zero;
            //cameraKinectView.transform.localRotation = Quaternion.identity;
            last_idle = Time.time + 1.0f;
        }
Exemplo n.º 11
0
        public bool startService()
        {
            if (this.StartedService)
            {
                return(false);
            }

            mConn  = new UDPConnector();
            mCodec = new KLVCodec();
            mConn.Configure(mSendPort, mSendIP, mReceivePort, mReceiveIP);
            mDetectorService = new DetectorService(mConn, mCodec);

            mDetectorService.passingMessageEvent += new PassingMessageHandler(handleResponseMessage);
            if (!mDetectorService.startService())
            {
                this.StartedService = false;
                return(false);
            }

            this.StartedService = true;
            return(true);
        }
        public void Init(string path, UDPConnector client, bool dataIn)
        {
            folderPath = path;
            socketID   = client.SocketID;

            if (dataIn)
            {
                client.OnDataIn += NewData;
                type             = "IN";
            }
            else
            {
                client.OnDataOut += NewData;
                type              = "OUT";
            }

#if !UNITY_EDITOR && UNITY_METRO
            _writeTask = Task.Run(() => DataWriter());
#else
            _writeThread = new Thread(DataWriter);
            _writeThread.Start();
#endif
        }
Exemplo n.º 13
0
 void Start()
 {
     oiudp = GetComponent <UDPConnector>();
 }
Exemplo n.º 14
0
 public virtual void OnDataReceive(UDPConnector connector, DatagramPacket packet)
 {
     //Console.WriteLine("Data received: " + Encoding.Default.GetString(packet.Bytes));
 }
Exemplo n.º 15
0
 private new void Start()
 {
     base.Start();
     udpClient = GetComponent <UDPConnector>();
     listener  = new StreamParser(udpClient, GetComponent <RGBDAudio>(), GetComponent <RGBDControl>(), this);
 }
Exemplo n.º 16
0
 private void Start()
 {
     udpClient = GetComponent <UDPConnector>();
     listener  = new WebcamParser(udpClient, this);
 }