summaryrefslogtreecommitdiffstats
path: root/Kod/scripts/display_post_race_graphs.m
blob: 58145ee430cdbfa5118bce1fb90751a43636337c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
addpath display/ClientServerApp/Release
cd display/ClientServerApp/Release
!startServer
cd ../../..

pause(1);

matlabclient(1, get_smallpackage([ ...
	key(0  , 216, 107, 240, 51, 61, 'C', 'Varv'), ...
	key(107, 216, 213, 240, 52, 62, 'C', 'Segment'), ...
	key(213, 216, 320, 240, 53, 63, 'C', 'Avsluta') ...
]));
pause(0.2);

%% CHECK DISPLAY BUTTONS
display.last_check = tic;
done = false;
while 1
	pause(0.1);
	if toc(display.last_check) > 0.4
        display.last_check = tic;
        
		% read internal mem from last send
		[display.out, display.shm] = matlabclient(2);
		[display.shm_interp.ack, display.shm_interp.start_code, display.shm_interp.data] = get_response(display.shm);

		% request internal mem
		matlabclient(1, hex2dec(['12'; '01'; '53'; '66']));
		if isempty(display.shm_interp.data)
			continue
		end
		update_ref_time = false;
		for i = 1:length(display.shm_interp.data)
			disp(num2str(length(display.shm_interp.data)))
			data = display.shm_interp.data(i);
            if data.data == 51
                draw_lap_graph([13 13 13.2 13.1 13 12.9 12.75], [], 13);
            elseif data.data == 52
                draw_segment_bars([1 2 3 4 5 6 7 8 9], []);
            elseif data.data == 53
                pause(0.2);
                matlabclient(1, get_smallpackage(clear_display()));
                pause(0.2);
                done = true;
            end
		end
		if done == true
			break
		end
		if update_ref_time == true
			pause(0.4);
			matlabclient(1, get_smallpackage(put_text(160, 120, 'C', num2str(ref_time, '%.1f'))));
		end
		display.last_check = tic;
	end
end

matlabclient(3);