Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(184)

Side by Side Diff: tools/matlab/parseLog.m

Issue 2584433002: Create top-level dir tools-webrtc and start moving things into it. (Closed)
Patch Set: Created 4 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « tools/matlab/maxUnwrap.m ('k') | tools/matlab/rtpAnalyze.m » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 function parsed = parseLog(filename)
2 %
3 % parsed = parseLog(filename)
4 % Parses a DataLog text file, with the filename specified in the string
5 % filename, into a struct with each column name as a field, and with the
6 % column data stored as a vector in that field.
7 %
8 % Arguments
9 %
10 % filename: A string with the name of the file to parse.
11 %
12 % Return value
13 %
14 % parsed: A struct containing each column parsed from the input file
15 % as a field and with the column data stored as a vector in that
16 % field.
17 %
18
19 % Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
20 %
21 % Use of this source code is governed by a BSD-style license
22 % that can be found in the LICENSE file in the root of the source
23 % tree. An additional intellectual property rights grant can be found
24 % in the file PATENTS. All contributing project authors may
25 % be found in the AUTHORS file in the root of the source tree.
26
27 table = importdata(filename, ',', 1);
28 if ~isstruct(table)
29 error('Malformed file, possibly empty or lacking data entries')
30 end
31
32 colheaders = table.textdata;
33 if length(colheaders) == 1
34 colheaders = regexp(table.textdata{1}, ',', 'split');
35 end
36
37 parsed = struct;
38 i = 1;
39 while i <= length(colheaders)
40 % Checking for a multi-value column.
41 m = regexp(colheaders{i}, '([\w\t]+)\[(\d+)\]', 'tokens');
42 if ~isempty(m)
43 % Parse a multi-value column
44 n = str2double(m{1}{2}) - 1;
45 parsed.(strrep(m{1}{1}, ' ', '_')) = table.data(:, i:i+n);
46 i = i + n + 1;
47 elseif ~isempty(colheaders{i})
48 % Parse a single-value column
49 parsed.(strrep(colheaders{i}, ' ', '_')) = table.data(:, i);
50 i = i + 1;
51 else
52 error('Empty column');
53 end
54 end
OLDNEW
« no previous file with comments | « tools/matlab/maxUnwrap.m ('k') | tools/matlab/rtpAnalyze.m » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698