Home > bioelectromagnetism > eeg_write_scan41.m

eeg_write_scan41

PURPOSE ^

eeg_write_scan41 - Write a Neuroscan 'scan4.1' average file

SYNOPSIS ^

function eeg_write_scan41(f,filename)

DESCRIPTION ^

 eeg_write_scan41 - Write a Neuroscan 'scan4.1' average file

 Useage: eeg_write_scan41(f,filename)

 where:    filename is a complete 'path\fileprefix.ext' string;
           the file will be a neuroscan 4.1 avg file.

           f is a structure containing:
           
               f.header
               f.electloc
               f.data
               f.variance
               f.tag

           See companion function: eeg_load_scan4_avg.m

CROSS-REFERENCE INFORMATION ^

This function calls: This function is called by:

SOURCE CODE ^

0001 function eeg_write_scan41(f,filename)
0002 
0003 % eeg_write_scan41 - Write a Neuroscan 'scan4.1' average file
0004 %
0005 % Useage: eeg_write_scan41(f,filename)
0006 %
0007 % where:    filename is a complete 'path\fileprefix.ext' string;
0008 %           the file will be a neuroscan 4.1 avg file.
0009 %
0010 %           f is a structure containing:
0011 %
0012 %               f.header
0013 %               f.electloc
0014 %               f.data
0015 %               f.variance
0016 %               f.tag
0017 %
0018 %           See companion function: eeg_load_scan4_avg.m
0019 %
0020 
0021 % $Revision: 1.1 $ $Date: 2004/11/12 01:32:33 $
0022 
0023 % Licence:  GNU GPL, no implied or express warranties
0024 % Created:  08/2000, Sean Fitzgibbon <psspf@id.psy.flinders.edu.au>
0025 % Modified: 08/2001, Darren.Weber_at_radiology.ucsf.edu
0026 %                    distribute under GPL, with Sean's permission
0027 %
0028 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
0029 
0030 fid = fopen(filename,'w');
0031 
0032 fwrite(fid,f.header.rev,'char');
0033 fwrite(fid,f.header.nextfile,'long');
0034 fwrite(fid,f.header.prevfile,'long');
0035 fwrite(fid,f.header.type,'char');
0036 fwrite(fid,f.header.id,'char');
0037 fwrite(fid,f.header.oper,'char');
0038 fwrite(fid,f.header.doctor,'char');
0039 fwrite(fid,f.header.referral,'char');
0040 fwrite(fid,f.header.hospital,'char');
0041 fwrite(fid,f.header.patient,'char');
0042 fwrite(fid,f.header.age,'short');
0043 fwrite(fid,f.header.sex,'char');
0044 fwrite(fid,f.header.hand,'char');
0045 fwrite(fid,f.header.med,'char');
0046 fwrite(fid,f.header.category,'char');
0047 fwrite(fid,f.header.state,'char');
0048 fwrite(fid,f.header.label,'char');
0049 fwrite(fid,f.header.date,'char');
0050 fwrite(fid,f.header.time,'char');
0051 fwrite(fid,f.header.mean_age,'float');
0052 fwrite(fid,f.header.stdev,'float');
0053 fwrite(fid,f.header.n,'short');
0054 fwrite(fid,f.header.compfile,'char');
0055 fwrite(fid,f.header.spectwincomp,'float');
0056 fwrite(fid,f.header.meanaccuracy,'float');
0057 fwrite(fid,f.header.meanlatency,'float');
0058 fwrite(fid,f.header.sortfile,'char');
0059 fwrite(fid,f.header.numevents,'int');
0060 fwrite(fid,f.header.compoper,'char');
0061 fwrite(fid,f.header.avgmode,'char');
0062 fwrite(fid,f.header.review,'char');
0063 fwrite(fid,f.header.nsweeps,'ushort');
0064 fwrite(fid,f.header.compsweeps,'ushort');
0065 fwrite(fid,f.header.acceptcnt,'ushort');
0066 fwrite(fid,f.header.rejectcnt,'ushort');
0067 fwrite(fid,f.header.pnts,'ushort');
0068 fwrite(fid,f.header.nchannels,'ushort');
0069 fwrite(fid,f.header.avgupdate,'ushort');
0070 fwrite(fid,f.header.domain,'char');
0071 fwrite(fid,f.header.variance,'char');
0072 fwrite(fid,f.header.rate,'ushort');
0073 fwrite(fid,f.header.scale,'double');
0074 fwrite(fid,f.header.veogcorrect,'char');
0075 fwrite(fid,f.header.heogcorrect,'char');
0076 fwrite(fid,f.header.aux1correct,'char');
0077 fwrite(fid,f.header.aux2correct,'char');
0078 fwrite(fid,f.header.veogtrig,'float');
0079 fwrite(fid,f.header.heogtrig,'float');
0080 fwrite(fid,f.header.aux1trig,'float');
0081 fwrite(fid,f.header.aux2trig,'float');
0082 fwrite(fid,f.header.heogchnl,'short');
0083 fwrite(fid,f.header.veogchnl,'short');
0084 fwrite(fid,f.header.aux1chnl,'short');
0085 fwrite(fid,f.header.aux2chnl,'short');
0086 fwrite(fid,f.header.veogdir,'char');
0087 fwrite(fid,f.header.heogdir,'char');
0088 fwrite(fid,f.header.aux1dir,'char');
0089 fwrite(fid,f.header.aux2dir,'char');
0090 fwrite(fid,f.header.veog_n,'short');
0091 fwrite(fid,f.header.heog_n,'short');
0092 fwrite(fid,f.header.aux1_n,'short');
0093 fwrite(fid,f.header.aux2_n,'short');
0094 fwrite(fid,f.header.veogmaxcnt,'short');
0095 fwrite(fid,f.header.heogmaxcnt,'short');
0096 fwrite(fid,f.header.aux1maxcnt,'short');
0097 fwrite(fid,f.header.aux2maxcnt,'short');
0098 fwrite(fid,f.header.veogmethod,'char');
0099 fwrite(fid,f.header.heogmethod,'char');
0100 fwrite(fid,f.header.aux1method,'char');
0101 fwrite(fid,f.header.aux2method,'char');
0102 fwrite(fid,f.header.ampsensitivity,'float');
0103 fwrite(fid,f.header.lowpass,'char');
0104 fwrite(fid,f.header.highpass,'char');
0105 fwrite(fid,f.header.notch,'char');
0106 fwrite(fid,f.header.autoclipadd,'char');
0107 fwrite(fid,f.header.baseline,'char');
0108 fwrite(fid,f.header.offstart,'float');
0109 fwrite(fid,f.header.offstop,'float');
0110 fwrite(fid,f.header.reject,'char');
0111 fwrite(fid,f.header.rejstart,'float');
0112 fwrite(fid,f.header.rejstop,'float');
0113 fwrite(fid,f.header.rejmin,'float');
0114 fwrite(fid,f.header.rejmax,'float');
0115 fwrite(fid,f.header.trigtype,'char');
0116 fwrite(fid,f.header.trigval,'float');
0117 fwrite(fid,f.header.trigchnl,'char');
0118 fwrite(fid,f.header.trigmask,'short');
0119 fwrite(fid,f.header.trigisi,'float');
0120 fwrite(fid,f.header.trigmin,'float');
0121 fwrite(fid,f.header.trigmax,'float');
0122 fwrite(fid,f.header.trigdir,'char');
0123 fwrite(fid,f.header.autoscale,'char');
0124 fwrite(fid,f.header.n2,'short');
0125 fwrite(fid,f.header.dir,'char');
0126 fwrite(fid,f.header.dispmin,'float');
0127 fwrite(fid,f.header.dispmax,'float');
0128 fwrite(fid,f.header.xmin,'float');
0129 fwrite(fid,f.header.xmax,'float');
0130 fwrite(fid,f.header.automin,'float');
0131 fwrite(fid,f.header.automax,'float');
0132 fwrite(fid,f.header.zmin,'float');
0133 fwrite(fid,f.header.zmax,'float');
0134 fwrite(fid,f.header.lowcut,'float');
0135 fwrite(fid,f.header.highcut,'float');
0136 fwrite(fid,f.header.common,'char');
0137 fwrite(fid,f.header.savemode,'char');
0138 fwrite(fid,f.header.manmode,'char');
0139 fwrite(fid,f.header.ref,'char');
0140 fwrite(fid,f.header.rectify,'char');
0141 fwrite(fid,f.header.displayxmin,'float');
0142 fwrite(fid,f.header.displayxmax,'float');
0143 fwrite(fid,f.header.phase,'char');
0144 fwrite(fid,f.header.screen,'char');
0145 fwrite(fid,f.header.calmode,'short');
0146 fwrite(fid,f.header.calmethod,'short');
0147 fwrite(fid,f.header.calupdate,'short');
0148 fwrite(fid,f.header.calbaseline,'short');
0149 fwrite(fid,f.header.calsweeps,'short');
0150 fwrite(fid,f.header.calattenuator,'float');
0151 fwrite(fid,f.header.calpulsevolt,'float');
0152 fwrite(fid,f.header.calpulsestart,'float');
0153 fwrite(fid,f.header.calpulsestop,'float');
0154 fwrite(fid,f.header.calfreq,'float');
0155 fwrite(fid,f.header.taskfile,'char');
0156 fwrite(fid,f.header.seqfile,'char');
0157 fwrite(fid,f.header.spectmethod,'char');
0158 fwrite(fid,f.header.spectscaling,'char');
0159 fwrite(fid,f.header.spectwindow,'char');
0160 fwrite(fid,f.header.spectwinlength,'float');
0161 fwrite(fid,f.header.spectorder,'char');
0162 fwrite(fid,f.header.notchfilter,'char');
0163 fwrite(fid,f.header.headgain,'short');
0164 fwrite(fid,f.header.additionalfiles,'int');
0165 fwrite(fid,f.header.unused,'char');
0166 fwrite(fid,f.header.fspstopmethod,'short');
0167 fwrite(fid,f.header.fspstopmode,'short');
0168 fwrite(fid,f.header.fspfvalue,'float');
0169 fwrite(fid,f.header.fsppoint,'short');
0170 fwrite(fid,f.header.fspblocksize,'short');
0171 fwrite(fid,f.header.fspp1,'ushort');
0172 fwrite(fid,f.header.fspp2,'ushort');
0173 fwrite(fid,f.header.fspalpha,'float');
0174 fwrite(fid,f.header.fspnoise,'float');
0175 fwrite(fid,f.header.fspv1,'short');
0176 fwrite(fid,f.header.montage,'char');
0177 fwrite(fid,f.header.eventfile,'char');
0178 fwrite(fid,f.header.fratio,'float');
0179 fwrite(fid,f.header.minor_rev,'char');
0180 fwrite(fid,f.header.eegupdate,'short');
0181 fwrite(fid,f.header.compressed,'char');
0182 fwrite(fid,f.header.xscale,'float');
0183 fwrite(fid,f.header.yscale,'float');
0184 fwrite(fid,f.header.xsize,'float');
0185 fwrite(fid,f.header.ysize,'float');
0186 fwrite(fid,f.header.acmode,'char');
0187 fwrite(fid,f.header.commonchnl,'uchar');
0188 fwrite(fid,f.header.xtics,'char');
0189 fwrite(fid,f.header.xrange,'char');
0190 fwrite(fid,f.header.ytics,'char');
0191 fwrite(fid,f.header.yrange,'char');
0192 fwrite(fid,f.header.xscalevalue,'float');
0193 fwrite(fid,f.header.xscaleinterval,'float');
0194 fwrite(fid,f.header.yscalevalue,'float');
0195 fwrite(fid,f.header.yscaleinterval,'float');
0196 fwrite(fid,f.header.scaletoolx1,'float');
0197 fwrite(fid,f.header.scaletooly1,'float');
0198 fwrite(fid,f.header.scaletoolx2,'float');
0199 fwrite(fid,f.header.scaletooly2,'float');
0200 fwrite(fid,f.header.port,'short');
0201 fwrite(fid,f.header.numsamples,'long');
0202 fwrite(fid,f.header.filterflag,'char');
0203 fwrite(fid,f.header.lowcutoff,'float');
0204 fwrite(fid,f.header.lowpoles,'short');
0205 fwrite(fid,f.header.highcutoff,'float');
0206 fwrite(fid,f.header.highpoles,'short');
0207 fwrite(fid,f.header.filtertype,'char');
0208 fwrite(fid,f.header.filterdomain,'char');
0209 fwrite(fid,f.header.snrflag,'char');
0210 fwrite(fid,f.header.coherenceflag,'char');
0211 fwrite(fid,f.header.continuoustype,'char');
0212 fwrite(fid,f.header.eventtablepos,'long');
0213 fwrite(fid,f.header.continuousseconds,'float');
0214 fwrite(fid,f.header.channeloffset,'long');
0215 fwrite(fid,f.header.autocorrectflag,'char');
0216 fwrite(fid,f.header.dcthreshold,'uchar');
0217 
0218 for n = 1:f.header.nchannels
0219 fwrite(fid,f.electloc(n).lab,'char');
0220 fwrite(fid,f.electloc(n).reference,'char');
0221 fwrite(fid,f.electloc(n).skip,'char');
0222 fwrite(fid,f.electloc(n).reject,'char');
0223 fwrite(fid,f.electloc(n).display,'char');
0224 fwrite(fid,f.electloc(n).bad,'char');
0225 fwrite(fid,f.electloc(n).n,'ushort');
0226 fwrite(fid,f.electloc(n).avg_reference,'char');
0227 fwrite(fid,f.electloc(n).clipadd,'char');
0228 fwrite(fid,f.electloc(n).x_coord,'float');
0229 fwrite(fid,f.electloc(n).y_coord,'float');
0230 fwrite(fid,f.electloc(n).veog_wt,'float');
0231 fwrite(fid,f.electloc(n).veog_std,'float');
0232 fwrite(fid,f.electloc(n).snr,'float');
0233 fwrite(fid,f.electloc(n).heog_wt,'float');
0234 fwrite(fid,f.electloc(n).heog_std,'float');
0235 fwrite(fid,f.electloc(n).baseline,'short');
0236 fwrite(fid,f.electloc(n).filtered,'char');
0237 fwrite(fid,f.electloc(n).fsp,'char');
0238 fwrite(fid,f.electloc(n).aux1_wt,'float');
0239 fwrite(fid,f.electloc(n).aux1_std,'float');
0240 fwrite(fid,f.electloc(n).senstivity,'float');
0241 fwrite(fid,f.electloc(n).gain,'char');
0242 fwrite(fid,f.electloc(n).hipass,'char');
0243 fwrite(fid,f.electloc(n).lopass,'char');
0244 fwrite(fid,f.electloc(n).page,'uchar');
0245 fwrite(fid,f.electloc(n).size,'uchar');
0246 fwrite(fid,f.electloc(n).impedance,'uchar');
0247 fwrite(fid,f.electloc(n).physicalchnl,'uchar');
0248 fwrite(fid,f.electloc(n).rectify,'char');
0249 fwrite(fid,f.electloc(n).calib,'float');
0250 end
0251 
0252 for i = 1:f.header.nchannels
0253    fwrite(fid,f.data(i).header,'char');
0254    fwrite(fid,f.data(i).samples,'float');
0255 end
0256 
0257 for j = 1:f.header.nchannels
0258    fwrite(fid,f.variance(j).samples,'float');
0259 end
0260 
0261 fwrite(fid,f.tag,'char');
0262 
0263 frewind(fid);
0264 
0265 fclose(fid);

Generated on Mon 15-Aug-2005 15:36:19 by m2html © 2003