Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
try
% Setup
% Set default vaules. Will not work without it for some reason.
PsychDefaultSetup(2);
% Set background color to black
backgroundcolor = 0.0;
% Get the list of screens and choose the one with the highest screen number.
screenNumber = max(Screen('Screens'));
% Create fullscreen window with 0 - 0.1 color range
[w, wRect] = PsychImaging('OpenWindow', screenNumber, backgroundcolor);
% Get subject No
subjectNo = getCurrentSubjectNo;
% Get image list
images = getImgList();
% Generate design matrix
designMatrix = genDesignMatrix(subjectNo, images);
% Diplay welcome screen
welcomeScreen(subjectNo, w, wRect);
% Init json
result = sprintf('{"subjectNo" : "%d", "trials" : [', subjectNo);
% Loop over trials
for trial = 1:size(designMatrix, 1)
% Assign vals
filter = designMatrix(trial,3);
delay = designMatrix(trial,4);
imageNo = designMatrix(trial,5);
% Load image from image number
image = loadImage(imageNo);
% Run trial
[fixDurations, mouseX, mouseY, fixX, fixY] = currentTrial(image, delay, filter, w, wRect, screenNumber, backgroundcolor);
% Make json string for trial
trialJson = trialToJson(trial, delay, filter, imageNo, fixDurations, mouseX, mouseY, fixX, fixY);
% Append trial to result json
result = [result, [trialJson ',']];
end
% Truncate last comma and append closing brackets
result = [result(1:end-1), ']}']
writeResult(result,subjectNo);
sca;
catch
sca;
ShowCursor;
Priority(0);
psychrethrow(psychlasterror);
end