123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- projectdir = 'C:\Users\johan\OneDrive\Uni\PhD\Matlab Rawdata\ABR_Dataset_bats\Deviance detection\MR\Vocs\';
- mFileName = 'DD_Data_MR.mat';
- mVarName = 'Data_MR_Vocs';
- dinfo = dir(fullfile(projectdir));
- dinfo([dinfo.isdir]) = []; %get rid of all directories including . and ..
- nfiles = length(dinfo);
- Data_MR_Vocs = [];
- for j = 1:nfiles
- filename = fullfile(projectdir, dinfo(j).name);
- fid = fopen(filename, 'r');
- Parameters = fread(fid,60,'float32')';
- sf = Parameters(4);
- fdown = Parameters(17);
- FileIndex = Parameters(2);
- datale = Parameters(44); % length of datablock
- blocklength = Parameters(44);
- nstims = Parameters(12);
- xs = (0:datale-1)/sf*fdown;
- % AB locked runs
- if FileIndex == 8
- avdata = fread(fid,8*blocklength,'float32')';
- seq = fread(fid,nstims,'float32')';
- rawdata = fread(fid,'float32')';
- fclose(fid);
- end
- % Std/Dev only runs & MR runs
- if FileIndex==6||FileIndex==7||FileIndex==9||FileIndex==10||FileIndex==11||FileIndex==12
- avdata = fread(fid,4*blocklength,'float32')';
- seq = fread(fid,nstims,'float32')';
- rawdata = fread(fid,'float32')';
- fclose(fid);
- end
- % MR runs
- if FileIndex==13
- avdata = fread(fid,4*blocklength,'float32')';
- seq = fread(fid,nstims,'float32')';
- rest = fread(fid,'float32')'; % "rest" contains rawdata and MR sequence
- rawdata = rest(1:end-nstims);
- seq_MR = rest(end-nstims+1:end);
- fclose(fid);
- end
- % Rep Suppr runs
- if FileIndex==14
- dur_unit = Parameters(52);
- recpts = floor(dur_unit*sf/fdown);
- av_unit_NF = fread(fid,recpts,'float32')';
- av_unit = fread(fid,recpts,'float32')';
- rawdata = fread(fid,'float32')';
- end
- % Save files
- File = convertCharsToStrings(filename);
- switch FileIndex
- case {1,2,3,4,5,6,7,8,9,10,11,12}
- Data_temp = {File,Parameters,avdata,seq,rawdata};
- case 13
- Data_temp = {File,Parameters,avdata,seq_MR,rawdata};
- case 14
- Data_temp = {File,Parameters,av_unit_NF,av_unit,rawdata};
- end
- Data_MR_Vocs = [Data_MR_Vocs;Data_temp];
- end
- if isfile(mFileName)==0
- save(mFileName,mVarName,'-v7.3')
- else
- save(mFileName,mVarName,'-append')
- end
|