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 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
|
/*
PsychSourceGL/Source/Common/Eyelink/EyelinkSynopsis.c
PROJECTS: Eyelink
AUTHORS:
cburns@berkeley.edu cdb
E.Peters@ai.rug.nl emp
f.w.cornelissen@rug.nl fwc
PLATFORMS: All.
HISTORY:
11/21/05 cdb Created based on old EyeMex.c and ScreenSynopsis.c.
15/06/06 fwc Added few functions and small changes to synopsis.
*/
#include "PsychEyelink.h"
#define MAX_SYNOPSIS_STRINGS 500
//declare variables local to this file.
static const char *synopsisSYNOPSIS[MAX_SYNOPSIS_STRINGS];
void InitializeSynopsis()
{
int i = 0;
const char **synopsis = synopsisSYNOPSIS; //abbreviate the long name
synopsis[i++] = "\n% This is the main function of the Eyelink toolbox";
synopsis[i++] = "Usage:";
synopsis[i++] = "\n% For general advice, try:";
synopsis[i++] = "help Eyelink";
synopsis[i++] = "\n% For a more detailed explanation of any Eyelink function, just add a question mark \"?\".";
synopsis[i++] = "% E.g. for 'Initialize', try either of these equivalent forms:";
synopsis[i++] = "Eyelink('Initialize?')";
synopsis[i++] = "Eyelink Initialize?";
synopsis[i++] = "\n% If you think you've found a bug, please report it";
synopsis[i++] = "on the forum, see: http://psychtoolbox.org/\n";
// Init or close eyelink
synopsis[i++] = "\n% Initialize or shutdown Eyelink connection:";
synopsis[i++] = "[status =] Eyelink('Initialize' [, displayCallbackFunction])";
synopsis[i++] = "[status =] Eyelink('InitializeDummy' [, displayCallbackFunction])";
synopsis[i++] = "[status =] Eyelink('IsConnected')";
synopsis[i++] = "[status =] Eyelink('SetAddress', ipaddress);";
synopsis[i++] = "Eyelink('Shutdown')";
synopsis[i++] = "oldlevel = Eyelink('Verbosity' [,level]);";
synopsis[i++] = "Eyelink('TestSuite')";
synopsis[i++] = "[status =] Eyelink('OpenFile', filename [, dontOpenExisting=0])";
synopsis[i++] = "[status =] Eyelink('CloseFile')";
synopsis[i++] = "[status =] Eyelink('ReceiveFile',['filename'], ['dest'], ['dest_is_path'])";
synopsis[i++] = "[status =] Eyelink('SendFile', src, dest, dest_is_path)";
// Calibration
synopsis[i++] = "\n% Calibration:";
synopsis[i++] = "[result =] Eyelink('StartSetup' [, stype=0])";
synopsis[i++] = "[status = ] Eyelink('DriftCorrStart', x, y [,dtype=0][, dodraw=1][, allow_setup=0])";
synopsis[i++] = "[result = ] Eyelink('ApplyDriftCorr')";
synopsis[i++] = "[result, tx, ty] = Eyelink('TargetCheck')";
synopsis[i++] = "[result = ] Eyelink('AcceptTrigger')";
synopsis[i++] = "[result, messageString =] Eyelink('CalMessage')";
// Start or stop recording, Data acquisition
synopsis[i++] = "\n% Start or stop recording and acquiring data:";
synopsis[i++] = "[startrecording_error =] Eyelink('StartRecording' [,file_samples, file_events, link_samples, link_events] )";
synopsis[i++] = "Eyelink('Stoprecording')";
synopsis[i++] = "error = Eyelink('CheckRecording')";
synopsis[i++] = "eyeused = Eyelink('EyeAvailable')";
synopsis[i++] = "NewOrOld = Eyelink('NewFloatSampleAvailable')";
synopsis[i++] = "sample = Eyelink('NewestFloatSample')";
synopsis[i++] = "[sample, raw] = Eyelink('NewestFloatSampleRaw' [, eye])";
synopsis[i++] = "type = Eyelink('GetNextDataType')";
synopsis[i++] = "item = Eyelink('GetFloatData', type)";
synopsis[i++] = "[item, raw] = Eyelink('GetFloatDataRaw', type [, eye])";
synopsis[i++] = "[samples, events, drained] = Eyelink('GetQueuedData'[, eye])";
// Misc eyelink communication:
synopsis[i++] = "\n% Miscellaneous functions to communicate with Eyelink:";
synopsis[i++] = "result = Eyelink('ButtonStates')";
synopsis[i++] = "[status =] Eyelink('Command', 'formatstring', [...])";
synopsis[i++] = "[status =] Eyelink('Message', 'formatstring', [...])";
synopsis[i++] = "[result =] Eyelink('SendKeyButton', code, mods, state)";
synopsis[i++] = "[time =] Eyelink('TrackerTime')";
synopsis[i++] = "[offset =] Eyelink('TimeOffset')";
synopsis[i++] = "[status =] Eyelink('RequestTime')";
synopsis[i++] = "[time =] Eyelink('ReadTime')";
synopsis[i++] = "[mode =] Eyelink('TrackerMode')";
synopsis[i++] = "[result, reply =] Eyelink('ReadFromTracker', VariableName)";
synopsis[i++] = "\n% Miscellaneous Eyelink functions:";
synopsis[i++] = "[result =] Eyelink('WaitForModeReady', maxwait)";
synopsis[i++] = "[result =] Eyelink('ImageModeDisplay')";
synopsis[i++] = "mode = Eyelink('CurrentMode')";
synopsis[i++] = "result = Eyelink('CalResult')";
synopsis[i++] = "Eyelink('SetOfflineMode')";
synopsis[i++] = "[version, versionString] = Eyelink('GetTrackerVersion')";
synopsis[i++] = "[time =] Eyelink('TrackerTime')";
synopsis[i++] = "[offset =] Eyelink('TimeOffset')";
synopsis[i++] = "[status] = Eyelink('ImageTransfer', imagePath [, xPosition=0][, yPosition=0][, width=0][, height=0][, trackerXPosition=0][, trackerYPosition=0][, xferoptions=0])";
synopsis[i++] = "[status] = Eyelink('ImageTransfer', imageArray [, xPosition=0][, yPosition=0][, width=0][, height=0][, trackerXPosition=0][, trackerYPosition=0][, xferoptions=0])";
synopsis[i++] = "[versionString] = Eyelink('EDKVersion')";
synopsis[i++] = "\n% Eyelink Velocity related functions:";
synopsis[i++] = "[vel, acc, fsample]= Eyelink('CalculateOverallVelocityAndAcceleration' [, sample_model])";
synopsis[i++] = "[vel,fsample] = Eyelink('CalculateVelocity' [,sample_model] )";
synopsis[i++] = "[x_vel,y_vel,fsample] = Eyelink('CalculateVelocityXY' [,sample_model] )";
// EyelinkToolbox author list
synopsis[i++] = "\n\n\n\n% EyelinkToolbox version for the OpenGL PsychToolbox";
synopsis[i++] = "% The EyelinkToolbox was developed by:\n";
synopsis[i++] = "\tFrans Cornelissen";
synopsis[i++] = "\tEnno Peters";
synopsis[i++] = "\tJohn Palmer";
synopsis[i++] = "\tChris Burns";
synopsis[i++] = "\tMario Kleiner";
synopsis[i++] = "\tErik Flister";
synopsis[i++] = "\tNuha Jabakhanji";
synopsis[i++] = "\tBrian Richardson";
synopsis[i++] = "\tKurt Debono";
synopsis[i++] = "\tMarcus Johnson";
synopsis[i++] = NULL; //this tells PsychDisplayScreenSynopsis where to stop
if (i > MAX_SYNOPSIS_STRINGS) {
PrintfExit("%s: increase dimension of synopsis[] from %ld to at least %ld and recompile.", __FILE__, (long) MAX_SYNOPSIS_STRINGS, (long) i);
}
}
PsychError PsychDisplayEyelinkSynopsis(void)
{
int i;
for (i = 0; synopsisSYNOPSIS[i] != NULL; i++) {
printf("%s\n", synopsisSYNOPSIS[i]);
}
return(PsychError_none);
}
|