1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
/*
/osxptb/trunk/PsychSourceGL/Source/OSX/Eyelink/EyelinkTimeOffset.c
PROJECTS: Eyelink
AUTHORS:
f.w.cornelissen@rug.nl fwc
PLATFORMS: OSX, windows
HISTORY:
21/01/07 fwc added based on EyelinkTrackerTime function
TARGET LOCATION:
Eyelink.mexmac resides in:
PsychHardware/EyelinkToolbox/EyelinkBasic
*/
#include "PsychEyelink.h"
static char useString[] = "[offset =] Eyelink('TimeOffset')";
static char synopsisString[] =
"Returns the time difference (in msec)\n"
"between the tracker time and display pc time.\n";
static char seeAlsoString[] = "";
/*
ROUTINE: EyelinkTimeOffset
PURPOSE:
Returns the time difference between the tracker time and display pc time.
eyelink_double_usec_offset() returns current offset between local and tracker time in microseconds.
We scale it to mseconds, while keeping precision
May "jiggle" by 50 usec or more.
*/
PsychError EyelinkTimeOffset(void)
{
double offset;
//all sub functions should have these two lines
PsychPushHelp(useString, synopsisString, seeAlsoString);
if(PsychIsGiveHelp()){PsychGiveHelp();return(PsychError_none);};
//check to see if the user supplied superfluous arguments
PsychErrorExit(PsychCapNumInputArgs(0));
PsychErrorExit(PsychRequireNumInputArgs(0));
PsychErrorExit(PsychCapNumOutputArgs(1));
// Verify eyelink is up and running
EyelinkSystemIsConnected();
EyelinkSystemIsInitialized();
offset = eyelink_double_usec_offset()/1000;
PsychCopyOutDoubleArg(1, FALSE, offset);
return(PsychError_none);
}
|