/// <summary>
        /// 
        /// </summary>
        /// <param name="Sensor">The Kinect Sensor to use</param>
        /// <param name="WaitingTime">Reppresent the time, in milliseconnds, to wait before taking another screenshot</param>
        /// <param name="Checker"></param>
        public KinectInterrogator(KinectSensor Sensor, int WaitingTime)
        {
            attBodyCount = 0;
            attEnableTakingScreenshot = false;
            attBarcodeChecker = new BarCodeRecognized();
            attPlayerChecker = new PlayerChecker();
            attWaitingTime = WaitingTime;
            this.attKinectSensor = Sensor;

            attBodyFrameReader = attKinectSensor.BodyFrameSource.OpenReader();
            attBodyFrameReader.FrameArrived += this.Reader_BodyFrameArrived;

            attColorFrameReader = Sensor.ColorFrameSource.OpenReader();
            attColorFrameReader.FrameArrived += this.Reader_ColorFrameArrived;

            attKinectSensor.Open();
            attLastcheck = DateTime.Now;

            SetBackgroundWorker();
        }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void HandlePlayerLeaveKinectSensor(object Sender, PlayerChecker.PlayerLeaveKinectSensor.Arguments Parameters)
        {
            //throw new NotImplementedException("Implementare la logica che gestisce il momento in cui il giocatore lascia la postazione");

            SaveGame();
            attUnloadGame.RaiseEvent();
        }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="Sender"></param>
 /// <param name="Parameters"></param>
 private void HandlePlayerEnterKinectSensor(object Sender, PlayerChecker.PlayerEnterKinectSensor.Arguments Parameters)
 {
     LoadGame(Parameters.ID);
     if (attGame.IsFinished)
         return;
     attResumeGame.RaiseEvent();
 }