SR Research Support Site
Data Structures | Macros | Typedefs | Functions | Variables
eyelink.h File Reference

Declarations and constants for basic EyeLink functions, Ethernet link, and timing. More...

Data Structures

struct  IMAGE_PALDATA
 

Macros

#define SIMLINKINCL
 
#define OK_RESULT   0
 
#define NO_REPLY   1000
 
#define LINK_TERMINATED_RESULT   -100
 
#define ABORT_RESULT   27
 
#define UNEXPECTED_EOL_RESULT   -1
 
#define SYNTAX_ERROR_RESULT   -2
 
#define BAD_VALUE_RESULT   -3
 
#define EXTRA_CHARACTERS_RESULT   -4
 
#define LINK_SEND_MAX   244 /* maximum number of characters in a command or message sent from the display to a DOS host */
 
#define current_msec()   current_time()
 
#define LINK_INITIALIZE_FAILED   -200
 
#define CONNECT_TIMEOUT_FAILED   -201
 
#define WRONG_LINK_VERSION   -202
 
#define TRACKER_BUSY   -203
 
#define IN_DISCONNECT_MODE   16384
 
#define IN_UNKNOWN_MODE   0
 
#define IN_IDLE_MODE   1
 
#define IN_SETUP_MODE   2
 
#define IN_RECORD_MODE   4
 
#define IN_TARGET_MODE   8
 
#define IN_DRIFTCORR_MODE   16
 
#define IN_IMAGE_MODE   32
 
#define IN_USER_MENU   64
 
#define IN_PLAYBACK_MODE   256
 
#define EL_IDLE_MODE   1
 
#define EL_IMAGE_MODE   2
 
#define EL_SETUP_MENU_MODE   3
 
#define EL_USER_MENU_1   5
 
#define EL_USER_MENU_2   6
 
#define EL_USER_MENU_3   7
 
#define EL_OPTIONS_MENU_MODE   8 /* NEW FOR EYELIKN II */
 
#define EL_OUTPUT_MENU_MODE   9
 
#define EL_DEMO_MENU_MODE   10
 
#define EL_CALIBRATE_MODE   11
 
#define EL_VALIDATE_MODE   12
 
#define EL_DRIFT_CORR_MODE   13
 
#define EL_RECORD_MODE   14
 
#define SCENECAM_ALIGN_MODE   15
 
#define SCENECAM_DEPTH_MODE   16
 
#define USER_MENU_NUMBER(mode)   ((mode)-4)
 
#define SAMPLE_TYPE   200
 
#define RECORD_FILE_SAMPLES   1
 
#define RECORD_FILE_EVENTS   2
 
#define RECORD_LINK_SAMPLES   4
 
#define RECORD_LINK_EVENTS   8
 
#define ELIMAGE_2   0 /* 1 plane, 1 bit per pixel (2 colors) */
 
#define ELIMAGE_16   1 /* 4 bits per pixel, packed (16 colors) */
 
#define ELIMAGE_16P   2 /* 1 bit per pixel, 4 planes (16 colors) */
 
#define ELIMAGE_256   3 /* 8 bits per pixel (256 colors, EL-II) */
 
#define ELIMAGE_128HV   4 /* 7 bits per pixel, 2-D compression, EL-II V2.0 and later) */
 
#define ELIMAGE_128HVX   5 /* same as previous, but no crosshairs in image */
 
#define PALDATADEF
 
#define KB_PRESS   10
 
#define KB_RELEASE   -1
 
#define KB_REPEAT   1
 
#define NUM_LOCK_ON   0x20
 
#define CAPS_LOCK_ON   0x40
 
#define ALT_KEY_DOWN   0x08
 
#define CTRL_KEY_DOWN   0x04
 
#define SHIFT_KEY_DOWN   0x03 /* left, right shift keys */
 
#define KB_BUTTON   0xFF00U
 
#define F1_KEY   0x3B00 /* some samples */
 
#define F2_KEY   0x3C00
 
#define F3_KEY   0x3D00
 
#define F4_KEY   0x3E00
 
#define F5_KEY   0x3F00
 
#define F6_KEY   0x4000
 
#define F7_KEY   0x4100
 
#define F8_KEY   0x4200
 
#define F9_KEY   0x4300
 
#define F10_KEY   0x4400
 
#define F11_KEY   0x4500
 
#define F12_KEY   0x4600
 
#define PAGE_UP   0x4900
 
#define PAGE_DOWN   0x5100
 
#define CURS_UP   0x4800
 
#define CURS_DOWN   0x5000
 
#define CURS_LEFT   0x4B00
 
#define CURS_RIGHT   0x4D00
 
#define ESC_KEY   0x001B
 
#define ENTER_KEY   0x000D
 
