summaryrefslogtreecommitdiffstats
path: root/SD-VBS/common/toolbox/toolbox_basic/io/pgmread.m
diff options
context:
space:
mode:
authorLeo Chan <leochanj@live.unc.edu>2020-10-22 01:53:21 -0400
committerJoshua Bakita <jbakita@cs.unc.edu>2020-10-22 01:56:35 -0400
commitd17b33131c14864bd1eae275f49a3f148e21cf29 (patch)
tree0d8f77922e8d193cb0f6edab83018f057aad64a0 /SD-VBS/common/toolbox/toolbox_basic/io/pgmread.m
parent601ed25a4c5b66cb75315832c15613a727db2c26 (diff)
Squashed commit of the sb-vbs branch.
Includes the SD-VBS benchmarks modified to: - Use libextra to loop as realtime jobs - Preallocate memory before starting their main computation - Accept input via stdin instead of via argc Does not include the SD-VBS matlab code. Fixes libextra execution in LITMUS^RT.
Diffstat (limited to 'SD-VBS/common/toolbox/toolbox_basic/io/pgmread.m')
-rwxr-xr-xSD-VBS/common/toolbox/toolbox_basic/io/pgmread.m24
1 files changed, 24 insertions, 0 deletions
diff --git a/SD-VBS/common/toolbox/toolbox_basic/io/pgmread.m b/SD-VBS/common/toolbox/toolbox_basic/io/pgmread.m
new file mode 100755
index 0000000..49a35a8
--- /dev/null
+++ b/SD-VBS/common/toolbox/toolbox_basic/io/pgmread.m
@@ -0,0 +1,24 @@
1function [img,header] = pgmread(filename)
2%
3% [img,header] = pgmread(filename)
4
5[fid, msg] = fopen(filename, 'r');
6if fid == -1,
7 error(msg)
8end
9
10head = [];
11good = 0;
12while (good == 0) ,
13 l = fgetl(fid);
14 if (length(l) == 3),
15 if (l == '255'),
16 good = 1;
17 sze = sscanf(header,'%d');
18 end
19 end
20 header= l;
21end
22
23img = fread(fid, sze', 'uchar')';
24fclose(fid);