/// <summary>
        /// Action to start test analyzing CoP and CoM position and posture.
        /// </summary>
        override protected void StartTest()
        {
            // Be sure to only stores the current series of the test.
            LogJoints3D.Clear();
            LogTestLines.Clear();
            LogTestLines.Add("#Start test");

            if (_app.SaveJoints)
            {
                LogJoints2D.Clear();
            }

            if (_app.EnableWBB)
            {
                LogTestLines.Add("CoP:0:" + CalculatedCoPX.ToString("N5") + ":" + CalculatedCoPY.ToString("N5"));
            }

            TotalErrors = 0;
            LeftFoot    = LeftHand = RightFoot = RightHand = "";

            LogJoints3D.Add("#Start Joints3D Test");
            _kinectBV.Delay     = _app.DelayTime * 30;
            _kinectBV.IsTesting = true;
            FinishedTest        = false;
        }
        override protected void infoUpdateTimer_Elapsed(object sender, ElapsedEventArgs e)
        {
            // Start timer of recording double stance joint positions for reference.
            if (_startPoseCalibration && _kinectBV.Delay < 0)
            {
                // PoseCalibrationCounter in mmsec - it is updated within kinect body view, frame received event.

                int CalibrationElapsedSeconds = (DateTime.Now - StartCalibrationTime).Seconds;
                if (CalibrationElapsedSeconds >= _app.CalibrationTime)
                {
                    PoseCalibrationDone     = true;
                    _startPoseCalibration   = false;
                    _kinectBV.IsCalibrating = false;
                    StatusText = "Finished timer for recording stance pose";
                }
                else
                {
                    StatusText = "Start timer for recording stance pose " + CalibrationElapsedSeconds;
                }
            }

            // Executing test?
            if (_kinectBV.IsTesting && _kinectBV.Delay < 0)
            {
                int seconds = (DateTime.Now - StartTestTime).Seconds;
                this.TestTime = "Test time in seconds: " + seconds.ToString("F0");

                // Finished?
                if (seconds >= _app.TestTime)
                {
                    _kinectBV.IsTesting = false;
                    _kinectBV.TestStopWatch.Stop();
                    FinishedTest = true;
                    StatusText   = "Test finished with " + TotalErrors + " errors.";
                    LogTestLines.Add("Finished:" + TotalErrors);
                }
            }

            // Work with WBB?
            if (_app.EnableWBB)
            {
                UpdateStatusWii(e);
            }
        }