#define PLUS_KEY   0x002B
 
#define MINUS_KEY   0x002D
 
#define INSERT_KEY   0x5200
 
#define DELETE_KEY   0x5300
 
#define HOME_KEY   0x4700
 
#define END_KEY   0x4F00
 
#define BACKSPACE_KEY   0x0008
 
#define PRINTSCR_KEY   0x2A00
 
#define WMENU_KEY   0x5D00
 
#define WLEFT_KEY   0x5B00
 
#define WRIGHT_KEY   0x5C00
 
#define FILE_XFER_ABORTED   -110
 
#define FILE_CANT_OPEN   -111
 
#define FILE_NO_REPLY   -112 /* no-data returned */
 
#define FILE_BAD_DATA   -113
 
#define FILEDATA_SIZE_FLAG   999 /* start block has name, offset=total size */
 
#define FILE_BLOCK_SIZE   512 /* full block size: if less, it's last block */
 
#define ABORT_BX   -32000 /* signal to abort bitmap send */
 
#define PAUSE_BX   -32001 /* signal that last packet dropped (full queue) */
 
#define DONE_BX   -32002 /* last block received OK */
 
#define eyelink_tracker_time()   eyelink_tracker_msec()
 
#define eyelink_time_offset()   eyelink_msec_offset()
 

Typedefs

typedef void(* EYELINK_DATA_READY_NOTIFY) (int)
 

Functions

UINT16 open_eyelink_system (UINT16 bufsize, char FARTYPE *options)
 
void eyelink_set_name (char FARTYPE *name)
 
void close_eyelink_system (void)
 
UINT32 current_time (void)
 
UINT32 current_micro (MICRO FARTYPE *m)
 
UINT32 current_usec (void)
 
void msec_delay (UINT32 n)
 
double current_double_usec (void)
 
INT16 eyelink_open_node (ELINKADDR node, INT16 busytest)
 
INT16 eyelink_open (void)
 
INT16 eyelink_broadcast_open (void)
 
INT16 eyelink_dummy_open (void)
 
INT16 eyelink_close (INT16 send_msg)
 
INT16 eyelink_reset_clock (INT16 enable)
 
INT16 eyelink_is_connected (void)
 
INT16 eyelink_quiet_mode (INT16 mode)
 
INT16 eyelink_poll_trackers (void)
 
INT16 eyelink_poll_remotes (void)
 
INT16 eyelink_poll_responses (void)
 
INT16 eyelink_get_node (INT16 resp, void FARTYPE *data)
 
INT16 eyelink_node_send (ELINKADDR node, void FARTYPE *data, UINT16 dsize)
 
INT16 eyelink_node_receive (ELINKADDR node, void FARTYPE *data)
 
INT16 eyelink_send_command (char FARTYPE *text)
 
INT16 eyelink_command_result (void)
 
INT16 eyelink_timed_command (UINT32 msec, char FARTYPE *text)
 
INT16 eyelink_last_message (char FARTYPE *buf)
 
INT16 eyelink_send_message (char FARTYPE *msg)
 
INT16 eyelink_node_send_message (ELINKADDR node, char FARTYPE *msg)
 
INT16 eyelink_send_message_ex (UINT32 exectime, char FARTYPE *msg)
 
INT16 eyelink_node_send_message_ex (UINT32 exectime, ELINKADDR node, char FARTYPE *msg)
 
INT16 eyelink_read_request (char FARTYPE *text)
 
INT16 eyelink_read_reply (char FARTYPE *buf)
 
UINT32 eyelink_request_time (void)
 
UINT32 eyelink_node_request_time (ELINKADDR node)
 
UINT32 eyelink_read_time (void)
 
INT16 eyelink_abort (void)
 
INT16 eyelink_start_setup (void)
 
void eyelink_set_tracker_setup_default (INT16 mode)
 
INT16 eyelink_in_setup (void)
 
INT16 eyelink_target_check (INT16 FARTYPE *x, INT16 FARTYPE *y)
 
INT16 eyelink_target_checkf (float FARTYPE *x, float FARTYPE *y)
 
INT16 eyelink_accept_trigger (void)
 
INT16 eyelink_driftcorr_start (INT16 x, INT16 y)
 
INT16 eyelink_driftcorr_startf (float x, float y)
 
INT16 eyelink_cal_result (void)
 
INT16 eyelink_apply_driftcorr (void)
 
INT16 eyelink_cal_message (char FARTYPE *msg)
 
INT16 eyelink_current_mode (void)
 
INT16 eyelink_tracker_mode (void)
 
INT16 eyelink_wait_for_mode_ready (UINT32 maxwait)
 
INT16 eyelink_user_menu_selection (void)
 
INT16 eyelink_position_prescaler (void)
 
