function readEEG(pathToFile, subject,number,windowEMG,windowEEG,shift,maxFile,threshold,pburgOrder,minEEGFreq,maxEEGFreq)
%fprintf('start read %s%i %s\n',subject,number,datestr(datetime('now')));
trainingDataEEGcell=cell(maxFile,1);
trainingDataEMGcell=cell(maxFile,1);
classesCell=cell(maxFile,1);
kin=cell([maxFile,1]);
for i=1:maxFile
[sig, stat, params] = load_bcidat(strcat(pathToFile,sprintf('%s/%s_B100%i/%s_B1S00%iR0%i.dat',subject,subject,number,subject,number,i)));
tmpKin=csvread(strcat(pathToFile,sprintf('kin/%s_B1S00%iR0%i.txt',subject,number,i)),1,0);
[trainingDataEEGcell{i},trainingDataEMGcell{i},kin{i}]=generateTrainingData(sig,tmpKin,windowEMG,windowEEG,shift,params,pburgOrder,minEEGFreq,maxEEGFreq);
classesCell{i}=stat.StimulusCode;
%fprintf('%ith file processed\n',i)
end
clear sig
trainingDataEEG=cell2mat(trainingDataEEGcell);
trainingDataEMG=cell2mat(trainingDataEMGcell);
classesMat=cell2mat(classesCell);
kinMat=cell2mat(kin);
clear trainingDataEEGcell trainingDataEMGcell classesCell kin
classificationWithPause=classifyAccordingToEMG(trainingDataEEG, trainingDataEMG,classesMat,shift,params.SamplingRate.NumericValue,threshold);
clear classesMat
smoothClassification=zeros(size(classificationWithPause));
for i=1:size(classificationWithPause,1)
smoothClassification(i)=round(mode(classificationWithPause(max(i-2,1):min(i+2,end))));
end
clear classificationWithPause
trainingDataEEG=trainingDataEEG(smoothClassification~=-1,:,:);
trainingDataEMG=trainingDataEMG(smoothClassification~=-1,:);
classification=smoothClassification(smoothClassification~=-1);
kinematics=kinMat(smoothClassification~=-1,:);
clear smoothClassification i
save(strcat(pathToFile,sprintf('../matlabData/%s%i200msWindowEMG1sWindowEEG200msShift1sPauseFreq0to200.mat',subject,number)),'trainingDataEEG','trainingDataEMG','classification','kinematics','-v7.3');
%fprintf('end read %s%i %s\n',subject,number,datestr(datetime('now')));
end