0001 function data = vb_signal_processor_save_batch_script(data)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 if ~exist('data', 'var')
0017 error('data is a required parameter.');
0018 end
0019
0020
0021
0022
0023 [d, flist] = vb_file_select({'.m'}, 'Save batch script file(.m)', true);
0024 if ~isempty(d)
0025 save_file = fullfile(d, flist{1});
0026 if exist(save_file, 'file') == 2
0027 res = questdlg('Specified file already exists. overwrite?', ...
0028 'Confirm', 'Yes', 'No', 'Yes');
0029 if strcmp(res, 'No'); return; end
0030 end
0031 fid = fopen(save_file, 'wt');
0032 if fid == -1
0033 errordlg('Cannot open save file.', 'Error');
0034 return;
0035 end
0036 proc_parm = struct;
0037 proc_parm.input_files = data.input_files;
0038 proc_parm.output_files = data.output_files;
0039 proc_parm.process_list = data.process_list;
0040 parm_str = vb_struct2executable_str(proc_parm);
0041 fprintf(fid, 'function %s\n', strrep(flist{1}, '.m', ''));
0042 fprintf(fid, '%% Input/Ouput/Filter settings.\n');
0043 fprintf(fid, '%s\n', parm_str);
0044 fprintf(fid, '%% Apply signal processing to MEG/EEG-MAT file(s)\n');
0045 fprintf(fid, 'vb_signal_processor_batch_exec(proc_parm, 0)\n');
0046 fclose(fid);
0047 h = msgbox(sprintf('%s was created.', save_file), 'Notice');
0048 waitfor(h);
0049 edit(save_file);
0050 end