INT16 eyelink_reset_data (INT16 clear)
 
void FARTYPE * eyelink_data_status (void)
 
INT16 eyelink_in_data_block (INT16 samples, INT16 events)
 
INT16 eyelink_wait_for_block_start (UINT32 maxwait, INT16 samples, INT16 events)
 
INT16 eyelink_get_next_data (ALL_DATA *buf)
 
INT16 eyelink_get_last_data (ALL_DATA *buf)
 
INT16 eyelink_newest_sample (ISAMPLE *buf)
 
INT16 eyelink_get_float_data (ALLF_DATA *buf)
 
INT16 eyelink_get_all_float_data (ALLF_DATA *buf, int bufferlen)
 
INT16 eyelink_get_double_data (ALLD_DATA *buf)
 
INT16 eyelink_newest_float_sample (void FARTYPE *buf)
 
INT16 eyelink_newest_double_sample (void FARTYPE *buf)
 
INT16 eyelink_eye_available (void)
 
UINT16 eyelink_sample_data_flags (void)
 
UINT16 eyelink_event_data_flags (void)
 
UINT16 eyelink_event_type_flags (void)
 
INT16 eyelink_wait_for_data (UINT32 maxwait, INT16 samples, INT16 events)
 
INT16 eyelink_get_sample (ISAMPLE *sample)
 
INT16 eyelink_data_switch (UINT16 flags)
 
INT16 eyelink_data_start (UINT16 flags, INT16 lock)
 
INT16 eyelink_data_stop (void)
 
INT16 eyelink_playback_start (void)
 
INT16 eyelink_playback_stop (void)
 
INT16 eyelink_request_image (INT16 type, INT16 xsize, INT16 ysize)
 
INT16 eyelink_image_status (void)
 
void eyelink_abort_image (void)
 
INT16 eyelink_image_data (INT16 FARTYPE *xsize, INT16 FARTYPE *ysize, INT16 FARTYPE *type)
 
INT16 eyelink_get_line (void FARTYPE *buf)
 
INT16 eyelink_get_palette (void FARTYPE *pal)
 
UINT16 eyelink_read_keybutton (INT16 FARTYPE *mods, INT16 FARTYPE *state, UINT16 *kcode, UINT32 FARTYPE *time)
 
INT16 eyelink_send_keybutton (UINT16 code, UINT16 mods, INT16 state)
 
UINT16 eyelink_button_states (void)
 
UINT16 eyelink_last_button_states (UINT32 FARTYPE *time)
 
UINT16 eyelink_last_button_press (UINT32 FARTYPE *time)
 
INT16 eyelink_flush_keybuttons (INT16 enable_buttons)
 
INT16 eyelink_request_file_read (const char FARTYPE *src)
 
INT16 eyelink_get_file_block (void FARTYPE *buf, INT32 FARTYPE *offset)
 
INT16 eyelink_request_file_block (UINT32 offset)
 
INT16 eyelink_end_file_transfer (void)
 
INT16 eyelink_get_tracker_version (char FARTYPE *c)
 
INT16 eyelink2_mode_data (INT16 *sample_rate, INT16 *crmode, INT16 *file_filter, INT16 *link_filter)
 
INT16 eyelink_mode_data (INT16 *sample_rate, INT16 *crmode, INT16 *file_filter, INT16 *link_filter)
 
INT16 eyelink_bitmap_packet (void *data, UINT16 size, UINT16 seq)
 
INT16 eyelink_bitmap_ack_count (void)
 
void eyelink_set_tracker_node (ELINKADDR node)
 
double eyelink_tracker_double_usec (void)
 
UINT32 eyelink_tracker_msec (void)
 
double eyelink_double_usec_offset (void)
 
UINT32 eyelink_msec_offset (void)
 
INT16 eyelink_wait_for_next_data (ALLF_DATA *buf, int bufferlen, UINT32 timeout)
 
INT16 eyelink_wait_for_new_sample (ISAMPLE *buf, UINT32 timeout)
 
INT16 eyelink_wait_for_new_float_sample (FSAMPLE *buf, UINT32 timeout)
 
INT16 eyelink_wait_for_new_double_sample (DSAMPLE *buf, UINT32 timeout)
 
INT16 eyelink_wait_for_command_result (UINT32 timeout)
 
INT16 eyelink_set_data_ready_notify (EYELINK_DATA_READY_NOTIFY notify_function)
 
EYELINK_DATA_READY_NOTIFY eyelink_get_data_ready_notify (void)
 

Variables

ELINKADDR eye_broadcast_address
 
ELINKADDR rem_broadcast_address
 
ELINKADDR our_address
 

Detailed Description

Declarations and constants for basic EyeLink functions, Ethernet link, and timing.


Copyright ©2002-2021, SR Research Ltd.