psychopy 2024.2.4__py3-none-any.whl → 2025.1.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of psychopy might be problematic. Click here for more details.

Files changed (903) hide show
  1. psychopy/CHANGELOG.txt +208 -4
  2. psychopy/LICENSE.txt +1 -1
  3. psychopy/VERSION +1 -1
  4. psychopy/__init__.py +10 -7
  5. psychopy/alerts/__init__.py +1 -1
  6. psychopy/alerts/_alerts.py +53 -17
  7. psychopy/alerts/_errorHandler.py +3 -4
  8. psychopy/alerts/alertsCatalogue/3210.yaml +27 -0
  9. psychopy/alerts/alertsCatalogue/3610.yaml +19 -0
  10. psychopy/alerts/alertsCatalogue/4130.yaml +19 -0
  11. psychopy/alerts/alertsCatalogue/alertCategories.yaml +8 -1
  12. psychopy/alerts/alertsCatalogue/alertmsg.py +1 -1
  13. psychopy/alerts/alerttools.py +0 -16
  14. psychopy/app/Resources/betasplash.png +0 -0
  15. psychopy/app/Resources/betasplash@2x.png +0 -0
  16. psychopy/app/Resources/classic/case.png +0 -0
  17. psychopy/app/Resources/classic/case@2x.png +0 -0
  18. psychopy/app/Resources/classic/fileaudio.png +0 -0
  19. psychopy/app/Resources/classic/fileaudio@2x.png +0 -0
  20. psychopy/app/Resources/classic/filecss.png +0 -0
  21. psychopy/app/Resources/classic/filecss@2x.png +0 -0
  22. psychopy/app/Resources/classic/filecsv.png +0 -0
  23. psychopy/app/Resources/classic/filecsv@2x.png +0 -0
  24. psychopy/app/Resources/classic/filedesign.png +0 -0
  25. psychopy/app/Resources/classic/filedesign@2x.png +0 -0
  26. psychopy/app/Resources/classic/filefont.png +0 -0
  27. psychopy/app/Resources/classic/filefont@2x.png +0 -0
  28. psychopy/app/Resources/classic/filegit.png +0 -0
  29. psychopy/app/Resources/classic/filegit@2x.png +0 -0
  30. psychopy/app/Resources/classic/filehtml.png +0 -0
  31. psychopy/app/Resources/classic/filehtml@2x.png +0 -0
  32. psychopy/app/Resources/classic/fileimage.png +0 -0
  33. psychopy/app/Resources/classic/fileimage@2x.png +0 -0
  34. psychopy/app/Resources/classic/fileinfo.png +0 -0
  35. psychopy/app/Resources/classic/fileinfo@2x.png +0 -0
  36. psychopy/app/Resources/classic/filejs.png +0 -0
  37. psychopy/app/Resources/classic/filejs@2x.png +0 -0
  38. psychopy/app/Resources/classic/filejson.png +0 -0
  39. psychopy/app/Resources/classic/filejson@2x.png +0 -0
  40. psychopy/app/Resources/classic/filepkg.png +0 -0
  41. psychopy/app/Resources/classic/filepkg@2x.png +0 -0
  42. psychopy/app/Resources/classic/filepsyexp.png +0 -0
  43. psychopy/app/Resources/classic/filepsyexp@2x.png +0 -0
  44. psychopy/app/Resources/classic/filepy.png +0 -0
  45. psychopy/app/Resources/classic/filepy@2x.png +0 -0
  46. psychopy/app/Resources/classic/filetxt.png +0 -0
  47. psychopy/app/Resources/classic/filetxt@2x.png +0 -0
  48. psychopy/app/Resources/classic/fileunknown.png +0 -0
  49. psychopy/app/Resources/classic/fileunknown@2x.png +0 -0
  50. psychopy/app/Resources/classic/filevideo.png +0 -0
  51. psychopy/app/Resources/classic/filevideo@2x.png +0 -0
  52. psychopy/app/Resources/classic/find.png +0 -0
  53. psychopy/app/Resources/classic/find@2x.png +0 -0
  54. psychopy/app/Resources/classic/loop.png +0 -0
  55. psychopy/app/Resources/classic/loop@2x.png +0 -0
  56. psychopy/app/Resources/classic/regex.png +0 -0
  57. psychopy/app/Resources/classic/regex@2x.png +0 -0
  58. psychopy/app/Resources/dark/case.png +0 -0
  59. psychopy/app/Resources/dark/case@2x.png +0 -0
  60. psychopy/app/Resources/dark/fileaudio.png +0 -0
  61. psychopy/app/Resources/dark/fileaudio@2x.png +0 -0
  62. psychopy/app/Resources/dark/filecss.png +0 -0
  63. psychopy/app/Resources/dark/filecss@2x.png +0 -0
  64. psychopy/app/Resources/dark/filecsv.png +0 -0
  65. psychopy/app/Resources/dark/filecsv@2x.png +0 -0
  66. psychopy/app/Resources/dark/filedesign.png +0 -0
  67. psychopy/app/Resources/dark/filedesign@2x.png +0 -0
  68. psychopy/app/Resources/dark/filefont.png +0 -0
  69. psychopy/app/Resources/dark/filefont@2x.png +0 -0
  70. psychopy/app/Resources/dark/filegit.png +0 -0
  71. psychopy/app/Resources/dark/filegit@2x.png +0 -0
  72. psychopy/app/Resources/dark/filehtml.png +0 -0
  73. psychopy/app/Resources/dark/filehtml@2x.png +0 -0
  74. psychopy/app/Resources/dark/fileimage.png +0 -0
  75. psychopy/app/Resources/dark/fileimage@2x.png +0 -0
  76. psychopy/app/Resources/dark/fileinfo.png +0 -0
  77. psychopy/app/Resources/dark/fileinfo@2x.png +0 -0
  78. psychopy/app/Resources/dark/filejs.png +0 -0
  79. psychopy/app/Resources/dark/filejs@2x.png +0 -0
  80. psychopy/app/Resources/dark/filejson.png +0 -0
  81. psychopy/app/Resources/dark/filejson@2x.png +0 -0
  82. psychopy/app/Resources/dark/filepkg.png +0 -0
  83. psychopy/app/Resources/dark/filepkg@2x.png +0 -0
  84. psychopy/app/Resources/dark/filepsyexp.png +0 -0
  85. psychopy/app/Resources/dark/filepsyexp@2x.png +0 -0
  86. psychopy/app/Resources/dark/filepy.png +0 -0
  87. psychopy/app/Resources/dark/filepy@2x.png +0 -0
  88. psychopy/app/Resources/dark/filetxt.png +0 -0
  89. psychopy/app/Resources/dark/filetxt@2x.png +0 -0
  90. psychopy/app/Resources/dark/fileunknown.png +0 -0
  91. psychopy/app/Resources/dark/fileunknown@2x.png +0 -0
  92. psychopy/app/Resources/dark/filevideo.png +0 -0
  93. psychopy/app/Resources/dark/filevideo@2x.png +0 -0
  94. psychopy/app/Resources/dark/find.png +0 -0
  95. psychopy/app/Resources/dark/find@2x.png +0 -0
  96. psychopy/app/Resources/dark/loop.png +0 -0
  97. psychopy/app/Resources/dark/loop@2x.png +0 -0
  98. psychopy/app/Resources/dark/regex.png +0 -0
  99. psychopy/app/Resources/dark/regex@2x.png +0 -0
  100. psychopy/app/Resources/light/case.png +0 -0
  101. psychopy/app/Resources/light/case@2x.png +0 -0
  102. psychopy/app/Resources/light/fileaudio.png +0 -0
  103. psychopy/app/Resources/light/fileaudio@2x.png +0 -0
  104. psychopy/app/Resources/light/filecss.png +0 -0
  105. psychopy/app/Resources/light/filecss@2x.png +0 -0
  106. psychopy/app/Resources/light/filecsv.png +0 -0
  107. psychopy/app/Resources/light/filecsv@2x.png +0 -0
  108. psychopy/app/Resources/light/filedesign.png +0 -0
  109. psychopy/app/Resources/light/filedesign@2x.png +0 -0
  110. psychopy/app/Resources/light/filefont.png +0 -0
  111. psychopy/app/Resources/light/filefont@2x.png +0 -0
  112. psychopy/app/Resources/light/filegit.png +0 -0
  113. psychopy/app/Resources/light/filegit@2x.png +0 -0
  114. psychopy/app/Resources/light/filehtml.png +0 -0
  115. psychopy/app/Resources/light/filehtml@2x.png +0 -0
  116. psychopy/app/Resources/light/fileimage.png +0 -0
  117. psychopy/app/Resources/light/fileimage@2x.png +0 -0
  118. psychopy/app/Resources/light/fileinfo.png +0 -0
  119. psychopy/app/Resources/light/fileinfo@2x.png +0 -0
  120. psychopy/app/Resources/light/filejs.png +0 -0
  121. psychopy/app/Resources/light/filejs@2x.png +0 -0
  122. psychopy/app/Resources/light/filejson.png +0 -0
  123. psychopy/app/Resources/light/filejson@2x.png +0 -0
  124. psychopy/app/Resources/light/filepkg.png +0 -0
  125. psychopy/app/Resources/light/filepkg@2x.png +0 -0
  126. psychopy/app/Resources/light/filepsyexp.png +0 -0
  127. psychopy/app/Resources/light/filepsyexp@2x.png +0 -0
  128. psychopy/app/Resources/light/filepy.png +0 -0
  129. psychopy/app/Resources/light/filepy@2x.png +0 -0
  130. psychopy/app/Resources/light/filetxt.png +0 -0
  131. psychopy/app/Resources/light/filetxt@2x.png +0 -0
  132. psychopy/app/Resources/light/fileunknown.png +0 -0
  133. psychopy/app/Resources/light/fileunknown@2x.png +0 -0
  134. psychopy/app/Resources/light/filevideo.png +0 -0
  135. psychopy/app/Resources/light/filevideo@2x.png +0 -0
  136. psychopy/app/Resources/light/find.png +0 -0
  137. psychopy/app/Resources/light/find@2x.png +0 -0
  138. psychopy/app/Resources/light/loop.png +0 -0
  139. psychopy/app/Resources/light/loop@2x.png +0 -0
  140. psychopy/app/Resources/light/regex.png +0 -0
  141. psychopy/app/Resources/light/regex@2x.png +0 -0
  142. psychopy/app/Resources/routine_templates/Basic.psyexp +0 -1
  143. psychopy/app/Resources/routine_templates/Misc.psyexp +0 -1
  144. psychopy/app/Resources/routine_templates/Online.psyexp +0 -2
  145. psychopy/app/Resources/routine_templates/Trials.psyexp +0 -1
  146. psychopy/app/Resources/splash.png +0 -0
  147. psychopy/app/Resources/splash@2x.png +0 -0
  148. psychopy/app/__init__.py +49 -8
  149. psychopy/app/__main__.py +3 -0
  150. psychopy/app/_psychopyApp.py +134 -125
  151. psychopy/app/builder/builder.py +42 -22
  152. psychopy/app/builder/dialogs/__init__.py +44 -11
  153. psychopy/app/builder/dialogs/dlgsCode.py +1 -1
  154. psychopy/app/builder/dialogs/dlgsConditions.py +1 -1
  155. psychopy/app/builder/dialogs/findDlg.py +106 -20
  156. psychopy/app/builder/dialogs/paramCtrls.py +42 -1
  157. psychopy/app/builder/validators.py +1 -1
  158. psychopy/app/coder/codeEditorBase.py +8 -8
  159. psychopy/app/coder/coder.py +32 -29
  160. psychopy/app/coder/fileBrowser.py +68 -22
  161. psychopy/app/coder/folding.py +1 -1
  162. psychopy/app/coder/psychoParser.py +1 -1
  163. psychopy/app/coder/repl.py +1 -1
  164. psychopy/app/coder/sourceTree.py +1 -1
  165. psychopy/app/connections/__init__.py +1 -1
  166. psychopy/app/connections/news.py +1 -1
  167. psychopy/app/connections/sendusage.py +1 -1
  168. psychopy/app/connections/updates.py +1 -1
  169. psychopy/app/console.py +1 -1
  170. psychopy/app/errorDlg.py +1 -1
  171. psychopy/app/frametracker.py +1 -1
  172. psychopy/app/idle.py +1 -1
  173. psychopy/app/jobs.py +5 -2
  174. psychopy/app/linuxconfig/__init__.py +1 -1
  175. psychopy/app/locale/ar_001/LC_MESSAGE/messages.mo +0 -0
  176. psychopy/app/locale/ar_001/LC_MESSAGE/messages.po +1514 -3259
  177. psychopy/app/locale/cs_CZ/LC_MESSAGE/messages.mo +0 -0
  178. psychopy/app/locale/da_DK/LC_MESSAGE/messages.mo +0 -0
  179. psychopy/app/locale/de_DE/LC_MESSAGE/messages.mo +0 -0
  180. psychopy/app/locale/de_DE/LC_MESSAGE/messages.po +3 -3
  181. psychopy/app/locale/el_GR/LC_MESSAGE/messages.mo +0 -0
  182. psychopy/app/locale/en_NZ/LC_MESSAGE/messages.mo +0 -0
  183. psychopy/app/locale/en_US/LC_MESSAGE/messages.mo +0 -0
  184. psychopy/app/locale/es_CO/LC_MESSAGE/messages.mo +0 -0
  185. psychopy/app/locale/es_CO/LC_MESSAGE/messages.po +4 -4
  186. psychopy/app/locale/es_ES/LC_MESSAGE/messages.mo +0 -0
  187. psychopy/app/locale/es_ES/LC_MESSAGE/messages.po +4 -4
  188. psychopy/app/locale/es_US/LC_MESSAGE/messages.mo +0 -0
  189. psychopy/app/locale/es_US/LC_MESSAGE/messages.po +4 -4
  190. psychopy/app/locale/et_EE/LC_MESSAGE/messages.mo +0 -0
  191. psychopy/app/locale/et_EE/LC_MESSAGE/messages.po +2 -2
  192. psychopy/app/locale/fa_IR/LC_MESSAGE/messages.mo +0 -0
  193. psychopy/app/locale/fa_IR/LC_MESSAGE/messages.po +1 -1
  194. psychopy/app/locale/fi_FI/LC_MESSAGE/messages.mo +0 -0
  195. psychopy/app/locale/fr_FR/LC_MESSAGE/messages.mo +0 -0
  196. psychopy/app/locale/fr_FR/LC_MESSAGE/messages.po +2 -2
  197. psychopy/app/locale/he_IL/LC_MESSAGE/messages.mo +0 -0
  198. psychopy/app/locale/he_IL/LC_MESSAGE/messages.po +2 -2
  199. psychopy/app/locale/hi_IN/LC_MESSAGE/messages.mo +0 -0
  200. psychopy/app/locale/hi_IN/LC_MESSAGE/messages.po +2 -2
  201. psychopy/app/locale/hu_HU/LC_MESSAGE/messages.mo +0 -0
  202. psychopy/app/locale/it_IT/LC_MESSAGE/messages.mo +0 -0
  203. psychopy/app/locale/it_IT/LC_MESSAGE/messages.po +2 -2
  204. psychopy/app/locale/ja_JP/LC_MESSAGE/messages.mo +0 -0
  205. psychopy/app/locale/ja_JP/LC_MESSAGE/messages.po +3421 -2396
  206. psychopy/app/locale/ko_KR/LC_MESSAGE/messages.mo +0 -0
  207. psychopy/app/locale/ms_MY/LC_MESSAGE/messages.mo +0 -0
  208. psychopy/app/locale/ms_MY/LC_MESSAGE/messages.po +2 -2
  209. psychopy/app/locale/nl_NL/LC_MESSAGE/messages.mo +0 -0
  210. psychopy/app/locale/nn_NO/LC_MESSAGE/messages.mo +0 -0
  211. psychopy/app/locale/pl_PL/LC_MESSAGE/messages.mo +0 -0
  212. psychopy/app/locale/pt_PT/LC_MESSAGE/messages.mo +0 -0
  213. psychopy/app/locale/pt_PT/LC_MESSAGE/messages.po +4 -4
  214. psychopy/app/locale/ro_RO/LC_MESSAGE/messages.mo +0 -0
  215. psychopy/app/locale/ru_RU/LC_MESSAGE/messages.mo +0 -0
  216. psychopy/app/locale/sv_SE/LC_MESSAGE/messages.mo +0 -0
  217. psychopy/app/locale/sv_SE/LC_MESSAGE/messages.po +2 -2
  218. psychopy/app/locale/tr_TR/LC_MESSAGE/messages.mo +0 -0
  219. psychopy/app/locale/tr_TR/LC_MESSAGE/messages.po +2 -2
  220. psychopy/app/locale/zh_CN/LC_MESSAGE/messages.mo +0 -0
  221. psychopy/app/locale/zh_CN/LC_MESSAGE/messages.po +3 -3
  222. psychopy/app/locale/zh_TW/LC_MESSAGE/messages.mo +0 -0
  223. psychopy/app/locale/zh_TW/LC_MESSAGE/messages.po +2 -2
  224. psychopy/app/{builder/localizedStrings.py → localizedStrings.py} +173 -26
  225. psychopy/app/pavlovia_ui/__init__.py +1 -1
  226. psychopy/app/pavlovia_ui/_base.py +1 -1
  227. psychopy/app/pavlovia_ui/functions.py +1 -1
  228. psychopy/app/pavlovia_ui/menu.py +1 -1
  229. psychopy/app/pavlovia_ui/project.py +1 -1
  230. psychopy/app/pavlovia_ui/search.py +1 -1
  231. psychopy/app/pavlovia_ui/sync.py +1 -1
  232. psychopy/app/pavlovia_ui/user.py +1 -1
  233. psychopy/app/plugin_manager/dialog.py +34 -96
  234. psychopy/app/plugin_manager/packages.py +10 -14
  235. psychopy/app/plugin_manager/plugins.py +64 -4
  236. psychopy/app/preferencesDlg.py +12 -37
  237. psychopy/app/psychopyApp.py +130 -44
  238. psychopy/app/ribbon.py +1 -0
  239. psychopy/app/runner/runner.py +37 -15
  240. psychopy/app/runner/scriptProcess.py +11 -6
  241. psychopy/app/stdout/stdOutRich.py +9 -2
  242. psychopy/app/themes/fonts.py +1 -1
  243. psychopy/app/themes/icons.py +2 -38
  244. psychopy/app/ui/__init__.py +1 -1
  245. psychopy/app/utils.py +3 -3
  246. psychopy/assets/default.mp3 +0 -0
  247. psychopy/assets/fonts/NotoSans-Bold.ttf +0 -0
  248. psychopy/assets/fonts/NotoSans-BoldItalic.ttf +0 -0
  249. psychopy/assets/fonts/NotoSans-Italic.ttf +0 -0
  250. psychopy/assets/fonts/NotoSans-Regular.ttf +0 -0
  251. psychopy/assets/voicekeyThresholdStim.wav +0 -0
  252. psychopy/clock.py +4 -1
  253. psychopy/colors.py +2 -0
  254. psychopy/core.py +1 -1
  255. psychopy/data/base.py +1 -1
  256. psychopy/data/experiment.py +151 -46
  257. psychopy/data/routine.py +27 -1
  258. psychopy/data/staircase.py +2 -1
  259. psychopy/data/trial.py +62 -14
  260. psychopy/data/utils.py +1 -1
  261. psychopy/demos/builder/Design Templates/branchedExperiment/branchedExperiment.psyexp +333 -218
  262. psychopy/demos/builder/Design Templates/psychophysicsStaircase/psychophysicsStaircase.psyexp +261 -239
  263. psychopy/demos/builder/Design Templates/psychophysicsStairsInterleaved/psychophysicsStaircaseInterleaved.psyexp +319 -180
  264. psychopy/demos/builder/Design Templates/randomisedBlocks/randomisedBlocks.psyexp +204 -116
  265. psychopy/demos/builder/Experiments/BART/assets/background.jpg +0 -0
  266. psychopy/demos/builder/Experiments/BART/assets/blueBalloon.png +0 -0
  267. psychopy/demos/builder/Experiments/BART/assets/greenBalloon.png +0 -0
  268. psychopy/demos/builder/Experiments/BART/assets/redBalloon.png +0 -0
  269. psychopy/demos/builder/Experiments/BART/bart.psyexp +779 -866
  270. psychopy/demos/builder/Experiments/BigFiveInventory/BFI.psyexp +242 -180
  271. psychopy/demos/builder/Experiments/GoNoGo/gng.psyexp +419 -406
  272. psychopy/demos/builder/Experiments/dragAndDrop/README.md +2 -37
  273. psychopy/demos/builder/Experiments/dragAndDrop/drag_and_drop.psyexp +460 -1204
  274. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/blank_grid.png +0 -0
  275. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/make_shapes.psyexp +221 -0
  276. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/readme.md +4 -0
  277. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_1.png +0 -0
  278. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_10.png +0 -0
  279. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_2.png +0 -0
  280. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_3.png +0 -0
  281. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_4.png +0 -0
  282. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_5.png +0 -0
  283. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_6.png +0 -0
  284. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_7.png +0 -0
  285. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_8.png +0 -0
  286. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solution_9.png +0 -0
  287. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/solutions.xlsx +0 -0
  288. psychopy/demos/builder/Experiments/mentalRotation/MentalRotation.psyexp +583 -542
  289. psychopy/demos/builder/Experiments/navon/NavonTask.psyexp +458 -427
  290. psychopy/demos/builder/Experiments/sternberg/sternberg.psyexp +588 -550
  291. psychopy/demos/builder/Experiments/stroop/stroop.psyexp +303 -207
  292. psychopy/demos/builder/Experiments/stroopExtended/stroop.psyexp +390 -215
  293. psychopy/demos/builder/Experiments/stroopExtended/stroopReverse.psyexp +390 -215
  294. psychopy/demos/builder/Experiments/stroopVoice/stroopVoice.psyexp +357 -331
  295. psychopy/demos/builder/Feature Demos/buttonBox/buttonBoxDemo.psyexp +3 -2
  296. psychopy/demos/builder/Feature Demos/counterbalance/counterbalance.psyexp +287 -277
  297. psychopy/demos/builder/Feature Demos/gratings/gratings.psyexp +370 -320
  298. psychopy/demos/builder/Feature Demos/noise/noise.psyexp +452 -399
  299. psychopy/demos/builder/Feature Demos/panorama/panorama.psyexp +168 -133
  300. psychopy/demos/builder/Feature Demos/pilotMode/pilotMode.psyexp +4 -3
  301. psychopy/demos/builder/Feature Demos/progress/progressBar.psyexp +420 -392
  302. psychopy/demos/builder/Feature Demos/sliders/sliders.psyexp +917 -871
  303. psychopy/demos/builder/Feature Demos/visualValidator/readme.md +7 -0
  304. psychopy/demos/builder/Feature Demos/visualValidator/visualValidator.psyexp +200 -0
  305. psychopy/demos/builder/Hardware/EEG_parallel_component/EEG_triggers_parallel_comp.psyexp +25 -9
  306. psychopy/demos/builder/Hardware/EEG_serial_code/EEG_triggers_serial_code.psyexp +372 -361
  307. psychopy/demos/builder/Hardware/EEG_serial_component/EEG_triggers_serial_comp.psyexp +25 -9
  308. psychopy/demos/builder/Hardware/EGI_netstation/stroop.psyexp +320 -235
  309. psychopy/demos/builder/Hardware/Eyetracking_visual_search/visualSearch.psyexp +790 -651
  310. psychopy/demos/builder/Hardware/camera/camera.psyexp +326 -246
  311. psychopy/demos/builder/Hardware/eyetracking/eyetracking.psyexp +432 -327
  312. psychopy/demos/builder/Hardware/eyetracking_custom_cal/eyetracking_custom_cal.psyexp +440 -321
  313. psychopy/demos/builder/Hardware/fMRI/fMRI_demo.psyexp +190 -181
  314. psychopy/demos/builder/Hardware/lab_streaming_layer/lsl_triggers_demo.psyexp +323 -312
  315. psychopy/demos/builder/Hardware/lab_streaming_layer/lsl_triggers_demo_legacy.psyexp +360 -0
  316. psychopy/demos/builder/{Feature Demos/eyetracking/eyetracking.xml → Hardware/lab_streaming_layer/lsl_triggers_demo_legacy_legacy.psyexp} +154 -140
  317. psychopy/demos/builder/Hardware/lab_streaming_layer_legacy/lsl_triggers_demo_legacy.psyexp +329 -273
  318. psychopy/demos/builder/Hardware/lab_streaming_layer_legacy/lsl_triggers_demo_legacy_legacy.psyexp +360 -0
  319. psychopy/demos/builder/Hardware/lab_streaming_layer_legacy/lsl_triggers_demo_legacy_legacy_legacy.psyexp +312 -0
  320. psychopy/demos/builder/Hardware/microphone/microphone.psyexp +450 -404
  321. psychopy/demos/builder/Hardware/pump/pump.psyexp +593 -329
  322. psychopy/demos/builder/Helper Tools/achorVSalignment/FlowCircular-Regular.ttf +0 -0
  323. psychopy/demos/builder/Helper Tools/achorVSalignment/anchorAlignment.psyexp +336 -274
  324. psychopy/demos/builder/Helper Tools/clockFace/clockFace.psyexp +200 -149
  325. psychopy/demos/builder/Helper Tools/colors/colors.psyexp +300 -279
  326. psychopy/demos/builder/Helper Tools/drawPolygon/drawPolygon.psyexp +677 -564
  327. psychopy/demos/builder/Helper Tools/keyNameFinder/keyNameFinder.psyexp +214 -158
  328. psychopy/demos/builder/Helper Tools/spatialUnits/unitDemo.psyexp +195 -146
  329. psychopy/demos/coder/experiment control/runtimeInfo.py +1 -1
  330. psychopy/devices/__init__.py +1 -1
  331. psychopy/event.py +1 -1
  332. psychopy/exceptions.py +1 -1
  333. psychopy/experiment/__init__.py +1 -1
  334. psychopy/experiment/_experiment.py +62 -16
  335. psychopy/experiment/components/__init__.py +1 -6
  336. psychopy/experiment/components/_base.py +44 -19
  337. psychopy/experiment/components/aperture/__init__.py +1 -1
  338. psychopy/experiment/components/brush/__init__.py +2 -2
  339. psychopy/experiment/components/button/__init__.py +24 -28
  340. psychopy/experiment/components/camera/__init__.py +38 -39
  341. psychopy/experiment/components/code/__init__.py +1 -1
  342. psychopy/experiment/components/dots/__init__.py +1 -1
  343. psychopy/experiment/components/eyetracker_record/__init__.py +7 -3
  344. psychopy/experiment/components/form/__init__.py +3 -3
  345. psychopy/experiment/components/grating/__init__.py +1 -1
  346. psychopy/experiment/components/image/__init__.py +1 -1
  347. psychopy/experiment/components/joyButtons/__init__.py +2 -2
  348. psychopy/experiment/components/joyButtons/virtualJoyButtons.py +1 -1
  349. psychopy/experiment/components/joystick/__init__.py +3 -3
  350. psychopy/experiment/components/joystick/virtualJoystick.py +1 -1
  351. psychopy/experiment/components/keyboard/__init__.py +98 -122
  352. psychopy/experiment/components/microphone/__init__.py +54 -98
  353. psychopy/experiment/components/mouse/__init__.py +92 -93
  354. psychopy/experiment/components/movie/__init__.py +28 -50
  355. psychopy/experiment/components/parallelOut/__init__.py +3 -3
  356. psychopy/experiment/components/polygon/__init__.py +2 -3
  357. psychopy/experiment/components/roi/__init__.py +2 -2
  358. psychopy/experiment/components/routineSettings/__init__.py +2 -0
  359. psychopy/experiment/components/serialOut/__init__.py +7 -7
  360. psychopy/experiment/components/settings/__init__.py +317 -313
  361. psychopy/experiment/components/settings/eyetracking.py +108 -0
  362. psychopy/experiment/components/slider/__init__.py +5 -5
  363. psychopy/experiment/components/sound/__init__.py +168 -78
  364. psychopy/experiment/components/soundsensor/__init__.py +361 -0
  365. psychopy/experiment/components/soundsensor/classic/soundsensor.png +0 -0
  366. psychopy/experiment/components/soundsensor/classic/soundsensor@2x.png +0 -0
  367. psychopy/experiment/components/soundsensor/dark/soundsensor.png +0 -0
  368. psychopy/experiment/components/soundsensor/dark/soundsensor@2x.png +0 -0
  369. psychopy/experiment/components/soundsensor/light/soundsensor.png +0 -0
  370. psychopy/experiment/components/soundsensor/light/soundsensor@2x.png +0 -0
  371. psychopy/experiment/components/static/__init__.py +59 -33
  372. psychopy/experiment/components/text/__init__.py +2 -6
  373. psychopy/experiment/components/textbox/__init__.py +3 -7
  374. psychopy/experiment/components/unknown/__init__.py +2 -0
  375. psychopy/experiment/components/unknownPlugin/__init__.py +2 -0
  376. psychopy/experiment/exports.py +1 -1
  377. psychopy/experiment/flow.py +2 -2
  378. psychopy/experiment/localization.py +1 -1
  379. psychopy/experiment/loops.py +43 -10
  380. psychopy/experiment/params.py +6 -4
  381. psychopy/experiment/plugins.py +8 -1
  382. psychopy/experiment/py2js.py +1 -1
  383. psychopy/experiment/py2js_transpiler.py +1 -1
  384. psychopy/experiment/routines/__init__.py +1 -1
  385. psychopy/experiment/routines/_base.py +23 -24
  386. psychopy/experiment/routines/audioValidator/__init__.py +343 -0
  387. psychopy/experiment/routines/audioValidator/classic/audio_validator.png +0 -0
  388. psychopy/experiment/routines/audioValidator/classic/audio_validator@2x.png +0 -0
  389. psychopy/experiment/routines/audioValidator/dark/audio_validator.png +0 -0
  390. psychopy/experiment/routines/audioValidator/dark/audio_validator@2x.png +0 -0
  391. psychopy/experiment/routines/audioValidator/light/audio_validator.png +0 -0
  392. psychopy/experiment/routines/audioValidator/light/audio_validator@2x.png +0 -0
  393. psychopy/experiment/routines/eyetracker_calibrate/__init__.py +76 -17
  394. psychopy/experiment/routines/eyetracker_validate/__init__.py +1 -1
  395. psychopy/experiment/routines/unknown/__init__.py +2 -0
  396. psychopy/experiment/routines/{photodiodeValidator → visualValidator}/__init__.py +89 -120
  397. psychopy/experiment/routines/visualValidator/classic/visual_validator.png +0 -0
  398. psychopy/experiment/routines/visualValidator/classic/visual_validator@2x.png +0 -0
  399. psychopy/experiment/routines/visualValidator/dark/visual_validator.png +0 -0
  400. psychopy/experiment/routines/visualValidator/dark/visual_validator@2x.png +0 -0
  401. psychopy/experiment/routines/visualValidator/light/visual_validator.png +0 -0
  402. psychopy/experiment/routines/visualValidator/light/visual_validator@2x.png +0 -0
  403. psychopy/experiment/utils.py +1 -1
  404. psychopy/gui/__init__.py +1 -1
  405. psychopy/gui/qtgui.py +15 -6
  406. psychopy/gui/wxgui.py +1 -1
  407. psychopy/hardware/__init__.py +0 -1
  408. psychopy/hardware/base.py +147 -16
  409. psychopy/hardware/bbtk/__init__.py +10 -16
  410. psychopy/hardware/brainproducts.py +7 -13
  411. psychopy/hardware/button.py +21 -2
  412. psychopy/hardware/buttonbox/__init__.py +1 -1
  413. psychopy/hardware/camera/__init__.py +16 -3
  414. psychopy/hardware/cedrus.py +5 -16
  415. psychopy/hardware/crs/__init__.py +1 -1
  416. psychopy/hardware/crs/bits.py +36 -33
  417. psychopy/hardware/crs/colorcal.py +8 -11
  418. psychopy/hardware/crs/optical.py +7 -10
  419. psychopy/hardware/crs/shaders.py +18 -5
  420. psychopy/hardware/emotiv.py +1 -1
  421. psychopy/hardware/emulator.py +11 -5
  422. psychopy/hardware/exceptions.py +86 -0
  423. psychopy/hardware/forp.py +18 -23
  424. psychopy/hardware/gammasci.py +8 -3
  425. psychopy/hardware/iolab.py +8 -19
  426. psychopy/hardware/joystick/__init__.py +865 -266
  427. psychopy/hardware/joystick/_base.py +251 -0
  428. psychopy/hardware/joystick/backend_glfw.py +306 -0
  429. psychopy/hardware/joystick/backend_pyglet.py +309 -0
  430. psychopy/hardware/joystick/mappings.py +287 -0
  431. psychopy/hardware/keyboard.py +4 -2
  432. psychopy/hardware/labhackers.py +1 -1
  433. psychopy/hardware/labjacks.py +9 -13
  434. psychopy/hardware/{photodiode.py → lightsensor.py} +146 -203
  435. psychopy/hardware/listener.py +9 -8
  436. psychopy/hardware/manager.py +24 -35
  437. psychopy/hardware/microphone.py +534 -154
  438. psychopy/hardware/minolta.py +14 -4
  439. psychopy/hardware/mouse/__init__.py +1 -1
  440. psychopy/hardware/photometer/__init__.py +2 -2
  441. psychopy/hardware/pr.py +14 -4
  442. psychopy/hardware/qmix.py +18 -27
  443. psychopy/hardware/serialdevice.py +43 -12
  444. psychopy/hardware/soundsensor.py +473 -0
  445. psychopy/hardware/spatial/__init__.py +231 -0
  446. psychopy/hardware/speaker.py +298 -36
  447. psychopy/hardware/triggerbox/__init__.py +1 -1
  448. psychopy/hardware/triggerbox/base.py +1 -1
  449. psychopy/hardware/triggerbox/parallel.py +1 -1
  450. psychopy/info.py +1 -1
  451. psychopy/iohub/client/__init__.py +17 -0
  452. psychopy/iohub/client/keyboard.py +5 -0
  453. psychopy/iohub/devices/eyetracker/__init__.py +10 -18
  454. psychopy/iohub/devices/eyetracker/calibration/procedure.py +15 -33
  455. psychopy/iohub/devices/eyetracker/hw/pupil_labs/neon/__init__.py +1 -0
  456. psychopy/iohub/devices/mouse/linux2.py +6 -1
  457. psychopy/iohub/devices/mouse/win32.py +5 -0
  458. psychopy/layout.py +1 -1
  459. psychopy/liaison.py +91 -39
  460. psychopy/locale_setup.py +11 -1
  461. psychopy/localization/__init__.py +1 -1
  462. psychopy/localization/_localization.py +1 -1
  463. psychopy/localization/messages.pot +2 -2
  464. psychopy/logging.py +14 -12
  465. psychopy/microphone.py +4 -3
  466. psychopy/misc.py +1 -1
  467. psychopy/monitors/MonitorCenter.py +3 -3
  468. psychopy/monitors/__init__.py +1 -1
  469. psychopy/monitors/calibData.py +1 -1
  470. psychopy/monitors/calibTools.py +3 -2
  471. psychopy/platform_specific/__init__.py +1 -1
  472. psychopy/platform_specific/darwin.py +1 -1
  473. psychopy/platform_specific/linux.py +1 -1
  474. psychopy/platform_specific/win32.py +1 -1
  475. psychopy/plugins/__init__.py +26 -17
  476. psychopy/plugins/util.py +65 -0
  477. psychopy/preferences/Darwin.spec +11 -3
  478. psychopy/preferences/FreeBSD.spec +11 -3
  479. psychopy/preferences/Linux.spec +11 -3
  480. psychopy/preferences/Windows.spec +11 -3
  481. psychopy/preferences/__init__.py +1 -1
  482. psychopy/preferences/baseNoArch.spec +11 -3
  483. psychopy/preferences/hints.py +78 -61
  484. psychopy/preferences/preferences.py +82 -13
  485. psychopy/projects/__init__.py +1 -1
  486. psychopy/projects/pavlovia.py +29 -13
  487. psychopy/scripts/psyexpCompile.py +1 -1
  488. psychopy/session.py +81 -8
  489. psychopy/sound/__init__.py +25 -10
  490. psychopy/sound/_base.py +134 -34
  491. psychopy/sound/audioclip.py +38 -15
  492. psychopy/sound/audiodevice.py +1 -1
  493. psychopy/sound/backend_ptb.py +53 -321
  494. psychopy/sound/backend_pygame.py +7 -3
  495. psychopy/sound/backend_pyo.py +53 -22
  496. psychopy/sound/backend_pysound.py +10 -27
  497. psychopy/sound/backend_sounddevice.py +33 -21
  498. psychopy/sound/exceptions.py +1 -1
  499. psychopy/sound/microphone.py +83 -5
  500. psychopy/sound/transcribe.py +3 -3
  501. psychopy/tests/data/test_basic_run.py +1 -0
  502. psychopy/tests/data/test_loaded_namespace/test_counterbalance.psyexp +142 -0
  503. psychopy/tests/data/test_loaded_namespace/test_custom_missing.psyexp +129 -0
  504. psychopy/tests/data/test_loaded_namespace/test_missing_counterbalance.psyexp +116 -0
  505. psychopy/tests/data/test_loaded_namespace/test_mix_exp.psyexp +181 -0
  506. psychopy/tests/data/test_loaded_namespace/test_mix_missing.psyexp +140 -0
  507. psychopy/tests/data/test_loaded_namespace/test_mix_name_calibration.psyexp +164 -0
  508. psychopy/tests/data/test_sounds/default_16000.wav +0 -0
  509. psychopy/tests/data/test_sounds/default_192000.wav +0 -0
  510. psychopy/tests/data/test_sounds/default_22050.wav +0 -0
  511. psychopy/tests/data/test_sounds/default_32000.wav +0 -0
  512. psychopy/tests/data/test_sounds/default_44100.wav +0 -0
  513. psychopy/tests/data/test_sounds/default_48000.wav +0 -0
  514. psychopy/tests/data/test_sounds/default_8000.wav +0 -0
  515. psychopy/tests/data/test_sounds/default_96000.wav +0 -0
  516. psychopy/tests/test_alerts/test_alerttools.py +2 -1
  517. psychopy/tests/test_app/test_command_line.py +65 -0
  518. psychopy/tests/test_data/test_TrialHandler2.py +18 -7
  519. psychopy/tests/test_demos/test_builder_demos.py +1 -1
  520. psychopy/tests/test_experiment/needs_wx/componsTemplate.txt +5238 -4188
  521. psychopy/tests/test_experiment/needs_wx/test_components.py +1 -1
  522. psychopy/tests/test_experiment/test_components/test_RoutineSettingsComponent.py +16 -0
  523. psychopy/tests/test_experiment/test_components/test_all_components.py +1 -1
  524. psychopy/tests/test_experiment/test_components/test_base_components.py +26 -17
  525. psychopy/tests/test_experiment/test_experiment.py +96 -0
  526. psychopy/tests/test_experiment/test_loops.py +12 -4
  527. psychopy/tests/test_experiment/test_params.py +17 -4
  528. psychopy/tests/test_experiment/test_routines/test_PhotodiodeValidationRoutine.py +2 -2
  529. psychopy/tests/test_hardware/test_photodiode.py +66 -0
  530. psychopy/tests/test_liaison/test_Liaison.py +4 -4
  531. psychopy/tests/test_misc/test_clock.py +2 -0
  532. psychopy/tests/test_misc/test_color.py +2 -0
  533. psychopy/tests/test_misc/test_event.py +1 -0
  534. psychopy/tests/test_plugins/test_plugin_stubs.py +125 -0
  535. psychopy/tests/test_sound/test_sound.py +111 -40
  536. psychopy/tests/test_tools/test_colorspacetools.py +24 -23
  537. psychopy/tests/test_tools/test_mathtools.py +9 -9
  538. psychopy/tests/test_tools/test_viewtools.py +101 -0
  539. psychopy/tests/test_validators/__init__.py +0 -0
  540. psychopy/tests/test_validators/test_voicekeyValidator.py +95 -0
  541. psychopy/tests/test_visual/test_all_stimuli.py +2 -2
  542. psychopy/tests/test_visual/test_basevisual.py +37 -7
  543. psychopy/tests/test_visual/test_button.py +2 -2
  544. psychopy/tests/test_visual/test_circle.py +10 -2
  545. psychopy/tests/test_visual/test_dots.py +1 -1
  546. psychopy/tests/test_visual/test_form.py +13 -13
  547. psychopy/tests/test_visual/test_gamma.py +3 -3
  548. psychopy/tests/test_visual/test_image.py +2 -2
  549. psychopy/tests/test_visual/test_progress.py +2 -2
  550. psychopy/tests/test_visual/test_roi.py +8 -2
  551. psychopy/tests/test_visual/test_shape.py +2 -2
  552. psychopy/tests/test_visual/test_slider.py +2 -2
  553. psychopy/tests/test_visual/test_target.py +2 -2
  554. psychopy/tests/test_visual/test_textbox.py +6 -8
  555. psychopy/tests/test_visual/test_winScalePos.py +6 -5
  556. psychopy/tests/test_visual/test_window.py +17 -0
  557. psychopy/tests/utils.py +51 -1
  558. psychopy/tools/__init__.py +1 -1
  559. psychopy/tools/arraytools.py +2 -2
  560. psychopy/tools/attributetools.py +52 -1
  561. psychopy/tools/audiotools.py +4 -1
  562. psychopy/tools/colorspacetools.py +6 -4
  563. psychopy/tools/coordinatetools.py +1 -1
  564. psychopy/tools/fileerrortools.py +21 -9
  565. psychopy/tools/filetools.py +2 -2
  566. psychopy/tools/fontmanager.py +47 -28
  567. psychopy/tools/gltools.py +2964 -558
  568. psychopy/tools/imagetools.py +1 -1
  569. psychopy/tools/mathtools.py +997 -127
  570. psychopy/tools/monitorunittools.py +7 -1
  571. psychopy/tools/movietools.py +1 -2
  572. psychopy/tools/pkgtools.py +157 -127
  573. psychopy/tools/plottools.py +1 -1
  574. psychopy/tools/rifttools.py +1 -1
  575. psychopy/tools/stereotools.py +1 -1
  576. psychopy/tools/stimulustools.py +172 -2
  577. psychopy/tools/stringtools.py +22 -2
  578. psychopy/tools/systemtools.py +1 -1
  579. psychopy/tools/typetools.py +1 -1
  580. psychopy/tools/unittools.py +1 -1
  581. psychopy/tools/versionchooser.py +3 -1
  582. psychopy/tools/viewtools.py +54 -70
  583. psychopy/tools/wizard.py +2 -2
  584. psychopy/validation/__init__.py +6 -0
  585. psychopy/validation/audio.py +74 -0
  586. psychopy/validation/visual.py +115 -0
  587. psychopy/visual/__init__.py +1 -4
  588. psychopy/visual/aperture.py +9 -6
  589. psychopy/visual/backends/__init__.py +1 -1
  590. psychopy/visual/backends/_base.py +1 -1
  591. psychopy/visual/backends/gamma.py +1 -1
  592. psychopy/visual/backends/glfwbackend.py +8 -12
  593. psychopy/visual/backends/pygamebackend.py +1 -1
  594. psychopy/visual/backends/pygletbackend.py +32 -11
  595. psychopy/visual/basevisual.py +93 -13
  596. psychopy/visual/brush.py +1 -1
  597. psychopy/visual/bufferimage.py +90 -10
  598. psychopy/visual/button.py +1 -1
  599. psychopy/visual/circle.py +12 -20
  600. psychopy/visual/custommouse.py +1 -1
  601. psychopy/visual/dot.py +80 -14
  602. psychopy/visual/elementarray.py +84 -10
  603. psychopy/visual/filters.py +1 -1
  604. psychopy/visual/form.py +43 -28
  605. psychopy/visual/grating.py +105 -25
  606. psychopy/visual/helpers.py +1 -1
  607. psychopy/visual/image.py +98 -20
  608. psychopy/visual/line.py +15 -25
  609. psychopy/visual/movie.py +1 -1
  610. psychopy/visual/movie2.py +4 -3
  611. psychopy/visual/movie3.py +4 -3
  612. psychopy/visual/movies/__init__.py +1 -1
  613. psychopy/visual/movies/frame.py +1 -1
  614. psychopy/visual/movies/metadata.py +1 -1
  615. psychopy/visual/movies/players/__init__.py +1 -1
  616. psychopy/visual/movies/players/_base.py +1 -1
  617. psychopy/visual/movies/players/ffpyplayer_player.py +2 -3
  618. psychopy/visual/nnlvs.py +9 -6
  619. psychopy/visual/noise.py +4 -16
  620. psychopy/visual/patch.py +4 -3
  621. psychopy/visual/pie.py +3 -14
  622. psychopy/visual/polygon.py +21 -28
  623. psychopy/visual/radial.py +4 -18
  624. psychopy/visual/ratingscale.py +4 -3
  625. psychopy/visual/rect.py +16 -25
  626. psychopy/visual/rift.py +8 -2
  627. psychopy/visual/secondorder.py +4 -16
  628. psychopy/visual/shaders.py +620 -286
  629. psychopy/visual/shape.py +281 -90
  630. psychopy/visual/simpleimage.py +1 -1
  631. psychopy/visual/slider.py +78 -25
  632. psychopy/visual/stim3d.py +5 -608
  633. psychopy/visual/text.py +13 -3
  634. psychopy/visual/textbox2/textbox2.py +188 -56
  635. psychopy/visual/vlcmoviestim.py +1 -1
  636. psychopy/visual/window.py +373 -200
  637. psychopy/web.py +1 -1
  638. {psychopy-2024.2.4.dist-info → psychopy-2025.1.0.dist-info}/METADATA +9 -9
  639. {psychopy-2024.2.4.dist-info → psychopy-2025.1.0.dist-info}/RECORD +653 -660
  640. psychopy/.DS_Store +0 -0
  641. psychopy/__init__.py.orig +0 -65
  642. psychopy/app/.DS_Store +0 -0
  643. psychopy/app/Resources/.DS_Store +0 -0
  644. psychopy/app/Resources/classic/filecsv16.png +0 -0
  645. psychopy/app/Resources/classic/fileimage16.png +0 -0
  646. psychopy/app/Resources/classic/fileunknown16.png +0 -0
  647. psychopy/app/Resources/dark/filecsv16.png +0 -0
  648. psychopy/app/Resources/dark/filecsv16@2x.png +0 -0
  649. psychopy/app/Resources/dark/fileimage16.png +0 -0
  650. psychopy/app/Resources/dark/fileimage16@2x.png +0 -0
  651. psychopy/app/Resources/dark/fileunknown16.png +0 -0
  652. psychopy/app/Resources/dark/fileunknown16@2x.png +0 -0
  653. psychopy/app/Resources/fonts/OpenSans-Bold.ttf +0 -0
  654. psychopy/app/Resources/fonts/OpenSans-BoldItalic.ttf +0 -0
  655. psychopy/app/Resources/fonts/OpenSans-ExtraBold.ttf +0 -0
  656. psychopy/app/Resources/fonts/OpenSans-ExtraBoldItalic.ttf +0 -0
  657. psychopy/app/Resources/fonts/OpenSans-Italic.ttf +0 -0
  658. psychopy/app/Resources/fonts/OpenSans-Light.ttf +0 -0
  659. psychopy/app/Resources/fonts/OpenSans-LightItalic.ttf +0 -0
  660. psychopy/app/Resources/fonts/OpenSans-Regular.ttf +0 -0
  661. psychopy/app/Resources/fonts/OpenSans-SemiBold.ttf +0 -0
  662. psychopy/app/Resources/fonts/OpenSans-SemiBoldItalic.ttf +0 -0
  663. psychopy/app/Resources/light/filecsv16.png +0 -0
  664. psychopy/app/Resources/light/filecsv16@2x.png +0 -0
  665. psychopy/app/Resources/light/fileimage16.png +0 -0
  666. psychopy/app/Resources/light/fileimage16@2x.png +0 -0
  667. psychopy/app/Resources/light/fileunknown16.png +0 -0
  668. psychopy/app/Resources/light/fileunknown16@2x.png +0 -0
  669. psychopy/app/Resources/psychopySplash.png +0 -0
  670. psychopy/app/Resources/psychopySplash@2x.png +0 -0
  671. psychopy/app/builder/builder.py.orig +0 -3932
  672. psychopy/app/builder/dialogs/__init__.py.orig +0 -1679
  673. psychopy/app/builder/dialogs/paramCtrls.py.orig +0 -713
  674. psychopy/app/colorpicker/__init__.py.orig +0 -411
  675. psychopy/app/locale/zh_CN/LC_MESSAGE/zh_CN.mo +0 -0
  676. psychopy/app/locale/zh_CN/LC_MESSAGE/zh_CN.po +0 -6127
  677. psychopy/app/locale/zh_CN/LC_MESSAGE/zh_CN_allFlagged.mo +0 -0
  678. psychopy/app/locale/zh_CN/LC_MESSAGE/zh_CN_allFlagged.po +0 -7366
  679. psychopy/core.py.orig +0 -169
  680. psychopy/demos/builder/.DS_Store +0 -0
  681. psychopy/demos/builder/Design Templates/randomisedBlocks/html/index.html +0 -23
  682. psychopy/demos/builder/Design Templates/randomisedBlocks/html/randomisedBlocks-legacy-browsers.js +0 -423
  683. psychopy/demos/builder/Design Templates/randomisedBlocks/html/randomisedBlocks.js +0 -427
  684. psychopy/demos/builder/Design Templates/randomisedBlocks/html/resources/chooseBlock.xlsx +0 -0
  685. psychopy/demos/builder/Design Templates/randomisedBlocks/html/resources/facesBlock.xlsx +0 -0
  686. psychopy/demos/builder/Design Templates/randomisedBlocks/html/resources/housesBlock.xlsx +0 -0
  687. psychopy/demos/builder/Design Templates/randomisedBlocks/html/resources/stims/face01.jpg +0 -0
  688. psychopy/demos/builder/Design Templates/randomisedBlocks/html/resources/stims/face02.jpg +0 -0
  689. psychopy/demos/builder/Design Templates/randomisedBlocks/html/resources/stims/face03.jpg +0 -0
  690. psychopy/demos/builder/Design Templates/randomisedBlocks/html/resources/stims/house01.jpg +0 -0
  691. psychopy/demos/builder/Design Templates/randomisedBlocks/html/resources/stims/house02.jpg +0 -0
  692. psychopy/demos/builder/Design Templates/randomisedBlocks/html/resources/stims/house03.jpg +0 -0
  693. psychopy/demos/builder/Design Templates/randomisedBlocks/randomisedBlocks.py +0 -330
  694. psychopy/demos/builder/Design Templates/randomisedBlocks/randomisedBlocks_lastrun.py +0 -330
  695. psychopy/demos/builder/Experiments/.DS_Store +0 -0
  696. psychopy/demos/builder/Experiments/dragAndDrop/archived_conditions.xlsx +0 -0
  697. psychopy/demos/builder/Experiments/dragAndDrop/draw grid stim.py +0 -61
  698. psychopy/demos/builder/Experiments/dragAndDrop/shapeMaker.psyexp +0 -91
  699. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_1.png +0 -0
  700. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_10.png +0 -0
  701. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_2.png +0 -0
  702. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_3.png +0 -0
  703. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_4.png +0 -0
  704. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_5.png +0 -0
  705. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_6.png +0 -0
  706. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_7.png +0 -0
  707. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_8.png +0 -0
  708. psychopy/demos/builder/Experiments/dragAndDrop/stimuli/grid_image_9.png +0 -0
  709. psychopy/demos/builder/Experiments/dragAndDrop/updated_conditions.xlsx +0 -0
  710. psychopy/demos/builder/Feature Demos/eyetracking/eyetracking.xsd +0 -120
  711. psychopy/demos/builder/Tools/.DS_Store +0 -0
  712. psychopy/demos/builder/Tools/gammaCalibration/.DS_Store +0 -0
  713. psychopy/demos/builder/Tools/gammaCalibration/data/.DS_Store +0 -0
  714. psychopy/demos/builder/Tools/gammaCalibration/data/_gamma_correction_visual_2022-05-18_14h18.29.439.csv +0 -38
  715. psychopy/demos/builder/Tools/gammaCalibration/data/_gamma_correction_visual_2022-05-18_14h18.29.439.log +0 -3418
  716. psychopy/demos/builder/Tools/gammaCalibration/data/_gamma_correction_visual_2022-05-18_14h18.29.439.psydat +0 -0
  717. psychopy/demos/builder/Tools/gammaCalibration/data/x1_gamma_correction_visual_2022-05-17_13h59.42.928.csv +0 -2
  718. psychopy/demos/builder/Tools/gammaCalibration/data/x1_gamma_correction_visual_2022-05-17_13h59.42.928.log +0 -15
  719. psychopy/demos/builder/Tools/gammaCalibration/data/x1_gamma_correction_visual_2022-05-17_13h59.42.928.psydat +0 -0
  720. psychopy/demos/builder/Tools/gammaCalibration/gamma_correction_visual.psyexp +0 -323
  721. psychopy/demos/builder/Tools/gammaCalibration/gamma_correction_visual.py +0 -562
  722. psychopy/demos/builder/Tools/gammaCalibration/gamma_correction_visual_lastrun.py +0 -562
  723. psychopy/demos/builder/Tools/gammaCalibration/questStairs.xlsx +0 -0
  724. psychopy/demos/builder/Tools/gammaCalibration/resources/low_contrast.png +0 -0
  725. psychopy/demos/builder/Tools/gammaCalibration/resources/make_2nd_order_tex.py +0 -59
  726. psychopy/demos/builder/Tools/gammaCalibration/resources/second_order_tex.png +0 -0
  727. psychopy/demos/coder/.DS_Store +0 -0
  728. psychopy/demos/coder/experiment control/info_gamma.pickle +0 -0
  729. psychopy/demos/coder/iohub/.iohpid +0 -1
  730. psychopy/demos/coder/iohub/eyetracking/.iohpid +0 -1
  731. psychopy/demos/coder/iohub/wintab/.DS_Store +0 -0
  732. psychopy/demos/coder/stimuli/.DS_Store +0 -0
  733. psychopy/demos/coder/stimuli/radialGratingContracting.py +0 -29
  734. psychopy/experiment/_experiment.py.orig +0 -1032
  735. psychopy/experiment/components/.DS_Store +0 -0
  736. psychopy/experiment/components/_base.py.orig +0 -823
  737. psychopy/experiment/components/form/.DS_Store +0 -0
  738. psychopy/experiment/components/microphone/__init__.py.orig +0 -490
  739. psychopy/experiment/components/settings/__init__.py.orig +0 -1337
  740. psychopy/experiment/components/textbox/__init__.py.orig +0 -310
  741. psychopy/experiment/components/webcam/.DS_Store +0 -0
  742. psychopy/experiment/components/webcam/light/.DS_Store +0 -0
  743. psychopy/experiment/loops.py.orig +0 -829
  744. psychopy/experiment/params.py.orig +0 -408
  745. psychopy/experiment/routine.py.orig +0 -503
  746. psychopy/experiment/routines/photodiodeValidator/classic/photodiode_validator.png +0 -0
  747. psychopy/experiment/routines/photodiodeValidator/classic/photodiode_validator@2x.png +0 -0
  748. psychopy/experiment/routines/photodiodeValidator/dark/photodiode_validator.png +0 -0
  749. psychopy/experiment/routines/photodiodeValidator/dark/photodiode_validator@2x.png +0 -0
  750. psychopy/experiment/routines/photodiodeValidator/light/photodiode_validator.png +0 -0
  751. psychopy/experiment/routines/photodiodeValidator/light/photodiode_validator@2x.png +0 -0
  752. psychopy/hardware/.DS_Store +0 -0
  753. psychopy/hardware/brainproducts.py.orig +0 -680
  754. psychopy/hardware/iolab.py.orig +0 -238
  755. psychopy/hardware/serialport.py +0 -51
  756. psychopy/iohub/datastore/__init__.py.orig +0 -443
  757. psychopy/iohub/datastore/util.py.orig +0 -692
  758. psychopy/iohub/devices/mouse/darwin.py.orig +0 -427
  759. psychopy/iohub/devices/mouse/linux2.py.orig +0 -198
  760. psychopy/preferences/.DS_Store +0 -0
  761. psychopy/projects/pavlovia.py.orig +0 -1295
  762. psychopy/tests/.DS_Store +0 -0
  763. psychopy/tests/data/.DS_Store +0 -0
  764. psychopy/tests/data/TestCircle_fill_local.png +0 -0
  765. psychopy/tests/data/__test.png +0 -0
  766. psychopy/tests/data/aperture1_normHexbackground_local.png +0 -0
  767. psychopy/tests/data/aperture1_norm_local.png +0 -0
  768. psychopy/tests/data/aperture2_normHexbackground_local.png +0 -0
  769. psychopy/tests/data/beatandrcos_height_local.png +0 -0
  770. psychopy/tests/data/beatandrcos_normAddBlend_local.png +0 -0
  771. psychopy/tests/data/beatandrcos_normHexbackground_local.png +0 -0
  772. psychopy/tests/data/beatandrcos_norm_local.png +0 -0
  773. psychopy/tests/data/beatandrcos_stencil_local.png +0 -0
  774. psychopy/tests/data/blend_add_height_local.png +0 -0
  775. psychopy/tests/data/blend_add_normAddBlend_local.png +0 -0
  776. psychopy/tests/data/blend_add_normHexbackground_local.png +0 -0
  777. psychopy/tests/data/blend_add_normNoShade_local.png +0 -0
  778. psychopy/tests/data/blend_add_norm_local.png +0 -0
  779. psychopy/tests/data/blend_add_stencil_local.png +0 -0
  780. psychopy/tests/data/bufferimg_gabor_height_local.png +0 -0
  781. psychopy/tests/data/bufferimg_gabor_normAddBlend_local.png +0 -0
  782. psychopy/tests/data/bufferimg_gabor_normHexbackground_local.png +0 -0
  783. psychopy/tests/data/bufferimg_gabor_normNoShade_local.png +0 -0
  784. psychopy/tests/data/bufferimg_gabor_norm_local.png +0 -0
  785. psychopy/tests/data/bufferimg_gabor_stencil_local.png +0 -0
  786. psychopy/tests/data/circleHex_height_local.png +0 -0
  787. psychopy/tests/data/circleHex_normAddBlend_local.png +0 -0
  788. psychopy/tests/data/circleHex_normHexbackground_local.png +0 -0
  789. psychopy/tests/data/circleHex_normNoShade_local.png +0 -0
  790. psychopy/tests/data/circleHex_norm_local.png +0 -0
  791. psychopy/tests/data/circleHex_stencil_local.png +0 -0
  792. psychopy/tests/data/color_comparison_local.png +0 -0
  793. psychopy/tests/data/corrFullRandom_local.csv +0 -16
  794. psychopy/tests/data/corrFullRandom_local.tsv +0 -6
  795. psychopy/tests/data/correctScript/.DS_Store +0 -0
  796. psychopy/tests/data/dots_height_local.png +0 -0
  797. psychopy/tests/data/dots_normAddBlend_local.png +0 -0
  798. psychopy/tests/data/dots_normHexbackground_local.png +0 -0
  799. psychopy/tests/data/dots_normNoShade_local.png +0 -0
  800. psychopy/tests/data/dots_norm_local.png +0 -0
  801. psychopy/tests/data/dots_stencil_local.png +0 -0
  802. psychopy/tests/data/elarray1_height_local.png +0 -0
  803. psychopy/tests/data/elarray1_normAddBlend_local.png +0 -0
  804. psychopy/tests/data/elarray1_normHexbackground_local.png +0 -0
  805. psychopy/tests/data/elarray1_norm_local.png +0 -0
  806. psychopy/tests/data/elarray1_stencil_local.png +0 -0
  807. psychopy/tests/data/envelopeandrcos_height_local.png +0 -0
  808. psychopy/tests/data/envelopeandrcos_normAddBlend_local.png +0 -0
  809. psychopy/tests/data/envelopeandrcos_normHexbackground_local.png +0 -0
  810. psychopy/tests/data/envelopeandrcos_norm_local.png +0 -0
  811. psychopy/tests/data/envelopeandrcos_stencil_local.png +0 -0
  812. psychopy/tests/data/envelopepowerandrcos_height_local.png +0 -0
  813. psychopy/tests/data/envelopepowerandrcos_normAddBlend_local.png +0 -0
  814. psychopy/tests/data/envelopepowerandrcos_normHexbackground_local.png +0 -0
  815. psychopy/tests/data/envelopepowerandrcos_norm_local.png +0 -0
  816. psychopy/tests/data/envelopepowerandrcos_stencil_local.png +0 -0
  817. psychopy/tests/data/gabor1_height_local.png +0 -0
  818. psychopy/tests/data/gabor1_normAddBlend_local.png +0 -0
  819. psychopy/tests/data/gabor1_normHexbackground_local.png +0 -0
  820. psychopy/tests/data/gabor1_normNoShade_local.png +0 -0
  821. psychopy/tests/data/gabor1_norm_local.png +0 -0
  822. psychopy/tests/data/gabor1_stencil_local.png +0 -0
  823. psychopy/tests/data/greyscale_normHexbackground_local.png +0 -0
  824. psychopy/tests/data/imageAndGauss_height_local.png +0 -0
  825. psychopy/tests/data/imageAndGauss_normAddBlend_local.png +0 -0
  826. psychopy/tests/data/imageAndGauss_normHexbackground_local.png +0 -0
  827. psychopy/tests/data/imageAndGauss_normNoShade_local.png +0 -0
  828. psychopy/tests/data/imageAndGauss_norm_local.png +0 -0
  829. psychopy/tests/data/imageAndGauss_stencil_local.png +0 -0
  830. psychopy/tests/data/movFrame1_stencil_local.png +0 -0
  831. psychopy/tests/data/noiseAndRcos_height_local.png +0 -0
  832. psychopy/tests/data/noiseAndRcos_normAddBlend_local.png +0 -0
  833. psychopy/tests/data/noiseAndRcos_normHexbackground_local.png +0 -0
  834. psychopy/tests/data/noiseAndRcos_normNoShade_local.png +0 -0
  835. psychopy/tests/data/noiseAndRcos_norm_local.png +0 -0
  836. psychopy/tests/data/noiseAndRcos_stencil_local.png +0 -0
  837. psychopy/tests/data/noiseFiltersAndRcos_height_local.png +0 -0
  838. psychopy/tests/data/noiseFiltersAndRcos_normAddBlend_local.png +0 -0
  839. psychopy/tests/data/noiseFiltersAndRcos_normHexbackground_local.png +0 -0
  840. psychopy/tests/data/noiseFiltersAndRcos_normNoShade_local.png +0 -0
  841. psychopy/tests/data/noiseFiltersAndRcos_norm_local.png +0 -0
  842. psychopy/tests/data/noiseFiltersAndRcos_stencil_local.png +0 -0
  843. psychopy/tests/data/numpyImage_height_local.png +0 -0
  844. psychopy/tests/data/numpyImage_normAddBlend_local.png +0 -0
  845. psychopy/tests/data/numpyImage_normHexbackground_local.png +0 -0
  846. psychopy/tests/data/numpyImage_normNoShade_local.png +0 -0
  847. psychopy/tests/data/numpyImage_norm_local.png +0 -0
  848. psychopy/tests/data/numpyImage_stencil_local.png +0 -0
  849. psychopy/tests/data/shape2_1_normAddBlend_local.png +0 -0
  850. psychopy/tests/data/shape2_1_normHexbackground_local.png +0 -0
  851. psychopy/tests/data/shape2_1_normNoShade_local.png +0 -0
  852. psychopy/tests/data/shape2_1_norm_local.png +0 -0
  853. psychopy/tests/data/shape2_1_stencil_local.png +0 -0
  854. psychopy/tests/data/testLoopsBlocks.psyexp_local.py +0 -328
  855. psychopy/tests/data/text1_height_local.png +0 -0
  856. psychopy/tests/data/text1_normAddBlend_local.png +0 -0
  857. psychopy/tests/data/text1_normHexbackground_local.png +0 -0
  858. psychopy/tests/data/text1_norm_local.png +0 -0
  859. psychopy/tests/data/text1_stencil_local.png +0 -0
  860. psychopy/tests/data/text2_height.png +0 -0
  861. psychopy/tests/data/text2_normAddBlend.png +0 -0
  862. psychopy/tests/data/text2_normHexbackground.png +0 -0
  863. psychopy/tests/data/text2_stencil.png +0 -0
  864. psychopy/tests/data/wedge1_height_local.png +0 -0
  865. psychopy/tests/data/wedge1_normAddBlend_local.png +0 -0
  866. psychopy/tests/data/wedge1_normHexbackground_local.png +0 -0
  867. psychopy/tests/data/wedge1_normNoShade_local.png +0 -0
  868. psychopy/tests/data/wedge1_norm_local.png +0 -0
  869. psychopy/tests/data/wedge1_stencil_local.png +0 -0
  870. psychopy/tests/test_app/.DS_Store +0 -0
  871. psychopy/tests/test_app/test_builder/.DS_Store +0 -0
  872. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1206.csv +0 -9
  873. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1206.log +0 -177
  874. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1206.psydat +0 -0
  875. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1206.xlsx +0 -0
  876. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1324.csv +0 -9
  877. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1324.log +0 -168
  878. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1324.psydat +0 -0
  879. psychopy/tests/test_app/test_builder/data/_2021_ 5_03_1324.xlsx +0 -0
  880. psychopy/tests/test_data/.DS_Store +0 -0
  881. psychopy/tests/test_hardware/test_CRS_BitsSharp.py +0 -67
  882. psychopy/tests/test_hardware/test_CRS_BitsSharp.py.orig +0 -68
  883. psychopy/tests/test_hardware/test_CRS_bitsShaders.py +0 -110
  884. psychopy/tests/test_visual/test_image.py.orig +0 -219
  885. psychopy/visual/basevisual.py.orig +0 -1723
  886. psychopy/visual/form.py.orig +0 -1181
  887. psychopy/visual/text.py.orig +0 -752
  888. psychopy/visual/textbox2/textbox2.py.orig +0 -1315
  889. psychopy/visual/windowwarp.py.orig +0 -463
  890. /psychopy/{app/cortex.log → alerts/alertsCatalogue/3600.yaml} +0 -0
  891. /psychopy/{app/Resources → assets}/fonts/Arvo-Bold.ttf +0 -0
  892. /psychopy/{app/Resources → assets}/fonts/Arvo-BoldItalic.ttf +0 -0
  893. /psychopy/{app/Resources → assets}/fonts/Arvo-Italic.ttf +0 -0
  894. /psychopy/{app/Resources → assets}/fonts/Arvo-Regular.ttf +0 -0
  895. /psychopy/{app/Resources → assets}/fonts/DejaVuSerif.ttf +0 -0
  896. /psychopy/{app/Resources → assets}/fonts/IndieFlower-Regular.ttf +0 -0
  897. /psychopy/{app/Resources → assets}/fonts/JetBrainsMono-Italic-VariableFont_wght.ttf +0 -0
  898. /psychopy/{app/Resources → assets}/fonts/JetBrainsMono-VariableFont_wght.ttf +0 -0
  899. /psychopy/demos/builder/Experiments/{GoNoGo → goNoGo}/readme.md +0 -0
  900. /psychopy/{demos/builder/Tools/gammaCalibration/readme.md → tests/test_plugins/__init__.py} +0 -0
  901. {psychopy-2024.2.4.dist-info → psychopy-2025.1.0.dist-info}/WHEEL +0 -0
  902. {psychopy-2024.2.4.dist-info → psychopy-2025.1.0.dist-info}/entry_points.txt +0 -0
  903. {psychopy-2024.2.4.dist-info → psychopy-2025.1.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,9 +0,0 @@
1
- blocks.thisRepN,blocks.thisTrialN,blocks.thisN,blocks.thisIndex,trials.thisRepN,trials.thisTrialN,trials.thisN,trials.thisIndex,stimulusLoop.thisRepN,stimulusLoop.thisTrialN,stimulusLoop.thisN,stimulusLoop.thisIndex,blockIntroText.started,blockIntroText.stopped,stimInfo.started,stimInfo.stopped,session,participant,date,expName,psychopyVersion,frameRate,
2
- 0,0,0,0,0,0,0,0,,,,,65.29191892199742,None,66.25894002700079,66.17298291599946,001,,2021_ 5_03_1206,testLoopsBlocks,2021.1.4,59.205658053815995,
3
- 0,0,0,0,1,0,1,0,,,,,,,66.82375188799779,66.74240606799867,001,,2021_ 5_03_1206,testLoopsBlocks,2021.1.4,59.205658053815995,
4
- 1,0,1,0,0,0,0,0,,,,,66.94632864699815,None,67.90619809599957,67.82343141999809,001,,2021_ 5_03_1206,testLoopsBlocks,2021.1.4,59.205658053815995,
5
- 1,0,1,0,1,0,1,0,,,,,,,68.4905092609988,68.40617813900099,001,,2021_ 5_03_1206,testLoopsBlocks,2021.1.4,59.205658053815995,
6
- 2,0,2,0,0,0,0,0,,,,,68.64550475899887,None,69.62322328599839,69.53983068099842,001,,2021_ 5_03_1206,testLoopsBlocks,2021.1.4,59.205658053815995,
7
- 2,0,2,0,1,0,1,0,,,,,,,70.19054533899907,70.10580221599957,001,,2021_ 5_03_1206,testLoopsBlocks,2021.1.4,59.205658053815995,
8
- 3,0,3,0,0,0,0,0,,,,,70.35472819899951,None,71.30609307600025,71.22726159800004,001,,2021_ 5_03_1206,testLoopsBlocks,2021.1.4,59.205658053815995,
9
- 3,0,3,0,1,0,1,0,,,,,,,71.8568327819994,71.77335973499794,001,,2021_ 5_03_1206,testLoopsBlocks,2021.1.4,59.205658053815995,
@@ -1,177 +0,0 @@
1
- 63.8761 EXP Created window1 = Window(allowGUI=True, allowStencil=False, autoLog=True, backendConf=UNKNOWN, bitsMode=UNKNOWN, blendMode='avg', bpc=(8, 8, 8), color=array([0, 0, 0]), colorSpace='rgb', depthBits=8, fullscr=<method-wrapper '__getattribute__' of attributeSetter object at 0x7f9452dd3b00>, gamma=None, gammaErrorPolicy='raise', lms=UNKNOWN, monitor=<psychopy.monitors.calibTools.Monitor object at 0x7f9410d9d710>, multiSample=False, name='window1', numSamples=2, pos=[696.0, 410.0], screen=0, size=array([1600, 1200]), stencilBits=0, stereo=False, units='height', useFBO=True, useRetina=True, viewOri=0.0, viewPos=None, viewScale=None, waitBlanking=True, winType='pyglet')
2
- 63.8763 EXP window1: mouseVisible = True
3
- 63.8764 EXP window1: recordFrameIntervals = False
4
- 64.0419 EXP window1: recordFrameIntervals = True
5
- 64.2134 WARNING t of last frame was 21.47ms (=1/46)
6
- 64.5259 EXP window1: recordFrameIntervals = False
7
- 65.2659 EXP Created blockIntroText = TextStim(__class__=<class 'psychopy.visual.text.TextStim'>, alignHoriz=method-wrapper(...), alignText='center', alignVert=method-wrapper(...), anchorHoriz='center', anchorVert='center', antialias=True, autoLog=True, bold=False, color=array([1, 1, 1]), colorSpace='rgb', contrast=1.0, depth=0.0, flipHoriz=False, flipVert=False, font='Arial', fontFiles=[], height=0.1, italic=False, languageStyle='LTR', name='blockIntroText', opacity=1, ori=0, pos=array([0., 0.]), rgb=UNKNOWN, text="You're about to start a new block", units='height', win=Window(...), wrapWidth=1)
8
- 65.2667 EXP Created stimInfo = TextStim(__class__=<class 'psychopy.visual.text.TextStim'>, alignHoriz=method-wrapper(...), alignText='center', alignVert=method-wrapper(...), anchorHoriz='center', anchorVert='center', antialias=True, autoLog=True, bold=False, color=array([1, 1, 1]), colorSpace='rgb', contrast=1.0, depth=0.0, flipHoriz=False, flipVert=False, font='Arial', fontFiles=[], height=0.1, italic=False, languageStyle='LTR', name='stimInfo', opacity=1, ori=0, pos=array([0., 0.]), rgb=UNKNOWN, text='', units='height', win=Window(...), wrapWidth=1)
9
- 65.2671 EXP Created sequence: random, trialTypes=1, nReps=4, seed=None
10
- 65.2673 EXP New trial (rep=0, index=0): None
11
- 65.2919 EXP blockIntroText: autoDraw = True
12
- 65.7748 EXP Created sequence: random, trialTypes=1, nReps=2, seed=None
13
- 65.7750 EXP New trial (rep=0, index=0): None
14
- 65.7753 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
15
- 65.7755 EXP New trial (rep=0, index=0): None
16
- 65.7892 EXP blockIntroText: autoDraw = False
17
- 65.7892 EXP stimInfo: text = 'stim 0'
18
- 65.8731 EXP stimInfo: autoDraw = True
19
- 65.9606 EXP New trial (rep=1, index=0): None
20
- 65.9730 EXP stimInfo: autoDraw = False
21
- 65.9730 EXP stimInfo: autoDraw = False
22
- 65.9730 EXP stimInfo: text = 'stim 1'
23
- 66.0589 EXP stimInfo: autoDraw = True
24
- 66.1598 EXP New trial (rep=2, index=0): None
25
- 66.1730 EXP stimInfo: autoDraw = False
26
- 66.1730 EXP stimInfo: autoDraw = False
27
- 66.1730 EXP stimInfo: text = 'stim 2'
28
- 66.2589 EXP stimInfo: autoDraw = True
29
- 66.3599 EXP New trial (rep=1, index=0): None
30
- 66.3603 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
31
- 66.3606 EXP New trial (rep=0, index=0): None
32
- 66.3730 EXP stimInfo: autoDraw = False
33
- 66.3730 EXP stimInfo: autoDraw = False
34
- 66.3730 EXP stimInfo: text = 'stim 0'
35
- 66.4568 EXP stimInfo: autoDraw = True
36
- 66.5408 EXP New trial (rep=1, index=0): None
37
- 66.5591 EXP stimInfo: autoDraw = False
38
- 66.5591 EXP stimInfo: autoDraw = False
39
- 66.5591 EXP stimInfo: text = 'stim 1'
40
- 66.6396 EXP stimInfo: autoDraw = True
41
- 66.7277 EXP New trial (rep=2, index=0): None
42
- 66.7424 EXP stimInfo: autoDraw = False
43
- 66.7424 EXP stimInfo: autoDraw = False
44
- 66.7424 EXP stimInfo: text = 'stim 2'
45
- 66.8238 EXP stimInfo: autoDraw = True
46
- 66.9428 EXP New trial (rep=1, index=0): None
47
- 66.9463 EXP stimInfo: autoDraw = False
48
- 66.9463 EXP stimInfo: autoDraw = False
49
- 66.9463 EXP blockIntroText: autoDraw = True
50
- 67.4407 EXP Created sequence: random, trialTypes=1, nReps=2, seed=None
51
- 67.4409 EXP New trial (rep=0, index=0): None
52
- 67.4412 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
53
- 67.4414 EXP New trial (rep=0, index=0): None
54
- 67.4571 EXP blockIntroText: autoDraw = False
55
- 67.4571 EXP blockIntroText: autoDraw = False
56
- 67.4571 EXP stimInfo: text = 'stim 0'
57
- 67.5398 EXP stimInfo: autoDraw = True
58
- 67.6266 EXP New trial (rep=1, index=0): None
59
- 67.6394 EXP stimInfo: autoDraw = False
60
- 67.6394 EXP stimInfo: autoDraw = False
61
- 67.6394 EXP stimInfo: text = 'stim 1'
62
- 67.7240 EXP stimInfo: autoDraw = True
63
- 67.8097 EXP New trial (rep=2, index=0): None
64
- 67.8234 EXP stimInfo: autoDraw = False
65
- 67.8234 EXP stimInfo: autoDraw = False
66
- 67.8234 EXP stimInfo: text = 'stim 2'
67
- 67.9062 EXP stimInfo: autoDraw = True
68
- 67.9929 EXP New trial (rep=1, index=0): None
69
- 67.9933 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
70
- 67.9936 EXP New trial (rep=0, index=0): None
71
- 68.0062 EXP stimInfo: autoDraw = False
72
- 68.0062 EXP stimInfo: autoDraw = False
73
- 68.0062 EXP stimInfo: text = 'stim 0'
74
- 68.0918 EXP stimInfo: autoDraw = True
75
- 68.1929 EXP New trial (rep=1, index=0): None
76
- 68.2166 EXP stimInfo: autoDraw = False
77
- 68.2166 EXP stimInfo: autoDraw = False
78
- 68.2166 EXP stimInfo: text = 'stim 1'
79
- 68.2920 EXP stimInfo: autoDraw = True
80
- 68.3929 EXP New trial (rep=2, index=0): None
81
- 68.4062 EXP stimInfo: autoDraw = False
82
- 68.4062 EXP stimInfo: autoDraw = False
83
- 68.4062 EXP stimInfo: text = 'stim 2'
84
- 68.4905 EXP stimInfo: autoDraw = True
85
- 68.6409 EXP New trial (rep=2, index=0): None
86
- 68.6455 EXP stimInfo: autoDraw = False
87
- 68.6455 EXP stimInfo: autoDraw = False
88
- 68.6455 EXP blockIntroText: autoDraw = True
89
- 69.1397 EXP Created sequence: random, trialTypes=1, nReps=2, seed=None
90
- 69.1399 EXP New trial (rep=0, index=0): None
91
- 69.1401 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
92
- 69.1403 EXP New trial (rep=0, index=0): None
93
- 69.1588 EXP blockIntroText: autoDraw = False
94
- 69.1588 EXP blockIntroText: autoDraw = False
95
- 69.1588 EXP stimInfo: text = 'stim 0'
96
- 69.2424 EXP stimInfo: autoDraw = True
97
- 69.3265 EXP New trial (rep=1, index=0): None
98
- 69.3398 EXP stimInfo: autoDraw = False
99
- 69.3398 EXP stimInfo: autoDraw = False
100
- 69.3398 EXP stimInfo: text = 'stim 1'
101
- 69.4235 EXP stimInfo: autoDraw = True
102
- 69.5263 EXP New trial (rep=2, index=0): None
103
- 69.5398 EXP stimInfo: autoDraw = False
104
- 69.5398 EXP stimInfo: autoDraw = False
105
- 69.5398 EXP stimInfo: text = 'stim 2'
106
- 69.6232 EXP stimInfo: autoDraw = True
107
- 69.7172 EXP New trial (rep=1, index=0): None
108
- 69.7175 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
109
- 69.7177 EXP New trial (rep=0, index=0): None
110
- 69.7277 EXP stimInfo: autoDraw = False
111
- 69.7277 EXP stimInfo: autoDraw = False
112
- 69.7277 EXP stimInfo: text = 'stim 0'
113
- 69.8090 EXP stimInfo: autoDraw = True
114
- 69.8930 EXP New trial (rep=1, index=0): None
115
- 69.9057 EXP stimInfo: autoDraw = False
116
- 69.9057 EXP stimInfo: autoDraw = False
117
- 69.9057 EXP stimInfo: text = 'stim 1'
118
- 69.9903 EXP stimInfo: autoDraw = True
119
- 70.0915 EXP New trial (rep=2, index=0): None
120
- 70.1058 EXP stimInfo: autoDraw = False
121
- 70.1058 EXP stimInfo: autoDraw = False
122
- 70.1058 EXP stimInfo: text = 'stim 2'
123
- 70.1905 EXP stimInfo: autoDraw = True
124
- 70.3506 EXP New trial (rep=3, index=0): None
125
- 70.3547 EXP stimInfo: autoDraw = False
126
- 70.3547 EXP stimInfo: autoDraw = False
127
- 70.3547 EXP blockIntroText: autoDraw = True
128
- 70.8409 EXP Created sequence: random, trialTypes=1, nReps=2, seed=None
129
- 70.8412 EXP New trial (rep=0, index=0): None
130
- 70.8415 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
131
- 70.8418 EXP New trial (rep=0, index=0): None
132
- 70.8568 EXP blockIntroText: autoDraw = False
133
- 70.8568 EXP blockIntroText: autoDraw = False
134
- 70.8568 EXP stimInfo: text = 'stim 0'
135
- 70.9393 EXP stimInfo: autoDraw = True
136
- 71.0260 EXP New trial (rep=1, index=0): None
137
- 71.0393 EXP stimInfo: autoDraw = False
138
- 71.0393 EXP stimInfo: autoDraw = False
139
- 71.0393 EXP stimInfo: text = 'stim 1'
140
- 71.1231 EXP stimInfo: autoDraw = True
141
- 71.2139 EXP New trial (rep=2, index=0): None
142
- 71.2273 EXP stimInfo: autoDraw = False
143
- 71.2273 EXP stimInfo: autoDraw = False
144
- 71.2273 EXP stimInfo: text = 'stim 2'
145
- 71.3061 EXP stimInfo: autoDraw = True
146
- 71.3929 EXP New trial (rep=1, index=0): None
147
- 71.3933 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
148
- 71.3936 EXP New trial (rep=0, index=0): None
149
- 71.4060 EXP stimInfo: autoDraw = False
150
- 71.4060 EXP stimInfo: autoDraw = False
151
- 71.4060 EXP stimInfo: text = 'stim 0'
152
- 71.4900 EXP stimInfo: autoDraw = True
153
- 71.5739 EXP New trial (rep=1, index=0): None
154
- 71.5927 EXP stimInfo: autoDraw = False
155
- 71.5927 EXP stimInfo: autoDraw = False
156
- 71.5927 EXP stimInfo: text = 'stim 1'
157
- 71.6753 EXP stimInfo: autoDraw = True
158
- 71.7604 EXP New trial (rep=2, index=0): None
159
- 71.7734 EXP stimInfo: autoDraw = False
160
- 71.7734 EXP stimInfo: autoDraw = False
161
- 71.7734 EXP stimInfo: text = 'stim 2'
162
- 71.8568 EXP stimInfo: autoDraw = True
163
- 72.0107 EXP stimInfo: autoDraw = False
164
- 72.0107 EXP stimInfo: autoDraw = False
165
- 72.0201 EXP window1: mouseVisible = True
166
- 180.3206 EXP Imported /Users/lpzjwp/code/psychopy/git/psychopy/demos/builder/Experiments/stroop/trialTypes.csv as conditions, 6 conditions, 4 params
167
- 180.3582 EXP Imported /Users/lpzjwp/code/psychopy/git/psychopy/demos/builder/Experiments/stroop/trialTypes.csv as conditions, 6 conditions, 4 params
168
- 180.8159 EXP Imported /Users/lpzjwp/code/psychopy/git/psychopy/demos/builder/Design Templates/randomisedBlocks/chooseBlock.xlsx as conditions, 2 conditions, 2 params
169
- 180.8418 EXP Imported /Users/lpzjwp/code/psychopy/git/psychopy/demos/builder/Design Templates/randomisedBlocks/facesBlock.xlsx as conditions, 3 conditions, 1 params
170
- 180.8510 EXP Imported /Users/lpzjwp/code/psychopy/git/psychopy/demos/builder/Design Templates/randomisedBlocks/housesBlock.xlsx as conditions, 3 conditions, 1 params
171
- 180.9479 EXP Imported /Users/lpzjwp/code/psychopy/git/psychopy/demos/builder/Design Templates/randomisedBlocks/chooseBlock.xlsx as conditions, 2 conditions, 2 params
172
- 180.9579 EXP Imported /Users/lpzjwp/code/psychopy/git/psychopy/demos/builder/Design Templates/randomisedBlocks/facesBlock.xlsx as conditions, 3 conditions, 1 params
173
- 180.9679 EXP Imported /Users/lpzjwp/code/psychopy/git/psychopy/demos/builder/Design Templates/randomisedBlocks/housesBlock.xlsx as conditions, 3 conditions, 1 params
174
- 181.2415 EXP Imported /Users/lpzjwp/code/psychopy/git/psychopy/demos/builder/Experiments/stroop/trialTypes.csv as conditions, 6 conditions, 4 params
175
- 181.2523 EXP Imported /Users/lpzjwp/code/psychopy/git/psychopy/demos/builder/Experiments/stroop/trialTypes.csv as conditions, 6 conditions, 4 params
176
- 181.4904 EXP Imported /Users/lpzjwp/code/psychopy/git/psychopy/demos/builder/Experiments/stroop/trialTypes.csv as conditions, 6 conditions, 4 params
177
- 181.5089 EXP Imported /Users/lpzjwp/code/psychopy/git/psychopy/demos/builder/Experiments/stroop/trialTypes.csv as conditions, 6 conditions, 4 params
@@ -1,9 +0,0 @@
1
- blocks.thisRepN,blocks.thisTrialN,blocks.thisN,blocks.thisIndex,trials.thisRepN,trials.thisTrialN,trials.thisN,trials.thisIndex,stimulusLoop.thisRepN,stimulusLoop.thisTrialN,stimulusLoop.thisN,stimulusLoop.thisIndex,blockIntroText.started,blockIntroText.stopped,stimInfo.started,stimInfo.stopped,session,participant,date,expName,psychopyVersion,frameRate,
2
- 0,0,0,0,0,0,0,0,,,,,35.64092961799906,None,36.53197220099901,36.46018599599847,001,,2021_ 5_03_1324,testLoopsBlocks,2021.1.4,60.3228579489649,
3
- 0,0,0,0,1,0,1,0,,,,,,,37.026421831000334,36.9581391089996,001,,2021_ 5_03_1324,testLoopsBlocks,2021.1.4,60.3228579489649,
4
- 1,0,1,0,0,0,0,0,,,,,37.144647338998766,None,38.02494392099834,37.956143577997864,001,,2021_ 5_03_1324,testLoopsBlocks,2021.1.4,60.3228579489649,
5
- 1,0,1,0,1,0,1,0,,,,,,,38.48955451599977,38.42139802800011,001,,2021_ 5_03_1324,testLoopsBlocks,2021.1.4,60.3228579489649,
6
- 2,0,2,0,0,0,0,0,,,,,38.62150937699698,None,39.490225479999935,39.421062761997746,001,,2021_ 5_03_1324,testLoopsBlocks,2021.1.4,60.3228579489649,
7
- 2,0,2,0,1,0,1,0,,,,,,,39.956308781998814,39.887982683998416,001,,2021_ 5_03_1324,testLoopsBlocks,2021.1.4,60.3228579489649,
8
- 3,0,3,0,0,0,0,0,,,,,40.07236192699929,None,40.93996434699875,40.87120142999993,001,,2021_ 5_03_1324,testLoopsBlocks,2021.1.4,60.3228579489649,
9
- 3,0,3,0,1,0,1,0,,,,,,,41.405941351000365,41.33707405699897,001,,2021_ 5_03_1324,testLoopsBlocks,2021.1.4,60.3228579489649,
@@ -1,168 +0,0 @@
1
- 33.3484 DATA Keypress: lcommand
2
- 33.8965 EXP Created window1 = Window(allowGUI=True, allowStencil=False, autoLog=True, backendConf=UNKNOWN, bitsMode=UNKNOWN, blendMode='avg', bpc=(8, 8, 8), color=array([0, 0, 0]), colorSpace='rgb', depthBits=8, fullscr=<method-wrapper '__getattribute__' of attributeSetter object at 0x7f833a66c828>, gamma=None, gammaErrorPolicy='raise', lms=UNKNOWN, monitor=<psychopy.monitors.calibTools.Monitor object at 0x7f833b62bba8>, multiSample=False, name='window1', numSamples=2, pos=[696.0, 410.0], screen=0, size=array([1600, 1200]), stencilBits=0, stereo=False, units='height', useFBO=True, useRetina=True, viewOri=0.0, viewPos=None, viewScale=None, waitBlanking=True, winType='pyglet')
3
- 33.8967 EXP window1: mouseVisible = True
4
- 33.8967 EXP window1: recordFrameIntervals = False
5
- 34.0620 EXP window1: recordFrameIntervals = True
6
- 34.2144 WARNING t of last frame was 22.15ms (=1/45)
7
- 34.7249 WARNING t of last frame was 32.26ms (=1/31)
8
- 34.7468 WARNING t of last frame was 21.95ms (=1/45)
9
- 34.9128 EXP window1: recordFrameIntervals = False
10
- 35.6135 EXP Created blockIntroText = TextStim(__class__=<class 'psychopy.visual.text.TextStim'>, alignHoriz=method-wrapper(...), alignText='center', alignVert=method-wrapper(...), anchorHoriz='center', anchorVert='center', antialias=True, autoLog=True, bold=False, color=array([1, 1, 1]), colorSpace='rgb', contrast=1.0, depth=0.0, flipHoriz=False, flipVert=False, font='Arial', fontFiles=[], height=0.1, italic=False, languageStyle='LTR', name='blockIntroText', opacity=1, ori=0, pos=array([0., 0.]), rgb=UNKNOWN, text="You're about to start a new block", units='height', win=Window(...), wrapWidth=1)
11
- 35.6143 EXP Created stimInfo = TextStim(__class__=<class 'psychopy.visual.text.TextStim'>, alignHoriz=method-wrapper(...), alignText='center', alignVert=method-wrapper(...), anchorHoriz='center', anchorVert='center', antialias=True, autoLog=True, bold=False, color=array([1, 1, 1]), colorSpace='rgb', contrast=1.0, depth=0.0, flipHoriz=False, flipVert=False, font='Arial', fontFiles=[], height=0.1, italic=False, languageStyle='LTR', name='stimInfo', opacity=1, ori=0, pos=array([0., 0.]), rgb=UNKNOWN, text='', units='height', win=Window(...), wrapWidth=1)
12
- 35.6147 EXP Created sequence: random, trialTypes=1, nReps=4, seed=None
13
- 35.6149 EXP New trial (rep=0, index=0): None
14
- 35.6409 EXP blockIntroText: autoDraw = True
15
- 36.1161 EXP Created sequence: random, trialTypes=1, nReps=2, seed=None
16
- 36.1163 EXP New trial (rep=0, index=0): None
17
- 36.1166 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
18
- 36.1167 EXP New trial (rep=0, index=0): None
19
- 36.1268 EXP blockIntroText: autoDraw = False
20
- 36.1268 EXP stimInfo: text = 'stim 0'
21
- 36.2098 EXP stimInfo: autoDraw = True
22
- 36.2938 EXP New trial (rep=1, index=0): None
23
- 36.2972 EXP stimInfo: autoDraw = False
24
- 36.2972 EXP stimInfo: autoDraw = False
25
- 36.2972 EXP stimInfo: text = 'stim 1'
26
- 36.3680 EXP stimInfo: autoDraw = True
27
- 36.4529 EXP New trial (rep=2, index=0): None
28
- 36.4602 EXP stimInfo: autoDraw = False
29
- 36.4602 EXP stimInfo: autoDraw = False
30
- 36.4602 EXP stimInfo: text = 'stim 2'
31
- 36.5320 EXP stimInfo: autoDraw = True
32
- 36.6197 EXP New trial (rep=1, index=0): None
33
- 36.6200 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
34
- 36.6202 EXP New trial (rep=0, index=0): None
35
- 36.6233 EXP stimInfo: autoDraw = False
36
- 36.6233 EXP stimInfo: autoDraw = False
37
- 36.6233 EXP stimInfo: text = 'stim 0'
38
- 36.7158 EXP stimInfo: autoDraw = True
39
- 36.7994 EXP New trial (rep=1, index=0): None
40
- 36.8023 EXP stimInfo: autoDraw = False
41
- 36.8023 EXP stimInfo: autoDraw = False
42
- 36.8023 EXP stimInfo: text = 'stim 1'
43
- 36.8714 EXP stimInfo: autoDraw = True
44
- 36.9553 EXP New trial (rep=2, index=0): None
45
- 36.9581 EXP stimInfo: autoDraw = False
46
- 36.9581 EXP stimInfo: autoDraw = False
47
- 36.9581 EXP stimInfo: text = 'stim 2'
48
- 37.0264 EXP stimInfo: autoDraw = True
49
- 37.1406 EXP New trial (rep=1, index=0): None
50
- 37.1446 EXP stimInfo: autoDraw = False
51
- 37.1446 EXP stimInfo: autoDraw = False
52
- 37.1446 EXP blockIntroText: autoDraw = True
53
- 37.6302 EXP Created sequence: random, trialTypes=1, nReps=2, seed=None
54
- 37.6304 EXP New trial (rep=0, index=0): None
55
- 37.6306 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
56
- 37.6308 EXP New trial (rep=0, index=0): None
57
- 37.6339 EXP blockIntroText: autoDraw = False
58
- 37.6339 EXP blockIntroText: autoDraw = False
59
- 37.6339 EXP stimInfo: text = 'stim 0'
60
- 37.7138 EXP stimInfo: autoDraw = True
61
- 37.7979 EXP New trial (rep=1, index=0): None
62
- 37.8006 EXP stimInfo: autoDraw = False
63
- 37.8006 EXP stimInfo: autoDraw = False
64
- 37.8006 EXP stimInfo: text = 'stim 1'
65
- 37.8698 EXP stimInfo: autoDraw = True
66
- 37.9535 EXP New trial (rep=2, index=0): None
67
- 37.9561 EXP stimInfo: autoDraw = False
68
- 37.9561 EXP stimInfo: autoDraw = False
69
- 37.9561 EXP stimInfo: text = 'stim 2'
70
- 38.0249 EXP stimInfo: autoDraw = True
71
- 38.1085 EXP New trial (rep=1, index=0): None
72
- 38.1087 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
73
- 38.1089 EXP New trial (rep=0, index=0): None
74
- 38.1116 EXP stimInfo: autoDraw = False
75
- 38.1116 EXP stimInfo: autoDraw = False
76
- 38.1116 EXP stimInfo: text = 'stim 0'
77
- 38.1800 EXP stimInfo: autoDraw = True
78
- 38.2633 EXP New trial (rep=1, index=0): None
79
- 38.2660 EXP stimInfo: autoDraw = False
80
- 38.2660 EXP stimInfo: autoDraw = False
81
- 38.2660 EXP stimInfo: text = 'stim 1'
82
- 38.3351 EXP stimInfo: autoDraw = True
83
- 38.4183 EXP New trial (rep=2, index=0): None
84
- 38.4214 EXP stimInfo: autoDraw = False
85
- 38.4214 EXP stimInfo: autoDraw = False
86
- 38.4214 EXP stimInfo: text = 'stim 2'
87
- 38.4896 EXP stimInfo: autoDraw = True
88
- 38.6173 EXP New trial (rep=2, index=0): None
89
- 38.6215 EXP stimInfo: autoDraw = False
90
- 38.6215 EXP stimInfo: autoDraw = False
91
- 38.6215 EXP blockIntroText: autoDraw = True
92
- 39.1054 EXP Created sequence: random, trialTypes=1, nReps=2, seed=None
93
- 39.1055 EXP New trial (rep=0, index=0): None
94
- 39.1057 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
95
- 39.1058 EXP New trial (rep=0, index=0): None
96
- 39.1088 EXP blockIntroText: autoDraw = False
97
- 39.1088 EXP blockIntroText: autoDraw = False
98
- 39.1088 EXP stimInfo: text = 'stim 0'
99
- 39.1780 EXP stimInfo: autoDraw = True
100
- 39.2619 EXP New trial (rep=1, index=0): None
101
- 39.2650 EXP stimInfo: autoDraw = False
102
- 39.2650 EXP stimInfo: autoDraw = False
103
- 39.2650 EXP stimInfo: text = 'stim 1'
104
- 39.3345 EXP stimInfo: autoDraw = True
105
- 39.4183 EXP New trial (rep=2, index=0): None
106
- 39.4211 EXP stimInfo: autoDraw = False
107
- 39.4211 EXP stimInfo: autoDraw = False
108
- 39.4211 EXP stimInfo: text = 'stim 2'
109
- 39.4902 EXP stimInfo: autoDraw = True
110
- 39.5743 EXP New trial (rep=1, index=0): None
111
- 39.5745 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
112
- 39.5746 EXP New trial (rep=0, index=0): None
113
- 39.5774 EXP stimInfo: autoDraw = False
114
- 39.5774 EXP stimInfo: autoDraw = False
115
- 39.5774 EXP stimInfo: text = 'stim 0'
116
- 39.6459 EXP stimInfo: autoDraw = True
117
- 39.7294 EXP New trial (rep=1, index=0): None
118
- 39.7326 EXP stimInfo: autoDraw = False
119
- 39.7326 EXP stimInfo: autoDraw = False
120
- 39.7326 EXP stimInfo: text = 'stim 1'
121
- 39.8018 EXP stimInfo: autoDraw = True
122
- 39.8853 EXP New trial (rep=2, index=0): None
123
- 39.8880 EXP stimInfo: autoDraw = False
124
- 39.8880 EXP stimInfo: autoDraw = False
125
- 39.8880 EXP stimInfo: text = 'stim 2'
126
- 39.9563 EXP stimInfo: autoDraw = True
127
- 40.0685 EXP New trial (rep=3, index=0): None
128
- 40.0724 EXP stimInfo: autoDraw = False
129
- 40.0724 EXP stimInfo: autoDraw = False
130
- 40.0724 EXP blockIntroText: autoDraw = True
131
- 40.5561 EXP Created sequence: random, trialTypes=1, nReps=2, seed=None
132
- 40.5562 EXP New trial (rep=0, index=0): None
133
- 40.5564 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
134
- 40.5565 EXP New trial (rep=0, index=0): None
135
- 40.5595 EXP blockIntroText: autoDraw = False
136
- 40.5595 EXP blockIntroText: autoDraw = False
137
- 40.5595 EXP stimInfo: text = 'stim 0'
138
- 40.6282 EXP stimInfo: autoDraw = True
139
- 40.7120 EXP New trial (rep=1, index=0): None
140
- 40.7156 EXP stimInfo: autoDraw = False
141
- 40.7156 EXP stimInfo: autoDraw = False
142
- 40.7156 EXP stimInfo: text = 'stim 1'
143
- 40.7845 EXP stimInfo: autoDraw = True
144
- 40.8684 EXP New trial (rep=2, index=0): None
145
- 40.8712 EXP stimInfo: autoDraw = False
146
- 40.8712 EXP stimInfo: autoDraw = False
147
- 40.8712 EXP stimInfo: text = 'stim 2'
148
- 40.9400 EXP stimInfo: autoDraw = True
149
- 41.0239 EXP New trial (rep=1, index=0): None
150
- 41.0241 EXP Created sequence: random, trialTypes=1, nReps=3, seed=None
151
- 41.0243 EXP New trial (rep=0, index=0): None
152
- 41.0270 EXP stimInfo: autoDraw = False
153
- 41.0270 EXP stimInfo: autoDraw = False
154
- 41.0270 EXP stimInfo: text = 'stim 0'
155
- 41.0959 EXP stimInfo: autoDraw = True
156
- 41.1788 EXP New trial (rep=1, index=0): None
157
- 41.1816 EXP stimInfo: autoDraw = False
158
- 41.1816 EXP stimInfo: autoDraw = False
159
- 41.1816 EXP stimInfo: text = 'stim 1'
160
- 41.2501 EXP stimInfo: autoDraw = True
161
- 41.3342 EXP New trial (rep=2, index=0): None
162
- 41.3371 EXP stimInfo: autoDraw = False
163
- 41.3371 EXP stimInfo: autoDraw = False
164
- 41.3371 EXP stimInfo: text = 'stim 2'
165
- 41.4059 EXP stimInfo: autoDraw = True
166
- 41.5522 EXP stimInfo: autoDraw = False
167
- 41.5522 EXP stimInfo: autoDraw = False
168
- 41.5612 EXP window1: mouseVisible = True
Binary file
@@ -1,67 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- """
3
- Created on Thu May 8 10:46:41 2014
4
-
5
- @author: jon.peirce
6
- """
7
- import pytest
8
- from psychopy import visual, core
9
-
10
-
11
- def test_bitsSharp():
12
- try:
13
- from psychopy.hardware.crs import BitsSharp
14
- except (ModuleNotFoundError, ImportError):
15
- return
16
-
17
- win = visual.Window(screen=0, fullscr=True, useFBO=True, autoLog=True)
18
- win.setGamma(1.0) #make sure gfx card LUT is identity
19
- #initialise BitsSharp
20
- try:
21
- bits = BitsSharp(win=win, mode='color++')
22
- except ImportError:
23
- pytest.skip("crs.BitsSharp: could not initialize. possible:\nfrom serial.tools import list_ports\n"
24
- "ImportError: No module named tools")
25
-
26
- if not bits.OK:
27
- win.close()
28
- pytest.skip("No BitsSharp connected")
29
-
30
- print(bits.info)
31
-
32
- #switch to status screen (while keeping in mono 'mode')
33
- bits.getVideoLine(lineN=1, nPixels=1)
34
- core.wait(5) #wait for status mode to take effect
35
-
36
- #create a stimulus to check luminance values
37
- screenSqr = visual.GratingStim(win,tex=None, mask=None,
38
- size=2)
39
-
40
- print('\n up from zero:')
41
- bit16 = (2.0 ** 16) - 1
42
- for frameN in range(5):
43
- intensity = frameN / bit16
44
- screenSqr.color = intensity * 2 - 1 # psychopy is -1:1
45
- screenSqr.draw()
46
- win.flip()
47
- pixels = bits.getVideoLine(lineN=1, nPixels=2)
48
- print(pixels[0], pixels[1], intensity)
49
-
50
- print('\n down from 1:')
51
- for frameN in range(5):
52
- intensity = 1 - (frameN / bit16)
53
- screenSqr.color = intensity * 2 - 1 # psychopy is -1:1
54
- screenSqr.draw()
55
- win.flip()
56
- pixels = bits.getVideoLine(lineN=1, nPixels=2)
57
- print(pixels[0], pixels[1], intensity)
58
-
59
- print('\n check the middle::')
60
- for intensity in [0.5, 0.5 + (1 / bit16)]:
61
- screenSqr.color = intensity * 2 - 1 # psychopy is -1:1
62
- screenSqr.draw()
63
- win.flip()
64
- pixels = bits.getVideoLine(lineN=1, nPixels=2)
65
- print(pixels[0], pixels[1], intensity)
66
-
67
- bits.mode = "color++" #get out of status screen
@@ -1,68 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- """
3
- Created on Thu May 8 10:46:41 2014
4
-
5
- @author: jon.peirce
6
- """
7
- import pytest
8
- from psychopy import visual, core
9
- from psychopy.hardware import crs
10
-
11
-
12
- def test_bitsSharp():
13
- win = visual.Window(screen=1, fullscr=True, useFBO=True, autoLog=True)
14
- win.setGamma(1.0) #make sure gfx card LUT is identity
15
- #initialise BitsSharp
16
- try:
17
- bits = crs.BitsSharp(win=win, mode='color++')
18
- except ImportError:
19
- pytest.skip("crs.BitsSharp: could not initialize. possible:\nfrom serial.tools import list_ports\n"
20
- "ImportError: No module named tools")
21
-
22
- if not bits.OK:
23
- win.close()
24
- pytest.skip("No BitsSharp connected")
25
-
26
- print(bits.info)
27
-
28
- #switch to status screen (while keeping in mono 'mode')
29
- bits.getVideoLine(lineN=1, nPixels=1)
30
- core.wait(5) #wait for status mode to take effect
31
-
32
- <<<<<<< HEAD
33
- #createa stimulus to check luminance values
34
- screenSqr = visual.GratingStim(win, tex=None, mask=None, size=2)
35
- =======
36
- #create a stimulus to check luminance values
37
- screenSqr = visual.GratingStim(win,tex=None, mask=None,
38
- size=2)
39
- >>>>>>> release
40
-
41
- print('\n up from zero:')
42
- bit16 = (2.0 ** 16) - 1
43
- for frameN in range(5):
44
- intensity = frameN / bit16
45
- screenSqr.color = intensity * 2 - 1 # psychopy is -1:1
46
- screenSqr.draw()
47
- win.flip()
48
- pixels = bits.getVideoLine(lineN=1, nPixels=2)
49
- print(pixels[0], pixels[1], intensity)
50
-
51
- print('\n down from 1:')
52
- for frameN in range(5):
53
- intensity = 1 - (frameN / bit16)
54
- screenSqr.color = intensity * 2 - 1 # psychopy is -1:1
55
- screenSqr.draw()
56
- win.flip()
57
- pixels = bits.getVideoLine(lineN=1, nPixels=2)
58
- print(pixels[0], pixels[1], intensity)
59
-
60
- print('\n check the middle::')
61
- for intensity in [0.5, 0.5 + (1 / bit16)]:
62
- screenSqr.color = intensity * 2 - 1 # psychopy is -1:1
63
- screenSqr.draw()
64
- win.flip()
65
- pixels = bits.getVideoLine(lineN=1, nPixels=2)
66
- print(pixels[0], pixels[1], intensity)
67
-
68
- bits.mode = "color++" #get out of status screen
@@ -1,110 +0,0 @@
1
- # -*- coding: utf-8 -*-
2
- """
3
- Created on Mon Dec 15 15:22:48 2014
4
-
5
- @author: lpzjwp
6
- """
7
- from psychopy import visual
8
- from psychopy.tools import systemtools
9
- from psychopy.tests import skip_under_vm
10
- import numpy as np
11
-
12
- try:
13
- from PIL import Image
14
- except ImportError:
15
- import Image
16
-
17
-
18
- array=np.array
19
- #expectedVals = {'bits++':{}, 'mono++':{}, 'color++':{}}
20
- expectedVals = {
21
- 'color++': {1024: {'lowG': array([ 0, 64, 0, 192, 1, 64, 1, 192, 2, 64]),
22
- 'highR': array([ 62, 192, 63, 64, 63, 192]),
23
- 'lowR': array([ 0, 64, 0, 192, 1, 64, 1, 192, 2, 64]),
24
- 'highG': array([ 62, 192, 63, 64, 63, 192])},
25
- 65535: {'lowG': array([0, 1, 0, 3, 0, 5, 0, 7, 0, 9]),
26
- 'highR': array([ 0, 251, 0, 253, 0, 255]),
27
- 'lowR': array([0, 1, 0, 3, 0, 5, 0, 7, 0, 9]),
28
- 'highG': array([ 0, 251, 0, 253, 0, 255])},
29
- 255.0: {'lowG': array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]),
30
- 'highR': array([250, 251, 252, 253, 254, 255]),
31
- 'lowR': array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]),
32
- 'highG': array([250, 251, 252, 253, 254, 255])}},
33
- 'mono++':{1024: {'lowG': array([ 0, 64, 128, 192, 0, 64, 128, 192, 0, 64]),
34
- 'highR': array([62, 62, 62, 63, 63, 63]),
35
- 'lowR': array([0, 0, 0, 0, 1, 1, 1, 1, 2, 2]),
36
- 'highG': array([128, 192, 255, 64, 128, 192])},
37
- 65535: {'lowG': array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]),
38
- 'highR': array([0, 0, 0, 0, 0, 0]),
39
- 'lowR': array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0]),
40
- 'highG': array([250, 251, 252, 253, 254, 255])},
41
- 255.0: {'lowG': array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]),
42
- 'highR': array([250, 251, 252, 253, 254, 255]),
43
- 'lowR': array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]),
44
- 'highG': array([250, 251, 252, 253, 254, 255])}},
45
- 'bits++': {
46
- 1024: {'lowG': array([106, 136, 19, 25, 115, 68, 41, 159, 0, 0]),
47
- 'highR': array([119, 118, 120, 119, 121, 120]),
48
- 'lowR': array([ 36, 63, 8, 211, 3, 112, 56, 34, 0, 0]),
49
- 'highG': array([119, 118, 120, 119, 121, 120])},
50
- 65535: {'lowG': array([106, 136, 19, 25, 115, 68, 41, 159, 0, 0]),
51
- 'highR': array([119, 118, 120, 119, 121, 120]),
52
- 'lowR': array([ 36, 63, 8, 211, 3, 112, 56, 34, 0, 0]),
53
- 'highG': array([119, 118, 120, 119, 121, 120])},
54
- 255.0: {'lowG': array([106, 136, 19, 25, 115, 68, 41, 159, 0, 0]),
55
- 'highR': array([119, 118, 120, 119, 121, 120]),
56
- 'lowR': array([ 36, 63, 8, 211, 3, 112, 56, 34, 0, 0]),
57
- 'highG': array([119, 118, 120, 119, 121, 120])}}}
58
-
59
- @skip_under_vm
60
- def test_bitsShaders():
61
- try:
62
- from psychopy.hardware.crs.bits import BitsSharp
63
- except (ModuleNotFoundError, ImportError):
64
- return
65
-
66
- win = visual.Window([1024, 768], fullscr=0, screen=1, useFBO=True,
67
- autoLog=True)
68
-
69
- bits = BitsSharp(win, mode='bits++', noComms=True)
70
-
71
- # draw a ramp across the screenexpectedVals = range(256)
72
- w, h = win.size
73
- intended = list(range(256))
74
- testArrLums = np.resize(intended,
75
- [256, 256]) / 127.5 - 1 # NB psychopy uses -1:1
76
- stim = visual.ImageStim(win, image=testArrLums,
77
- size=[256, h], pos=[128 - w / 2, 0], units='pix',
78
- )
79
- expected = np.repeat(intended, 3).reshape([-1, 3])
80
-
81
- # stick something in the middle for fun!
82
- gabor = visual.GratingStim(win, mask='gauss', sf=3, ori=45, contrast=0.5)
83
- gabor.autoDraw = True
84
-
85
- #a dict of dicts for expected vals
86
- for mode in ['bits++', 'mono++', 'color++']:
87
- bits.mode=mode
88
- for finalVal in [255.0, 1024, 65535]:
89
- thisExpected = expectedVals[mode][finalVal]
90
-
91
- intended = np.linspace(0.0,1,256)*255.0/finalVal
92
- stim.image = np.resize(intended,[256,256])*2-1 #NB psychopy uses -1:1
93
-
94
- stim.draw()
95
- #fr = np.array(win._getFrame(buffer='back').transpose(Image.ROTATE_270))
96
- win.flip()
97
- fr = np.array(win._getFrame(buffer='front').transpose(Image.ROTATE_270))
98
- if not systemtools.isVM_CI():
99
- assert np.all(thisExpected['lowR'] == fr[0:10, -1, 0])
100
- assert np.all(thisExpected['lowG'] == fr[0:10, -1, 1])
101
- assert np.all(thisExpected['highR'] == fr[250:256, -1, 0])
102
- assert np.all(thisExpected['highG'] == fr[250:256, -1, 1])
103
-
104
- print('R', repr(fr[0:10,-1,0]), repr(fr[250:256,-1,0]))
105
- print('G', repr(fr[0:10,-1,1]), repr(fr[250:256,-1,0]))
106
- #event.waitKeys()
107
-
108
-
109
- if __name__=='__main__':
110
- test_bitsShaders()