0001 function parm = vb_signal_processor_util_convert_editor_to_parm(editor_item, parm_type)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020 if ~exist('editor_item', 'var')
0021 error('editor_item is a required parameter.');
0022 end
0023 if ~exist('parm_type', 'var')
0024 error('parm_type is a required parameter.');
0025 end
0026
0027
0028
0029
0030 parm = struct;
0031 parm.type = parm_type;
0032
0033 d = vb_define_signal_processor;
0034
0035 parm=struct;
0036 parm.type=parm_type;
0037
0038 d = vb_define_signal_processor;
0039
0040 for k=1:length(editor_item)
0041 item = editor_item{k};
0042 prop = vb_input_settings_get_prop(item, 'title');
0043 value = vb_input_settings_get_prop(item, 'value');
0044 switch(parm_type)
0045 case d.TYPE_PROCESSING_BIAS_CORRECTION
0046 if strcmpi(prop, 'mode')
0047 parm.mode = str2num(value);
0048 else
0049 error('Unknown field.');
0050 end
0051 case {d.TYPE_PROCESSING_HIGHPASS, d.TYPE_PROCESSING_LOWPASS}
0052 if strcmpi(prop, 'Cutoff frequency [Hz]')
0053 parm.cutoff_freq = str2num(value);
0054 elseif strcmpi(prop, 'Impulse response')
0055 parm.impulse_response = str2num(value);
0056 elseif strcmpi(prop, 'Filter order')
0057 parm.order = str2num(value);
0058 elseif strcmpi(prop, 'Time delay correction')
0059 parm.filtfilt = str2num(value);
0060 else
0061 error('Unknown field.');
0062 end
0063 case {d.TYPE_PROCESSING_BANDPASS, d.TYPE_PROCESSING_STOPBAND}
0064 if strcmpi(prop, 'Lower cutoff frequency [Hz]')
0065 parm.cutoff_freq_low = str2num(value);
0066 elseif strcmpi(prop, 'Impulse response')
0067 parm.impulse_response = str2num(value);
0068 elseif strcmpi(prop, 'Higher cutoff frequency [Hz]')
0069 parm.cutoff_freq_high = str2num(value);
0070 elseif strcmpi(prop, 'Filter order')
0071 parm.order = str2num(value);
0072 elseif strcmpi(prop, 'Time delay correction')
0073 parm.filtfilt = str2num(value);
0074 else
0075 error('Unknown field.');
0076 end
0077 case d.TYPE_PROCESSING_DOWNSAMPLE
0078 if strcmpi(prop, 'New sampling frequency [Hz]')
0079 parm.dsamp_freq = str2num(value);
0080 else
0081 error('Unknown field.');
0082 end
0083 case d.TYPE_PROCESSING_COMMON_REFERENCE
0084 if strcmpi(prop, 'mode')
0085 parm.mode = str2num(value);
0086 else
0087 error('Unknown field.');
0088 end
0089
0090 otherwise
0091 error('Unkonwn parmeter type was specified.');
0092 end
0093 end