@@ -104,8 +104,8 @@ def _parse_header(self):
104104 # signals
105105 signal_channels = []
106106 for c , chan_info in enumerate (self ._ordered_channels ):
107- name = chan_info ["native_channel_name " ]
108- chan_id = str ( c ) # the chan_id have no meaning in intan
107+ name = chan_info ["custom_channel_name " ]
108+ channel_id = chan_info [ "native_channel_name" ]
109109 if chan_info ["signal_type" ] == 20 :
110110 # exception for temperature
111111 sig_dtype = "int16"
@@ -115,7 +115,7 @@ def _parse_header(self):
115115 signal_channels .append (
116116 (
117117 name ,
118- chan_id ,
118+ channel_id ,
119119 chan_info ["sampling_rate" ],
120120 sig_dtype ,
121121 chan_info ["units" ],
@@ -165,9 +165,9 @@ def _get_signal_size(self, block_index, seg_index, stream_index):
165165 stream_id = self .header ["signal_streams" ][stream_index ]["id" ]
166166 mask = self .header ["signal_channels" ]["stream_id" ] == stream_id
167167 signal_channels = self .header ["signal_channels" ][mask ]
168- channel_names = signal_channels ["name " ]
169- chan_name0 = channel_names [0 ]
170- size = self ._raw_data [chan_name0 ].size
168+ channel_ids = signal_channels ["id " ]
169+ channel_id_0 = channel_ids [0 ]
170+ size = self ._raw_data [channel_id_0 ].size
171171 return size
172172
173173 def _get_signal_t_start (self , block_index , seg_index , stream_index ):
@@ -185,9 +185,9 @@ def _get_analogsignal_chunk(self, block_index, seg_index, i_start, i_stop, strea
185185 signal_channels = self .header ["signal_channels" ][mask ]
186186 if channel_indexes is None :
187187 channel_indexes = slice (None )
188- channel_names = signal_channels ["name " ][channel_indexes ]
188+ channel_ids = signal_channels ["id " ][channel_indexes ]
189189
190- shape = self ._raw_data [channel_names [0 ]].shape
190+ shape = self ._raw_data [channel_ids [0 ]].shape
191191
192192 # some channel (temperature) have 1D field so shape 1D
193193 # because 1 sample per block
@@ -200,13 +200,14 @@ def _get_analogsignal_chunk(self, block_index, seg_index, i_start, i_stop, strea
200200 sl0 = i_start % block_size
201201 sl1 = sl0 + (i_stop - i_start )
202202
203- sigs_chunk = np .zeros ((i_stop - i_start , len (channel_names )), dtype = "uint16" )
204- for i , chan_name in enumerate (channel_names ):
205- data_chan = self ._raw_data [chan_name ]
203+ sigs_chunk = np .zeros ((i_stop - i_start , len (channel_ids )), dtype = "uint16" )
204+ for channel_index , channel_id in enumerate (channel_ids ):
205+ # Memmap fields are the channel_ids for unique channels
206+ data_chan = self ._raw_data [channel_id ]
206207 if len (shape ) == 1 :
207- sigs_chunk [:, i ] = data_chan [i_start :i_stop ]
208+ sigs_chunk [:, channel_index ] = data_chan [i_start :i_stop ]
208209 else :
209- sigs_chunk [:, i ] = data_chan [block_start :block_stop ].flatten ()[sl0 :sl1 ]
210+ sigs_chunk [:, channel_index ] = data_chan [block_start :block_stop ].flatten ()[sl0 :sl1 ]
210211
211212 return sigs_chunk
212213
0 commit comments