%% (Internal) Trim a header info struct to a subset of signals % % [ ECG_header ] = trim_ECG_header( ECG_header, ECG_idx ) % % Arguments: % % + ECG_header: original header struct. % % + ECG_idx: signal indexes to select. % % Output: % % + ECG_header: trimed header struct. % % See also ECGtask_arbitrary_function, ECGtask_ECG_delineation, ECGtask_QRS_detection % % Author: Mariano Llamedo Soria (llamedom at {electron.frba.utn.edu.ar; unizar.es} % Version: 0.1 beta % Birthdate: 21/7/2010 % Last update: 20/02/2013 % Copyright 2008-2015 % function [ ECG_header ] = trim_ECG_header( ECG_header, ECG_idx ) for fname = rowvec( fieldnames(ECG_header) ) aux_val = ECG_header.(fname{1}); [nsig, n2] = size(aux_val); if( nsig == ECG_header.nsig ) % filter only the ECG_idx signals if( n2 > 1 ) ECG_header.(fname{1}) = aux_val(ECG_idx,:); else ECG_header.(fname{1}) = aux_val(ECG_idx); end end end ECG_header.nsig = length(ECG_idx); end