User manual

94 Data Files
© 2005-2008 SR Research Ltd.
EyeLink tracker, which timestamps the data and writes it to the EDF file. The
application does not need precise time keeping, since link delays are usually
very low (on the order of 1 or 2 milliseconds).
Message events are used for two main purposes. They serve to precisely record
the time of important events, such as display changes, subject responses, etc.
They also record experiment-specific data, such as trial conditions.
Message events consist of a millisecond timestamp, and the message data. A
message is most often text, but can contain any type of binary data as well. For
text data, a zero byte at the end of the text is recommended for compatibility
with applications written in C. A message data length field provides Pascal
string compatibility, and allows binary data to be recorded in the message.
Current EyeLink applications only support text messages with zero-terminated
strings. It is also recommended that messages be shorter than 120 characters.
4.5.2 Buttons
Each button event records a change in state (pressed or released, 1 or 0) of up
to 8 buttons or input port bits, monitored by the EyeLink 1000 tracker. Button
ports, bits, and polarity may be set in the EyeLink 1000 tracker configuration
file BUTTONS.INI.
Each button event contains a timestamp (in milliseconds) of the time the button
was pressed, and a word of button data. This consists of two 8-bit fields,
recorded as a 16-bit number. The lower 8 bits contain the current status of the
8 buttons (bit = 0 if off, 1 if pressed). Each of the upper 8 bits will be set to 1 if
its button has changed since the last sample. The least-significant bit in each
byte corresponds to button 1, and the most-significant is button 8.
Button events are usually recorded at the start of each recording block, with all
upper 8 bits (change flags) set to 0. This allows applications to track the current
button state at all times.
4.5.3 Eye Movement Events
Events are generated by the EyeLink 1000 tracker in real-time from the eye-
movement data stream. These provide an efficient record of the data in a form
ready to use for most types of eye-movement research. The use of events
simplifies the analysis of sample data as well. For example, analysis of pursuit
gain requires rejection of saccades, which are clearly marked in the events. Eye-
movement events are generated in pairs: one event at the start of an eye-
movement condition, and another at the end of the condition. When used in
real-time processing with data set via the link, the event pairs allow an
application to monitor eye movement state in real time. These pairs accurately
label the samples in a file between the events, as the file is read from beginning
to end.