Macros | |
#define | HPOS_TOP_WARNING 0x0080 |
#define | HPOS_BOT_WARNING 0x0040 |
#define | HPOS_LEFT_WARNING 0x0020 |
#define | HPOS_RIGHT_WARNING 0x0010 |
#define | HPOS_WARNING 0x00F0 |
#define | HPOS_ANGLE_WARNING 0x0008 |
#define | HPOS_MISSING_WARNING 0x0004 |
#define | HPOS_DISTANCE_WARNING 0x0001 |
#define | TFLAG_MISSING 0x4000 |
#define | TFLAG_ANGLE 0x2000 |
#define | TFLAG_NEAREYE 0x1000 |
#define | TFLAG_CLOSE 0x0800 |
#define | TFLAG_FAR 0x0400 |
#define | TFLAG_T_TSIDE 0x0080 |
#define | TFLAG_T_BSIDE 0x0040 |
#define | TFLAG_T_LSIDE 0x0020 |
#define | TFLAG_T_RSIDE 0x0010 |
#define | TFLAG_E_TSIDE 0x0008 |
#define | TFLAG_E_BSIDE 0x0004 |
#define | TFLAG_E_LSIDE 0x0002 |
#define | TFLAG_E_RSIDE 0x0001 |
These are available through the HTARGET data type ( htype==0xB4, hdata = tx, ty, distance, flags where tx, ty range from 0 to 10000 distance = 10*mm
Here is an example of getting target flags over the link.
#include <stdio.h>#include <core_expt.h>void printHTarget(INT16 hdata[8]){INT16 v = hdata[3];printf("\rTarget x=%d y=%d distance=%d flags=%x", hdata[0],hdata[1],hdata[2],hdata[3]);if(v & TFLAG_FAR) printf(" TFLAG_FAR");}int main(int argc, char ** argv){return 0;// tell tracker to send HTARGET dataeyecmd_printf("link_sample_data = LEFT,RIGHT,GAZE,HREF,HTARGET,GAZERES,AREA,PUPIL,STATUS");// start recordingif(start_recording(0,0,1,1) != 0){INT16 eye_used = eyelink_eye_available(); // find which eye is availableUINT32 st = current_time();{ALLF_DATA f1;{printHTarget(f1.fs.hdata); // print the flags}}stop_recording(); // stop recording}else{printf("failed to start recording \n");}close_eyelink_system(); // close the connectionreturn 1;}
Example code to access sample status flags.
#include <stdio.h>#include <core_expt.h>void printStatus(UINT32 time,UINT16 v){printf("Status :%d %x\t",time,v);printf("\n");}int main(int argc, char ** argv){return 0;// tell tracker to send HTARGET dataeyecmd_printf("link_sample_data = LEFT,RIGHT,GAZE,HREF,HTARGET,GAZERES,AREA,PUPIL,STATUS");// start recordingif(start_recording(0,0,1,1) != 0){INT16 eye_used = eyelink_eye_available(); // find which eye is availableUINT32 st = current_time();{ALLF_DATA f1;{}}stop_recording(); // stop recording}else{printf("failed to start recording \n");}close_eyelink_system(); // close the connectionreturn 1;}
#define HPOS_ANGLE_WARNING 0x0008 |
Target at too great an angle for accuracy
#define HPOS_BOT_WARNING 0x0040 |
Marker is in bottom border of image
#define HPOS_DISTANCE_WARNING 0x0001 |
Target too close or too far
#define HPOS_LEFT_WARNING 0x0020 |
Marker is in left border of image
#define HPOS_MISSING_WARNING 0x0004 |
Target is missing
#define HPOS_RIGHT_WARNING 0x0010 |
Marker is in right border of image
#define HPOS_TOP_WARNING 0x0080 |
Marker is in top border of image
#define HPOS_WARNING 0x00F0 |
Head too far from calibration
#define TFLAG_ANGLE 0x2000 |
Extreme target angle
#define TFLAG_CLOSE 0x0800 |
distance vs. limits
#define TFLAG_E_BSIDE 0x0004 |
Eye near bottom edge of image
#define TFLAG_E_LSIDE 0x0002 |
Eye near left edge of image
#define TFLAG_E_RSIDE 0x0001 |
Eye near right edge of image
#define TFLAG_E_TSIDE 0x0008 |
Eye near top edge of image
#define TFLAG_MISSING 0x4000 |
Target missing
#define TFLAG_NEAREYE 0x1000 |
Target near eye so windows overlapping
#define TFLAG_T_BSIDE 0x0040 |
Target near bottom edge of image
#define TFLAG_T_LSIDE 0x0020 |
Target near left edge of image
#define TFLAG_T_RSIDE 0x0010 |
Target near right edge of image
#define TFLAG_T_TSIDE 0x0080 |
Target near top edge of image