Kinect.VisualGestureManager.Update C# (CSharp) Method

Update() public method

public Update ( ) : void
return void
        void Update()
        {
            if (isVisualGestureInitialized)
            {
                KinectManager kinectManager = KinectManager.Instance;
                if (kinectManager && kinectManager.IsInitialized())
                {
                    primaryUserID = kinectManager.GetUserIdByIndex(playerIndex);
                }

                // update visual gesture tracking
                if (UpdateVisualGestures(primaryUserID))
                {
                    // process the gestures
                    foreach (string gestureName in gestureNames)
                    {
                        if (gestureData.ContainsKey(gestureName))
                        {
                            VisualGestureData data = gestureData[gestureName];

                            if (data.isComplete && !data.isResetting && data.confidence >= minConfidence)
                            {
                                Debug.Log(gestureName + " detected.");
                                int userIndex = kinectManager ? kinectManager.GetUserIndexById(data.userId) : 0;

                                foreach (VisualGestureListenerInterface listener in visualGestureListeners)
                                {
                                    if (listener.GestureCompleted(data.userId, userIndex, data.gestureName, data.confidence))
                                    {
                                        data.isResetting = true;
                                        gestureData[gestureName] = data;
                                    }
                                }
                            }
                            else if (data.progress >= 0.1f)
                            {
                                int userIndex = kinectManager ? kinectManager.GetUserIndexById(data.userId) : 0;

                                foreach (VisualGestureListenerInterface listener in visualGestureListeners)
                                {
                                    listener.GestureInProgress(data.userId, userIndex, data.gestureName, data.progress);
                                }
                            }
                        }
                    }
                }
            }
        }