Rename tools-webrtc -> tools_webrtc
This aligns with established naming convention for all other directories. BUG=webrtc:7593 NOTRY=True NOTREECHECKS=True R=ehmaldonado@webrtc.org, mbonadei@webrtc.org TBR=henrika@webrtc.org Review-Url: https://codereview.webrtc.org/2864213004 . Cr-Commit-Position: refs/heads/master@{#18059}
This commit is contained in:
54
tools_webrtc/matlab/parseLog.m
Normal file
54
tools_webrtc/matlab/parseLog.m
Normal file
@ -0,0 +1,54 @@
|
||||
function parsed = parseLog(filename)
|
||||
%
|
||||
% parsed = parseLog(filename)
|
||||
% Parses a DataLog text file, with the filename specified in the string
|
||||
% filename, into a struct with each column name as a field, and with the
|
||||
% column data stored as a vector in that field.
|
||||
%
|
||||
% Arguments
|
||||
%
|
||||
% filename: A string with the name of the file to parse.
|
||||
%
|
||||
% Return value
|
||||
%
|
||||
% parsed: A struct containing each column parsed from the input file
|
||||
% as a field and with the column data stored as a vector in that
|
||||
% field.
|
||||
%
|
||||
|
||||
% Copyright (c) 2011 The WebRTC project authors. All Rights Reserved.
|
||||
%
|
||||
% Use of this source code is governed by a BSD-style license
|
||||
% that can be found in the LICENSE file in the root of the source
|
||||
% tree. An additional intellectual property rights grant can be found
|
||||
% in the file PATENTS. All contributing project authors may
|
||||
% be found in the AUTHORS file in the root of the source tree.
|
||||
|
||||
table = importdata(filename, ',', 1);
|
||||
if ~isstruct(table)
|
||||
error('Malformed file, possibly empty or lacking data entries')
|
||||
end
|
||||
|
||||
colheaders = table.textdata;
|
||||
if length(colheaders) == 1
|
||||
colheaders = regexp(table.textdata{1}, ',', 'split');
|
||||
end
|
||||
|
||||
parsed = struct;
|
||||
i = 1;
|
||||
while i <= length(colheaders)
|
||||
% Checking for a multi-value column.
|
||||
m = regexp(colheaders{i}, '([\w\t]+)\[(\d+)\]', 'tokens');
|
||||
if ~isempty(m)
|
||||
% Parse a multi-value column
|
||||
n = str2double(m{1}{2}) - 1;
|
||||
parsed.(strrep(m{1}{1}, ' ', '_')) = table.data(:, i:i+n);
|
||||
i = i + n + 1;
|
||||
elseif ~isempty(colheaders{i})
|
||||
% Parse a single-value column
|
||||
parsed.(strrep(colheaders{i}, ' ', '_')) = table.data(:, i);
|
||||
i = i + 1;
|
||||
else
|
||||
error('Empty column');
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user