private void ReceiveAllSensorInfo(MessageReader reader)
        {
            foreach (NuiSensor sensor in _sensors.Values)
            {
                sensor.ChangeStatus(SensorState.UNKNOWN);
                if (OnSensorDisconnected != null)
                {
                    OnSensorDisconnected.Invoke(sensor);
                }
            }
            _sensors.Clear();

            int sensorCount = reader.ReadInt();

            for (int i = 0; i < sensorCount; i++)
            {
                NuiSensor sensor = MakeSensor(reader);

                sensor.ChangeStatus(SensorState.OPENED);

                if (OnSensorConnected != null)
                {
                    OnSensorConnected.Invoke(sensor);
                }

                _sensors.Add(sensor.Id, sensor);
            }
        }
        //NuiApplication app, int sensorId, string name, string vendor, SensorState State, ColorInfo color, DepthInfo depth, BodyInfo body
        private void ReceiveNewSensorInfo(MessageReader reader)
        {
            NuiSensor sensor = MakeSensor(reader);

            if (!_sensors.ContainsKey(sensor.Id))
            {
                sensor.ChangeStatus(SensorState.OPENED);

                if (OnSensorConnected != null)
                {
                    OnSensorConnected.Invoke(sensor);
                }

                _sensors.Add(sensor.Id, sensor);
            }
        }