def __init__(self, fid): align.check(fid); self.version = fread(fid, 1, 'H', 'H', 1); #file_type = fread(fid, 5, 'c', 'c', 1); #self.file_type = ''.join(list(fread(fid, 5, 'c', 'c', 1))); self.file_type = fid.read(5); fid.seek(1, os.SEEK_CUR);#%alignment self.data_format = fread(fid, 1, 'h', 'h', 1); self.acq_mode = fread(fid, 1, 'H', 'H', 1); self.total_epochs = fread(fid, 1, 'I', 'I', 1); self.input_epochs = fread(fid, 1, 'I', 'I', 1); self.total_events = fread(fid, 1, 'I', 'I', 1); self.total_fixed_events = fread(fid, 1, 'I', 'I', 1); self.sample_period = fread(fid, 1, 'f', 'f', 1); #xaxis_label = fread(fid, 16, 'c', 'c', 1); #self.xaxis_label = ''.join(list(fread(fid, 16, 'c', 'c', 1))); self.xaxis_label = fid.read(16); self.total_processes = fread(fid, 1, 'I', 'I', 1); self.total_chans = fread(fid, 1, 'H', 'H', 1); fid.seek(2, os.SEEK_CUR);#%alignment self.checksum = fread(fid, 1, 'i', 'i', 1); self.total_ed_classes = fread(fid, 1, 'I', 'I', 1); self.total_associated_files = fread(fid, 1, 'H', 'H', 1); self.last_file_index = fread(fid, 1, 'H', 'H', 1); self.timestamp = fread(fid, 1, 'I', 'I', 1); #self.reserved = ''.join(list(fread(fid, 20, 'c', 'c', 1))); self.reserved = fid.read(20); fid.seek(4, os.SEEK_CUR);#%alignment
def __init__(self, fid, device_data): align.check(fid); device_header.write(fid, device_data.hdr); fwrite(fid, 1, device_data.user_space_size, 'I', 1); #self.reserved = ''.join(list(fread(fid, 32, 'c', 'c', 1 ))); fid.seek(32, os.SEEK_CUR); fid.seek(4, os.SEEK_CUR);
def __init__(self, fid): align.check(fid); self.hdr = device_header.read(fid); self.impedance = fread(fid, 1, 'f', 'f', 1); fid.seek(4, os.SEEK_CUR); self.Xfm = fread(fid, 4*4, 'd', 'd', 1); self.reserved = ''.join(list(fread(fid, 32, 'c', 'c', 1 )));
def __init__(self, fid, header_data): #import array align.check(fid); fwrite(fid, 1, header_data.version, 'H', 1); #file_type = fread(fid, 5, 'c', 'c', 1); #print fid. fid.write(header_data.file_type) #fwrite(fid, 5, header_data.file_type, 'c', 1); fid.seek(1, os.SEEK_CUR);#%alignment fwrite(fid, 1, header_data.data_format, 'h', 1); fwrite(fid, 1, header_data.acq_mode, 'H', 1); fwrite(fid, 1, header_data.total_epochs, 'I', 1); fwrite(fid, 1, header_data.input_epochs, 'I', 1); fwrite(fid, 1, header_data.total_events, 'I', 1); fwrite(fid, 1, header_data.total_fixed_events, 'I', 1); fwrite(fid, 1, header_data.sample_period, 'f', 1); #xaxis_label = fwrite(fid, 16, 'c', 'c', 1); fid.write(header_data.xaxis_label); fwrite(fid, 1, header_data.total_processes, 'I', 1); fwrite(fid, 1, header_data.total_chans, 'H', 1); fid.seek(2, os.SEEK_CUR);#%alignment #fwrite(fid, 1, header_data.checksum, 'i', 1); fwrite(fid, 1, chksum.__init__(header_data), 'i', 1); fwrite(fid, 1, header_data.total_ed_classes, 'I', 1); fwrite(fid, 1, header_data.total_associated_files, 'H', 1); fwrite(fid, 1, header_data.last_file_index, 'H', 1); fwrite(fid, 1, header_data.timestamp, 'I', 1); fid.write(header_data.reserved); fid.seek(4, os.SEEK_CUR);#%alignment
def __init__(self, fid, channeldata): align.check(fid); #self.name = ''.join(list(fread(fid, 16, 'c', 'c', 1))); fid.seek(16, os.SEEK_CUR); fwrite(fid, 1, channeldata.chan_no, 'H', 1); fwrite(fid, 1, channeldata.type, 'H', 1); fwrite(fid, 1, channeldata.sensor_no, 'h', 1); fid.seek(2, os.SEEK_CUR); fwrite(fid, 1, channeldata.gain, 'f', 1); fwrite(fid, 1, channeldata.units_per_bit, 'f', 1); #self.yaxis_label = ''.join(list(fread(fid, 16, 'c', 'c', 1))); fid.seek(16, os.SEEK_CUR); fwrite(fid, 1, channeldata.aar_val, 'd', 1); fwrite(fid, 1, channeldata.checksum, 'i', 1); #self.reserved = ''.join(list(fread(fid, 32, 'c', 'c', 1))); fid.seek(32, os.SEEK_CUR); fid.seek( 4, os.SEEK_CUR); fid.seek(77, os.SEEK_CUR); if channeldata.type in [1,3]: device_data.writemeg(fid,channeldata.device_data); #meg/ref elif channeldata.type in [2]: device_data.writeeeg(fid,channeldata.device_data); #eeg elif channeldata.type in [4]: device_data.writeexternal(fid,channeldata.device_data); #external elif channeldata.type in [5]: device_data.writetrigger(fid,channeldata.device_data); #TRIGGER elif channeldata.type in [6]: device_data.writeutility(fid,channeldata.device_data); #utility elif channeldata.type in [7]: device_data.writederived(fid,channeldata.device_data); #derived elif channeldata.type in [8]: device_data.writeshorted(fid,channeldata.device_data); #shorted else: print 'device type unknown'
def __init__(self, fid): align.check(fid); #self.name = ''.join(list(fread(fid, 16, 'c', 'c', 1))); self.name = fid.read(16) self.chan_no = fread(fid, 1, 'H', 'H', 1); self.type = fread(fid, 1, 'H', 'H', 1); self.sensor_no = fread(fid, 1, 'h', 'h', 1); fid.seek(2, os.SEEK_CUR); self.gain = fread(fid, 1, 'f', 'f', 1); self.units_per_bit = fread(fid, 1, 'f', 'f', 1); #self.yaxis_label = ''.join(list(fread(fid, 16, 'c', 'c', 1))); self.yaxis_label = fid.read(16) self.aar_val = fread(fid, 1, 'd', 'd', 1); self.checksum = fread(fid, 1, 'i', 'i', 1); #self.reserved = ''.join(list(fread(fid, 32, 'c', 'c', 1))); self.reserved = fid.read(32) fid.seek( 4, os.SEEK_CUR); if self.type in [1,3]: self.device_data = device_data.readmeg(fid); #meg/ref elif self.type in [2]: self.device_data = device_data.readeeg(fid); #eeg elif self.type in [4]: self.device_data = device_data.readexternal(fid); #external elif self.type in [5]: self.device_data = device_data.readtrigger(fid); #TRIGGER elif self.type in [6]: self.device_data = device_data.readutility(fid); #utility elif self.type in [7]: self.device_data = device_data.readderived(fid); #derived elif self.type in [8]: self.device_data = device_data.readshorted(fid); #shorted else: print 'device type unknown'
def __init__(self, fid, channeldata, log=None): #logging.basicConfig(filename='/tmp/MSWconfigwrite.log',filemode='w',level=logging.DEBUG) align.check(fid); #logging.basicConfig(filename='/tmp/MSWconfigwrite.log',filemode='w',level=logging.DEBUG) #self.name = ''.join(list(fread(fid, 16, 'c', 'c', 1))); #fid.seek(16, os.SEEK_CUR); fwrite(fid, 1, array([channeldata.name]), 'c', 1); #16b #fwrite(fid, 1, array([channeldata.name_array]), 'c', 1); #16b #print channeldata.name,fid,fid.tell() fwrite(fid, 1, channeldata.chan_no, 'H', 1); #4b fwrite(fid, 1, channeldata.type, 'H', 1); #4b fwrite(fid, 1, channeldata.sensor_no, 'h', 1); #4b fid.seek(2, os.SEEK_CUR); #2b fwrite(fid, 1, channeldata.gain, 'f', 1); #4b fwrite(fid, 1, channeldata.units_per_bit, 'f', 1); #4b #self.yaxis_label = ''.join(list(fread(fid, 16, 'c', 'c', 1))); #fid.seek(16, os.SEEK_CUR); fwrite(fid, 1, array([channeldata.yaxis_label]), 'c', 1); #16 fwrite(fid, 1, channeldata.aar_val, 'd', 1); #4 fwrite(fid, 1, channeldata.checksum, 'i', 1); #4 #self.reserved = ''.join(list(fread(fid, 32, 'c', 'c', 1))); #fid.seek(32, os.SEEK_CUR); fwrite(fid, 1, array([channeldata.reserved]), 'c', 1); #32 fid.seek( 4, os.SEEK_CUR); #4b logger2.error((channeldata.name_short,str(fid.tell()))) #fid.seek(77, os.SEEK_CUR); if channeldata.type in [1,3]: device_data.writemeg(fid,channeldata.device_data); #meg/ref elif channeldata.type in [2]: device_data.writeeeg(fid,channeldata.device_data); #eeg elif channeldata.type in [4]: device_data.writeexternal(fid,channeldata.device_data); #external elif channeldata.type in [5]: device_data.writetrigger(fid,channeldata.device_data); #TRIGGER elif channeldata.type in [6]: device_data.writeutility(fid,channeldata.device_data); #utility elif channeldata.type in [7]: device_data.writederived(fid,channeldata.device_data); #derived elif channeldata.type in [8]: device_data.writeshorted(fid,channeldata.device_data); #shorted else: print 'device type unknown'
def __init__(self, fid,log=None): align.check(fid); #logging.basicConfig(filename='/tmp/MSWconfigread.log',filemode='w',level=logging.DEBUG) self.name_array = array(fread(fid, 16, 'c', 'c', 1)) self.name = ''.join(list(self.name_array)); #print self.name,fid.tell() #self.name = fid.read(16) self.chan_no = fread(fid, 1, 'H', 'H', 1); self.type = fread(fid, 1, 'H', 'H', 1); self.sensor_no = fread(fid, 1, 'h', 'h', 1); fid.seek(2, os.SEEK_CUR); self.gain = fread(fid, 1, 'f', 'f', 1); self.units_per_bit = fread(fid, 1, 'f', 'f', 1); #self.yaxis_label = ''.join(list(fread(fid, 16, 'c', 'c', 1))); #self.yaxis_label = fid.read(16) self.yaxis_label = array(fread(fid, 16, 'c', 'c', 1)) self.aar_val = fread(fid, 1, 'd', 'd', 1); self.checksum = fread(fid, 1, 'i', 'i', 1); #self.reserved = ''.join(list(fread(fid, 32, 'c', 'c', 1))); #self.reserved = fid.read(32) self.reserved = array(fread(fid, 32, 'c', 'c', 1)) fid.seek( 4, os.SEEK_CUR); if self.type in [1,3]: self.device_data = device_data.readmeg(fid); #meg/ref elif self.type in [2]: self.device_data = device_data.readeeg(fid); #eeg elif self.type in [4]: self.device_data = device_data.readexternal(fid); #external elif self.type in [5]: self.device_data = device_data.readtrigger(fid); #TRIGGER elif self.type in [6]: self.device_data = device_data.readutility(fid); #utility elif self.type in [7]: self.device_data = device_data.readderived(fid); #derived elif self.type in [8]: self.device_data = device_data.readshorted(fid); #shorted else: print 'device type unknown',self.type,self.name
def __init__(self, fid, user_block_data): align.check(fid); fwrite(fid, 1, user_block_data.user_block_data_hdr_nbytes, 'I', 1); #fid.seek(1, os.SEEK_CUR); #print 'cksum';fid.close() #subprocess.Popen('cksum /opt/msw/data/spartan_data0/1337/sef+eeg/03%31%09@11:17/1/configT', shell=True) #return #fwrite(fid, 20, pyconfig.user_block_data_hdr_type, 'c', 1); fid.seek(20, os.SEEK_CUR); #fwrite(fid, 1, user_block_data.user_block_data_hdr_checksum, 'i', 1); fid.seek(4, os.SEEK_CUR); #fwrite(fid, 32, pyconfig.user_block_data_user, 'c', 1); fid.seek(32, os.SEEK_CUR); #fwrite(fid, 1, user_block_data.user_block_data_timestamp, 'I', 1); fid.seek(4, os.SEEK_CUR); #fwrite(fid, 1, user_block_data.user_block_data_user_space_size, 'I', 1); fid.seek(4, os.SEEK_CUR); #fwrite(fid, 32, pyconfig.user_block_data_reserved, 'c', 1); fid.seek(32, os.SEEK_CUR); fid.seek(4, os.SEEK_CUR); fid.seek(user_block_data.user_block_data_user_space_size, os.SEEK_CUR) #skip user space
def __init__(self, fid, device_data): align.check(fid); device_header.write(fid, device_data.hdr); fwrite(fid, 1, device_data.impedance, 'f', 1); fid.seek(4, os.SEEK_CUR); fwrite(fid, 4*4, device_data.Xfm, 'd', 1); #self.reserved = ''.join(list(fread(fid, 32, 'c', 'c', 1 ))); fid.seek(32, os.SEEK_CUR);
def __init__(self, fid): align.check(fid); self.position = fread(fid, 3, 'd', 'd', 1)*1000; #convert to mm self.direction = fread(fid, 3, 'd', 'd', 1); self.radius = fread(fid, 1, 'd', 'd', 1); self.wire_radius = fread(fid, 1, 'd', 'd', 1); self.turns = fread(fid, 1, 'H', 'H', 1); fid.seek(2, os.SEEK_CUR); self.checksum = fread(fid, 1, 'i', 'i', 1); self.reserved = fread(fid, 32, 'c', 'c', 1);
def __init__(self, fid, loop_data): align.check(fid); fwrite(fid, 3, loop_data.position/1000, 'd', 1); #convert to meters fwrite(fid, 3, loop_data.direction, 'd', 1); fwrite(fid, 1, loop_data.radius, 'd', 1); fwrite(fid, 1, loop_data.wire_radius, 'd', 1); fwrite(fid, 1, loop_data.turns, 'H', 1); fid.seek(2, os.SEEK_CUR); fwrite(fid, 1, loop_data.checksum, 'i', 1); #fwrite(fid, 32, loop_data.reserved, 'c', 1); fid.seek(32, os.SEEK_CUR);
def __init__(self, fid): align.check(fid); self.hdr = device_header.read(fid); self.inductance = fread(fid, 1, 'f', 'f', 1); fid.seek(4, os.SEEK_CUR); self.Xfm = fread(fid, 4*4, 'd', 'd', 1); self.xform_flag = fread(fid, 1, 'H', 'H', 1); self.total_loops = fread(fid, 1, 'H', 'H', 1); self.reserved = ''.join(list(fread(fid, 32, 'c', 'c', 1))); fid.seek(4, os.SEEK_CUR); self.loop_data = [loop_data.read(fid) for i in range(0, self.total_loops[0])] #read loop data
def __init__(self, fid, event_data): align.check(fid); fid.write(event_data.name); fwrite(fid, 1, event_data.start_lat, 'f', 1); fwrite(fid, 1, event_data.end_lat, 'f', 1); fwrite(fid, 1, event_data.step_size, 'f', 1); fwrite(fid, 1, event_data.fixed_event, 'H', 1); fid.seek(2, os.SEEK_CUR); fwrite(fid, 1, event_data.checksum, 'i', 1); fid.write(event_data.reserved); fid.seek(4, os.SEEK_CUR);
def __init__(self, fid, epoch_data): align.check(fid); fwrite(fid, 1, epoch_data.pts_in_epoch, 'I', 1); fwrite(fid, 1, epoch_data.epoch_duration, 'f', 1); fwrite(fid, 1, epoch_data.expected_iti, 'f', 1); fwrite(fid, 1, epoch_data.actual_iti, 'f', 1); fwrite(fid, 1, epoch_data.total_var_events, 'I', 1); #print self.total_var_events #fwrite(fid, 1, epoch_data.checksum, 'I', 1); fwrite(fid, 1, chksum.__init__(epoch_data), 'i', 1); fwrite(fid, 1, epoch_data.epoch_timestamp, 'i', 1); #fwrite(fid, 28, epoch_data.reserved, 'c', 1); fid.write(epoch_data.reserved)
def __init__(self, fid): align.check(fid); #print 'fid position', fid.tell() self.pts_in_epoch = fread(fid, 1, 'I', 'I', 1); self.epoch_duration = fread(fid, 1, 'f', 'f', 1); self.expected_iti = fread(fid, 1, 'f', 'f', 1); self.actual_iti = fread(fid, 1, 'f', 'f', 1); self.total_var_events = fread(fid, 1, 'I', 'I', 1); #print self.total_var_events self.checksum = fread(fid, 1, 'i', 'i', 1); self.epoch_timestamp = fread(fid, 1, 'i', 'i', 1); #self.reserved = ''.join(list(fread(fid, 28, 'c', 'c', 1))); self.reserved = fid.read(28)
def __init__(self, fid, device_data): align.check(fid); device_header.write(fid, device_data.hdr); fwrite(fid, 1, device_data.inductance, 'f', 1); fid.seek(4, os.SEEK_CUR); fwrite(fid, 4*4, device_data.Xfm, 'd', 1); fwrite(fid, 1, device_data.xform_flag, 'H', 1); fwrite(fid, 1, device_data.total_loops, 'H', 1); #self.reserved = ''.join(list(fread(fid, 32, 'c', 'c', 1))); fid.seek(32, os.SEEK_CUR); fid.seek(4, os.SEEK_CUR); for i in range(0, device_data.total_loops[0]): loop_data.write(fid, device_data.loop_data[i])
def __init__(self, fid): align.check(fid); #self.name = ''.join(list(fread(fid, 16, 'c', 'c', 1))); self.name = fid.read(16) self.start_lat = fread(fid, 1, 'f', 'f', 1); self.end_lat = fread(fid, 1, 'f', 'f', 1); self.step_size = fread(fid, 1, 'f', 'f', 1); self.fixed_event = fread(fid, 1, 'H', 'H', 1); fid.seek(2, os.SEEK_CUR); self.checksum = fread(fid, 1, 'i', 'i', 1); #self.reserved = ''.join(list(fread(fid, 32, 'c', 'c', 1))); self.reserved = fid.read(32) fid.seek(4, os.SEEK_CUR);
def __init__(self, fid, proc_data): align.check(fid) fwrite(fid, 1, proc_data.nbytes, 'I', 1); fid.write(proc_data.type) fwrite(fid, 1, proc_data.checksum, 'i', 1); fid.write(proc_data.user) fwrite(fid, 1, proc_data.timestamp, 'I', 1); fid.write(proc_data.filename) fwrite(fid, 1, proc_data.total_steps, 'I', 1); fid.write(proc_data.reserved) align.check(fid) try: #print 'proc_step', proc_data.total_steps[0], fid.tell() self.proc_step = [proc_step.write(fid, proc_data.proc_step[j]) for j in range(0, proc_data.total_steps[0])] except AttributeError: pass #no processing step data. skip
def __init__(self, fid): align.check(fid) self.nbytes = fread(fid, 1, 'I', 'I', 1); self.type = fid.read(20) self.checksum = fread(fid, 1, 'i', 'i', 1); self.user = fid.read(32) self.timestamp = fread(fid, 1, 'I', 'I', 1); self.filename = fid.read(256) self.total_steps = fread(fid, 1, 'I', 'I', 1); self.reserved = fid.read(32) align.check(fid) try: #print 'proc_step', self.total_steps[0], fid.tell() self.proc_step = [proc_step.read(fid) for j in range(0, self.total_steps[0])] except MemoryError: print 'memory error at', fid.tell()
def __init__(self, fid, channel_ref_data): align.check(fid); fid.write(channel_ref_data.chan_label); fwrite(fid, 1, channel_ref_data.chan_no, 'H', 1); fwrite(fid, 1, channel_ref_data.attributes, 'H', 1); fwrite(fid, 1, channel_ref_data.scale, 'f', 1); fid.write(channel_ref_data.yaxis_label); fwrite(fid, 1, channel_ref_data.valid_min_max, 'H', 1); fid.seek(6, os.SEEK_CUR); fwrite(fid, 1, channel_ref_data.ymin, 'd', 1); fwrite(fid, 1, channel_ref_data.ymax, 'd', 1); fwrite(fid, 1, channel_ref_data.index, 'I', 1); #fwrite(fid, 1, channel_ref_data.checksum, 'i', 1); fwrite(fid, 1, chksum.__init__(channel_ref_data), 'i', 1); #%something new? fid.write(channel_ref_data.whatisit); fid.write(channel_ref_data.reserved);
def __init__(self, fid): align.check(fid); self.user_block_data_hdr_nbytes = fread(fid, 1, 'I', 'I', 1); #4 bytes self.user_block_data_hdr_type = ''.join(list(fread(fid, 20, 'c', 'c', 1))); #20b self.user_block_data_hdr_checksum = fread(fid, 1, 'i', 'i', 1);#4b self.user_block_data_user = fread(fid, 32, 'c', 'c', 1);#32b self.user_block_data_timestamp = fread(fid, 1, 'I', 'I', 1);#4b self.user_block_data_user_space_size = fread(fid, 1, 'I', 'I', 1);#4b self.user_block_data_reserved = fread(fid, 32, 'c', 'c', 1);#32 fid.seek(4, os.SEEK_CUR);#4b if self.user_block_data_hdr_type == 'B_weights_used': st = fid.tell() print('WEIGHTS',(st,self.user_block_data_user_space_size)) if self.user_block_data_hdr_type == 'b_eeg_elec_locs': st = fid.tell() coillabel1=''.join(list(fread(fid, 16, 'c', 'c', 1))); self.lpa = fread(fid,3,'d','d',1) fid.seek(16,1) self.rpa = fread(fid,3,'d','d',1) fid.seek(16,1) self.nas = fread(fid,3,'d','d',1) fid.seek(16,1) self.cz = fread(fid,3,'d','d',1) fid.seek(16,1) self.inion = fread(fid,3,'d','d',1) fid.seek(st,0) if self.user_block_data_hdr_type == 'B_COH_Points': self.coil_locations = [] st = fid.tell() for i in arange(5): fid.seek(16,1) self.coil_locations.append(fread(fid,3,'d','d',1)) self.coil_locations = vstack(self.coil_locations) fid.seek(st,0) #print self.user_block_data_hdr_type, fid.tell(), self.user_block_data_user_space_size fid.seek(self.user_block_data_user_space_size, os.SEEK_CUR) #skip user space
def __init__(self, fid): align.check(fid) self.nbytes_step = fread(fid, 1, 'I', 'I', 1); self.type = fid.read(20) self.checksum = fread(fid, 1, 'i', 'i', 1); #Process Step Struct T = ''.join(self.type.split('\x00')) if T == 'b_filt_hp' or T == 'b_filt_lp' or T == 'b_filt_notch': self.frequency = fread(fid, 1, 'f', 'f', 1) self.reserved = fid.read(32) elif T == 'b_filt_b_pass' or T == 'b_filt_b_reject': self.high_frequency = fread(fid, 1, 'f', 'f', 1) self.low_frequency = fread(fid, 1, 'f', 'f', 1) self.reserved = fid.read(32) fid.seek(4, os.SEEK_CUR) #align else: self.user_space_size = fread(fid, 1, 'I', 'I', 1); self.reserved = fid.read(32) self.user_data = fid.read(self.user_space_size)
def __init__(self, fid): align.check(fid); #self.chan_label = ''.join(list(fread(fid, 16, 'c', 'c', 1))); self.chan_label = fid.read(16) self.chan_no = fread(fid, 1, 'H', 'H', 1); self.attributes = fread(fid, 1, 'H', 'H', 1); self.scale = fread(fid, 1, 'f', 'f', 1); #self.yaxis_label = ''.join(list(fread(fid, 16, 'c', 'c', 1))); self.yaxis_label = fid.read(16) self.valid_min_max = fread(fid, 1, 'H', 'H', 1); fid.seek(6, os.SEEK_CUR); self.ymin = fread(fid, 1, 'd', 'd', 1); self.ymax = fread(fid, 1, 'd', 'd', 1); self.index = fread(fid, 1, 'I', 'I', 1); self.checksum = fread(fid, 1, 'i', 'i', 1); #%something new? #self.whatisit = ''.join(list(fread(fid, 4, 'c', 'c', 1))); self.whatisit = fid.read(4) #self.reserved = ''.join(list(fread(fid, 28, 'c', 'c', 1))); self.reserved = fid.read(28)
def __init__(self, fid, proc_step): align.check(fid) fwrite(fid, 1, proc_step.nbytes_step, 'I', 1); fid.write(proc_step.type) fwrite(fid, 1, chksum.__init__(proc_step), 'i', 1); #Process Step Struct T = ''.join(proc_step.type.split('\x00')) if T == 'b_filt_hp' or T == 'b_filt_lp' or T == 'b_filt_notch': fwrite(fid, 1, proc_step.frequency, 'f', 1) fid.write(proc_step.reserved) elif T == 'b_filt_b_pass' or T == 'b_filt_b_reject': fwrite(fid, 1, proc_step.high_frequency, 'f', 1) fwrite(fid, 1, proc_step.low_frequency, 'f', 1) fid.write(proc_step.reserved) fid.seek(4, os.SEEK_CUR) #align else: fwrite(fid, 1, proc_step.user_space_size, 'I', 1); fid.write(proc_step.reserved) fid.write(proc_step.user_data)
def __init__(self, fid): align.check(fid); self.hdr = device_header.read(fid); self.reserved = ''.join(list(fread(fid, 32, 'c', 'c', 1 )));
def __init__(self, fid): align.check(fid); self.hdr = device_header.read(fid); self.user_space_size = fread(fid, 1, 'I', 'I', 1); self.reserved = ''.join(list(fread(fid, 32, 'c', 'c', 1 ))); fid.seek(4, os.SEEK_CUR);
def __init__(self, fid): align.check(fid);
def __init__(self, fid): align.check(fid); self.chan_label = fread(fid, 16, 'c', 'c', 1);