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; } }); }
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); }); }
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); } }); }
// 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); } } }