00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038 #ifndef PSYCHO_PSYCHOOPTS_C_DEFINED
00039 #define PSYCHO_PSYCHOOPTS_C_DEFINED
00040
00041 #include "Psycho/PsychoOpts.H"
00042
00043 #include "Component/ModelOptionDef.H"
00044 #include "Image/Dims.H"
00045 #include "Image/Range.H"
00046 #include "Util/SimTime.H"
00047
00048 const ModelOptionCateg MOC_PSYCHODISP = {
00049 MOC_SORTPRI_2, "PsychoDisplay-Related Options" };
00050
00051 const ModelOptionCateg MOC_EYETRACK = {
00052 MOC_SORTPRI_2, "EyeTracker-Related Options" };
00053
00054 const ModelOptionCateg MOC_PSYCHOPROG = {
00055 MOC_SORTPRI_2, "psycho physics programs related Options" };
00056
00057
00058
00059
00060
00061
00062
00063
00064
00065
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079 const ModelOptionDef OPT_IscanSerialPortDevice =
00080 { MODOPT_ARG_STRING, "IscanSerialPortDevice", &MOC_PSYCHODISP, OPTEXP_CORE,
00081 "Device file for serial-port connection to the ISCAN eyetracker",
00082 "iscan-serial-port", '\0', "<devicefile>", "/dev/ttyS0" };
00083
00084
00085 const ModelOptionDef OPT_EyeTrackerType =
00086 { MODOPT_ARG_STRING, "EyeTrackerType", &MOC_EYETRACK, OPTEXP_CORE,
00087 "Type of EyeTracker to use. ISCAN has been tested with an ISCAN, "
00088 "Inc. model RK-464, 240Hz video-based eye-tracker (trigger can be "
00089 "over serial or parallel ports, see available options after you "
00090 "have selected this tracker type). DML is the monkey eye-tracker "
00091 "model used in Doug Munoz' Lab at Queen's University, Kingston, ON, "
00092 "Canada, based on a scleral search coil (Trigger is over the parallel "
00093 "port, no data streaming). TIL is the monkey eye-tracker model used in "
00094 "Tadashi Isa's Lab at the National Institute for Physiological Science, "
00095 "Okazaki, Japan, also based on a scleral search coil. EL is for "
00096 "EyeLink-II.",
00097 "et-type", '\0', "<None|ISCAN|DML|UDP|TIL|EL>", "None" };
00098
00099
00100 const ModelOptionDef OPT_EyeTrackerParTrig =
00101 { MODOPT_FLAG, "EyeTrackerParTrig", &MOC_EYETRACK, OPTEXP_CORE,
00102 "Use parallel trigger mode. If this option is selected, the ISCAN "
00103 "tracker will be started/stopped by sending it signals over the "
00104 "parallel port, while the serial port will be reserved for "
00105 "streaming eye position data back to us. Otherwise, the tracker "
00106 "will be started/stopped over the serial line, and no data "
00107 "streaming will be possible.",
00108 "et-partrig", '\0', "<bool>", "true" };
00109
00110
00111 const ModelOptionDef OPT_EyeTrackerSerDev =
00112 { MODOPT_ARG_STRING, "EyeTrackerSerDev", &MOC_EYETRACK, OPTEXP_CORE,
00113 "Device file for serial-port connection to the eye tracker.",
00114 "et-serdev", '\0', "<devicefile>", "/dev/ttyS0" };
00115
00116
00117 const ModelOptionDef OPT_EyeTrackerParDev =
00118 { MODOPT_ARG_STRING, "EyeTrackerParDev", &MOC_EYETRACK, OPTEXP_CORE,
00119 "Device file for parallel-port connection to the eye tracker.",
00120 "et-pardev", '\0', "<devicefile>", "/dev/parport0" };
00121
00122
00123 const ModelOptionDef OPT_EyeTrackerEDFfname =
00124 { MODOPT_ARG_STRING, "EyeTrackerEDFfname", &MOC_EYETRACK, OPTEXP_CORE,
00125 "Name of EDF file to use for EyeLink data collection.",
00126 "et-edf-fname", '\0', "<filename>", "" };
00127
00128
00129 const ModelOptionDef OPT_Hflip =
00130 { MODOPT_FLAG, "hflip", &MOC_PSYCHOPROG, OPTEXP_CORE,
00131 "Flip input images horizontally.",
00132 "hflip", '\0', "<bool>", "false" };
00133
00134
00135 const ModelOptionDef OPT_FixSize =
00136 { MODOPT_ARG(float), "fixsize", &MOC_PSYCHOPROG, OPTEXP_CORE,
00137 "fixation point size in degrees of visual angle",
00138 "fixsize", '\0', "<float>", "1" };
00139
00140
00141 const ModelOptionDef OPT_Ppd =
00142 { MODOPT_ARG(float), "ppd", &MOC_PSYCHOPROG, OPTEXP_CORE,
00143 "pixels per degree of visual angle",
00144 "ppd", '\0', "<float>", "11" };
00145
00146
00147 const ModelOptionDef OPT_KeepFix =
00148 { MODOPT_FLAG, "keepfix", &MOC_PSYCHOPROG, OPTEXP_CORE,
00149 "keep the fixation point on during the movie",
00150 "keepfix", '\0', "<bool>", "false" };
00151
00152
00153 const ModelOptionDef OPT_DisplayTime =
00154 { MODOPT_ARG(SimTime), "DisplayTime", &MOC_PSYCHOPROG, OPTEXP_CORE,
00155 "The amount of time to display the stimulus. Append"
00156 "a time <s, ms> to indicate the units", "displaytime", '\0',
00157 "<SimTime>", "1s" };
00158
00159
00160 const ModelOptionDef OPT_TrialWait =
00161 { MODOPT_ARG(Range<int>), "TrialWait", &MOC_PSYCHOPROG, OPTEXP_CORE,
00162 "Wait a random amount of time (in ms) before the start of the next"
00163 "trial", "waittime", '\0',
00164 "<min>-<max>", "0-0" };
00165
00166
00167 const ModelOptionDef OPT_Testrun =
00168 { MODOPT_FLAG, "Testrun", &MOC_PSYCHOPROG, OPTEXP_CORE,
00169 "This option will disable user input while running psychophysics "
00170 "programs so that we can test our experiments without waiting for "
00171 "trial triggers . ", "testrun", '\0', "<bool>", "false" };
00172
00173 const ModelOptionDef OPT_GrayFramePrcnt =
00174 { MODOPT_ARG(int), "GrayFramePrcnt", &MOC_PSYCHOPROG, OPTEXP_CORE,
00175 "If this value is set to greater than 0, that percentage of the total "
00176 "clip count will be added back into the movie queue as gray "
00177 "movies. Also see --gray-frame-range", "gray-frame-percent", '\0', "<int>",
00178 "0" };
00179
00180 const ModelOptionDef OPT_GrayFrameRange =
00181 { MODOPT_ARG(Range<int>), "GrayFrameRange", &MOC_PSYCHOPROG, OPTEXP_CORE,
00182 "Gray frame durations will be uniform randomly distributed between "
00183 "these values in milliseconds. Also see --gray-frame-percent",
00184 "gray-frame-range", '\0', "<int>-<int>", "3000-5000" };
00185
00186
00187
00188
00189
00190
00191
00192 #endif // PSYCHO_PSYCHOOPTS_C_DEFINED