function y=getvec(fid,heasig,x1,x2,dirsig); % reads the piece of signal between x1 & x2 % returns each signal as a column of a matrix to ease plotting % Esta funcion todavia esta por retocar para poder aceptar todos % los formatos de lectura (Lund, DB:16,61,8,160,212,ideal,etc) % Leer los datos segun el formato if heasig.fmt(1)==8, %fseek(fid,x1,-1); %y=fread(fid,[heasig.nsig,x2-x1],'int8'); elseif heasig.fmt(1)==16, fseek(fid,2*x1*heasig.nsig,-1); y=fread(fid,[heasig.nsig,x2-x1],'int16'); elseif heasig.fmt(1)==61, fseek(fid,2*x1,-1); y=fread(fid,[heasig.nsig,x2-x1],'int16'); y=swap16(y); elseif heasig.fmt(1)==80, elseif heasig.fmt(1)==160, elseif heasig.fmt(1)==212, if exist('rdsign212')==3 y=rdsign212([dirsig heasig.fname(1,:)],heasig.nsig,x1,x2); else for i=1:heasig.nsig fseek(fid,heasig.group(i,:)*3/2*x1,-1); %data=fread(fid,[3 (heasig.group(1,:)*(x2-x1)/2)],'uchar'); data=fread(fid,[3 (heasig.group(1)*(x2-x1)/2)],'uchar'); % JG 020399 low=rem(data(2,:),16); samples(1:2:heasig.group(i)*(x2-x1)-1)=data(1,:)+256*low-(low>7)*4096; low=data(2,:)-low; samples(2:2:heasig.group(i,:)*(x2-x1))=data(3,:)+16*low-(low>127)*4096; clear data; clear low; for k=1:heasig.nsig, y(:,k)=samples(k:heasig.group(i,:):size(samples,2)).'; end; end end elseif heasig.fmt(1)==310, end;