示例#1
0
 private static void CreateAndVisualizeSensitiveFilteredFixationsStream()
 {
     _fixationDataStream = _host.Streams.CreateFixationDataStream();
     _fixationDataStream
     .Begin((x, y, _) =>
     {
         Console.WriteLine("\n" +
                           "Fixation started at X: {0}, Y: {1}", x, y);
         _fixationBeginTime = DateTime.Now;
     })
     .Data((x, y, _) =>
     {
         Console.WriteLine("During fixation, currently at: X: {0}, Y: {1}", x, y);
     })
     .End((x, y, _) =>
     {
         Console.WriteLine("Fixation ended at X: {0}, Y: {1}", x, y);
         if (_fixationBeginTime != default(DateTime))
         {
             Console.ForegroundColor = ConsoleColor.Cyan;
             Console.WriteLine("Fixation duration: {0}", DateTime.Now - _fixationBeginTime);
             Console.ForegroundColor = _defaultForegroundColor;
         }
     });
 }
示例#2
0
 public Gazer()
 {
     State = false;
     fixationDataStream.IsEnabled = false;
     fixationDataStream.Begin((x, y, timestamp) =>
     {
         coords = Tuple.Create(x, y);
     });
 }
        public void streamFixationData()
        {
            _mre.WaitOne();

            _fixationDataStream
            .Begin((x, y, timestamp) =>
            {
                sendGazeToLSL(fixationBeginOutlet, x, y, timestamp);
            })
            .Data((x, y, timestamp) =>
            {
                sendGazeToLSL(fixationDataOutlet, x, y, timestamp);
            })
            .End((x, y, timestamp) =>
            {
                sendGazeToLSL(fixationEndOutlet, x, y, timestamp);
            });
        }
示例#4
0
        private static void stream_on_file(StreamWriter fixation_outputFile) //, StreamWriter gaze_outputFile
        {
            // StreamWriter gaze_outputFile = new StreamWriter(Path.Combine(stream_path, gaze_path));
            // StreamWriter fixation_outputFile = new StreamWriter(Path.Combine(stream_path, fixs_path));

            /*
             *
             * _gazePointDataStream.GazePoint((x, y, ts) =>
             * {
             *  // Console.WriteLine("Timestamp: {0}\tX:{1}, Y:{2}", ts, x, y);
             *  gaze_outputFile.WriteLine("TS:{0},X:{1},Y:{2}", ts, x, y);
             *  Console.WriteLine("TS:{0},X:{1},Y:{2}", ts, x, y);
             * });
             *
             */

            _fixationDataStream
            .Begin((x, y, _) =>
            {
                // Console.WriteLine("\n" + "Fixation started at X: {0}, Y: {1}", x, y);
                fixation_outputFile.WriteLine("FS,{0},{1},-", x, y);
                // Console.WriteLine("FS,{0},{1},-", x, y);
                _fixationBeginTime = DateTime.Now;
            })
            .Data((x, y, _) =>
            {
                // Console.WriteLine("During fixation, currently at: X: {0}, Y: {1}", x, y);
                fixation_outputFile.WriteLine("DF,{0},{1},-", x, y);
                // Console.WriteLine("DF,{0},{1},-", x, y);
            })
            .End((x, y, _) =>
            {
                fixation_outputFile.WriteLine("FE,{0},{1},-", x, y);
                // Console.WriteLine("FE,{0},{1},-", x, y);
                if (_fixationBeginTime != default(DateTime))
                {
                    // Console.WriteLine("Fixation duration: {0}", DateTime.Now - _fixationBeginTime);
                    fixation_outputFile.WriteLine("TIME,-,-,{0}", DateTime.Now - _fixationBeginTime);
                    // Console.WriteLine("TIME,-,-,{0}", DateTime.Now - _fixationBeginTime);
                }
            });
        }
示例#5
0
 // KeyPress event
 private void TrialForm_KeyPress(object sender, KeyPressEventArgs e)
 {
     if (e.KeyChar == (char)Keys.Escape)
     {
         StopTrials();
     }
     else if (e.KeyChar == (char)Keys.Space && trialState == 0)
     {
         if (true) //if (gazeCentered())
         {
             //Launch trials thread
             trialsThread = new Thread(new ThreadStart(TrialsRunningThread))
             {
                 IsBackground = true
             };
             trialsThread.Start();
             //Init tobbi gaze
             fixationDataStream = MainForm.tobii4C.Streams.CreateFixationDataStream();
             fixationDataStream.Begin((x, y, timestamp) =>
             {
                 if (x != 0)
                 {
                     currentFixation           = new Fixation();
                     currentFixation.x         = x;
                     currentFixation.y         = y;
                     currentFixation.timestamp = timestamp;
                 }
             });
             fixationDataStream.End((x, y, timestamp) =>
             {
                 currentFixation.timespan = timestamp;
                 trialFixations.Add(currentFixation);
             });
         }
         else
         {
             synth.SpeakAsync(fixCenterMsg);
         }
     }
 }