|
35 | 35 | RectangularRegionOfInterest, |
36 | 36 | CircularRegionOfInterest, |
37 | 37 | PolygonRegionOfInterest, |
| 38 | + NeoReadWriteError |
38 | 39 | ) |
39 | 40 |
|
40 | 41 | read_error = "This type is not supported by this file format for reading" |
@@ -139,7 +140,7 @@ def read(self, lazy: bool = False, **kargs): |
139 | 140 | Returns all the data from the file as Blocks |
140 | 141 | """ |
141 | 142 | if lazy and not self.support_lazy: |
142 | | - raise ValueError("This IO module does not support lazy loading") |
| 143 | + raise NeoReadWriteError("This IO module does not support lazy loading") |
143 | 144 | if Block in self.readable_objects: |
144 | 145 | if hasattr(self, "read_all_blocks") and callable(getattr(self, "read_all_blocks")): |
145 | 146 | return self.read_all_blocks(lazy=lazy, **kargs) |
@@ -167,97 +168,121 @@ def write(self, bl, **kargs): |
167 | 168 | """ |
168 | 169 | if Block in self.writeable_objects: |
169 | 170 | if isinstance(bl, Sequence): |
170 | | - assert hasattr( |
171 | | - self, "write_all_blocks" |
172 | | - ), f"{self.__class__.__name__} does not offer to store a sequence of blocks" |
| 171 | + if not hasattr(self, "write_all_blocks"): |
| 172 | + raise NeoReadWriteError(f"{self.__class__.__name__} does not offer to store a sequence of blocks") |
173 | 173 | self.write_all_blocks(bl, **kargs) |
174 | 174 | else: |
175 | 175 | self.write_block(bl, **kargs) |
176 | 176 | elif Segment in self.writeable_objects: |
177 | | - assert len(bl.segments) == 1, ( |
178 | | - f"{self.__class__.__name__} is based on segment so if you try to write a block it " |
179 | | - + "must contain only one Segment" |
180 | | - ) |
| 177 | + if len(bl.segments) != 1: |
| 178 | + raise NeoReadWriteError(f"{self.__class__.__name__} is based on segment so if you try to write a block it " |
| 179 | + + "must contain only one Segment") |
181 | 180 | self.write_segment(bl.segments[0], **kargs) |
182 | 181 | else: |
183 | 182 | raise NotImplementedError |
184 | 183 |
|
185 | 184 | ######## All individual read methods ####################### |
186 | 185 | def read_block(self, **kargs): |
187 | | - assert Block in self.readable_objects, read_error |
| 186 | + if Block not in self.readable_objects: |
| 187 | + raise NeoReadWriteError(read_error) |
188 | 188 |
|
189 | 189 | def read_segment(self, **kargs): |
190 | | - assert Segment in self.readable_objects, read_error |
| 190 | + if Segment not in self.readable_objects: |
| 191 | + raise NeoReadWriteError(read_error) |
191 | 192 |
|
192 | 193 | def read_spiketrain(self, **kargs): |
193 | | - assert SpikeTrain in self.readable_objects, read_error |
| 194 | + if SpikeTrain not in self.readable_objects: |
| 195 | + raise NeoReadWriteError(read_error) |
194 | 196 |
|
195 | 197 | def read_analogsignal(self, **kargs): |
196 | | - assert AnalogSignal in self.readable_objects, read_error |
| 198 | + if AnalogSignal not in self.readable_objects: |
| 199 | + raise NeoReadWriteError(read_error) |
197 | 200 |
|
198 | 201 | def read_imagesequence(self, **kargs): |
199 | | - assert ImageSequence in self.readable_objects, read_error |
| 202 | + if ImageSequence not in self.readable_objects: |
| 203 | + raise NeoReadWriteError(read_error) |
200 | 204 |
|
201 | 205 | def read_rectangularregionofinterest(self, **kargs): |
202 | | - assert RectangularRegionOfInterest in self.readable_objects, read_error |
| 206 | + if RectangularRegionOfInterest not in self.readable_objects: |
| 207 | + raise NeoReadWriteError(read_error) |
203 | 208 |
|
204 | 209 | def read_circularregionofinterest(self, **kargs): |
205 | | - assert CircularRegionOfInterest in self.readable_objects, read_error |
| 210 | + if CircularRegionOfInterest not in self.readable_objects: |
| 211 | + raise NeoReadWriteError(read_error) |
206 | 212 |
|
207 | 213 | def read_polygonregionofinterest(self, **kargs): |
208 | | - assert PolygonRegionOfInterest in self.readable_objects, read_error |
| 214 | + if PolygonRegionOfInterest not in self.readable_objects: |
| 215 | + raise NeoReadWriteError(read_error) |
209 | 216 |
|
210 | 217 | def read_irregularlysampledsignal(self, **kargs): |
211 | | - assert IrregularlySampledSignal in self.readable_objects, read_error |
| 218 | + if IrregularlySampledSignal not in self.readable_objects: |
| 219 | + raise NeoReadWriteError(read_error) |
212 | 220 |
|
213 | 221 | def read_channelview(self, **kargs): |
214 | | - assert ChannelView in self.readable_objects, read_error |
| 222 | + if ChannelView not in self.readable_objects: |
| 223 | + raise NeoReadWriteError(read_error) |
215 | 224 |
|
216 | 225 | def read_event(self, **kargs): |
217 | | - assert Event in self.readable_objects, read_error |
| 226 | + if Event not in self.readable_objects: |
| 227 | + raise NeoReadWriteError(read_error) |
218 | 228 |
|
219 | 229 | def read_epoch(self, **kargs): |
220 | | - assert Epoch in self.readable_objects, read_error |
| 230 | + if Epoch not in self.readable_objects: |
| 231 | + raise NeoReadWriteError(read_error) |
221 | 232 |
|
222 | 233 | def read_group(self, **kargs): |
223 | | - assert Group in self.readable_objects, read_error |
| 234 | + if Group not in self.readable_objects: |
| 235 | + raise NeoReadWriteError(read_error) |
224 | 236 |
|
225 | 237 | ######## All individual write methods ####################### |
226 | 238 | def write_block(self, bl, **kargs): |
227 | | - assert Block in self.writeable_objects, write_error |
| 239 | + if Block not in self.writeable_objects: |
| 240 | + raise NeoReadWriteError(write_error) |
228 | 241 |
|
229 | 242 | def write_segment(self, seg, **kargs): |
230 | | - assert Segment in self.writeable_objects, write_error |
| 243 | + if Segment not in self.writeable_objects: |
| 244 | + raise NeoReadWriteError(write_error) |
231 | 245 |
|
232 | 246 | def write_spiketrain(self, sptr, **kargs): |
233 | | - assert SpikeTrain in self.writeable_objects, write_error |
| 247 | + if SpikeTrain not in self.writeable_objects: |
| 248 | + raise NeoReadWriteError(write_error) |
234 | 249 |
|
235 | 250 | def write_analogsignal(self, anasig, **kargs): |
236 | | - assert AnalogSignal in self.writeable_objects, write_error |
| 251 | + if AnalogSignal not in self.writeable_objects: |
| 252 | + raise NeoReadWriteError(write_error) |
237 | 253 |
|
238 | 254 | def write_imagesequence(self, imseq, **kargs): |
239 | | - assert ImageSequence in self.writeable_objects, write_error |
| 255 | + if ImageSequence not in self.writeable_objects: |
| 256 | + raise NeoReadWriteError(write_error) |
240 | 257 |
|
241 | 258 | def write_rectangularregionofinterest(self, rectroi, **kargs): |
242 | | - assert RectangularRegionOfInterest in self.writeable_objects, read_error |
| 259 | + if RectangularRegionOfInterest not in self.writeable_objects: |
| 260 | + raise NeoReadWriteError(write_error) |
243 | 261 |
|
244 | 262 | def write_circularregionofinterest(self, circroi, **kargs): |
245 | | - assert CircularRegionOfInterest in self.writeable_objects, read_error |
| 263 | + if CircularRegionOfInterest not in self.writeable_objects: |
| 264 | + raise NeoReadWriteError(write_error) |
246 | 265 |
|
247 | 266 | def write_polygonregionofinterest(self, polyroi, **kargs): |
248 | | - assert PolygonRegionOfInterest in self.writeable_objects, read_error |
| 267 | + if PolygonRegionOfInterest not in self.writeable_objects: |
| 268 | + raise NeoReadWriteError(write_error) |
249 | 269 |
|
250 | 270 | def write_irregularlysampledsignal(self, irsig, **kargs): |
251 | | - assert IrregularlySampledSignal in self.writeable_objects, write_error |
| 271 | + if IrregularlySampledSignal not in self.writeable_objects: |
| 272 | + raise NeoReadWriteError(write_error) |
252 | 273 |
|
253 | 274 | def write_channelview(self, chv, **kargs): |
254 | | - assert ChannelView in self.writeable_objects, write_error |
| 275 | + if ChannelView not in self.writeable_objects: |
| 276 | + raise NeoReadWriteError(write_error) |
255 | 277 |
|
256 | 278 | def write_event(self, ev, **kargs): |
257 | | - assert Event in self.writeable_objects, write_error |
| 279 | + if Event not in self.writeable_objects: |
| 280 | + raise NeoReadWriteError(write_error) |
258 | 281 |
|
259 | 282 | def write_epoch(self, ep, **kargs): |
260 | | - assert Epoch in self.writeable_objects, write_error |
| 283 | + if Epoch not in self.writeable_objects: |
| 284 | + raise NeoReadWriteError(write_error) |
261 | 285 |
|
262 | 286 | def write_group(self, group, **kargs): |
263 | | - assert Group in self.writeable_objects, write_error |
| 287 | + if Group not in self.writeable_objects: |
| 288 | + raise NeoReadWriteError(write_error) |
0 commit comments