#[repr(C)]pub struct FSAMPLE {Show 17 fields
pub time: UINT32,
pub type_: INT16,
pub flags: UINT16,
pub px: [f32; 2],
pub py: [f32; 2],
pub hx: [f32; 2],
pub hy: [f32; 2],
pub pa: [f32; 2],
pub gx: [f32; 2],
pub gy: [f32; 2],
pub rx: f32,
pub ry: f32,
pub status: UINT16,
pub input: UINT16,
pub buttons: UINT16,
pub htype: INT16,
pub hdata: [INT16; 8],
}Expand description
@ingroup messaging \brief Floating-point sample
The EyeLink tracker measures eye position 250, 500, 1000 or 2000 times per second depending on the tracking mode you are working with, and computes true gaze position on the display using the head camera data. This data is stored in the EDF file, and made available through the link in as little as 3 milliseconds after a physical eye movement. Samples can be read from the link by eyelink_get_float_data() or eyelink_newest_float_sample().
If sample rate is 2000hz, two samples with same time stamp possible. If SAMPLE_ADD_OFFSET is set on the flags, add .5 ms to get the real time. Convenient FLOAT_TIME can also be used.
Fields§
§time: UINT32< time of sample
type_: INT16< always SAMPLE_TYPE
flags: UINT16< flags to indicate contents
px: [f32; 2]< pupil x
py: [f32; 2]< pupil y
hx: [f32; 2]< headref x
hy: [f32; 2]< headref y
pa: [f32; 2]< pupil size or area
gx: [f32; 2]< screen gaze x
gy: [f32; 2]< screen gaze y
rx: f32< screen pixels per degree
ry: f32< screen pixels per degree
status: UINT16< tracker status flags
input: UINT16< extra (input word)
< button state & changes
htype: INT16< head-tracker data type (0=none)
hdata: [INT16; 8]< head-tracker data (not prescaled)