def test_neoviewer(): #TODO make autorun neo tdtrawio test before from neo.rawio.tdtrawio import TdtRawIO dirname = '/tmp/files_for_testing_neo/tdt/aep_05/' neorawio = TdtRawIO(dirname=dirname) neorawio.parse_header() print(neorawio) sources = ephyviewer.get_sources_from_neo_rawio(neorawio) app = ephyviewer.mkQApp() win = ephyviewer.MainViewer(debug=True, show_auto_scale=True) for i, sig_source in enumerate(sources['signal']): view = ephyviewer.TraceViewer(source=sig_source, name='signal {}'.format(i)) win.add_view(view) for i, ep_source in enumerate(sources['epoch']): view = ephyviewer.EpochViewer(source=ep_source, name='epochs') win.add_view(view) win.show() app.exec_()
def test_neoviewer(interactive=False): from neo.rawio.tdtrawio import TdtRawIO local_test_dir = get_tdt_test_files() dirname = os.path.join(local_test_dir, 'aep_05') neorawio = TdtRawIO(dirname=dirname) neorawio.parse_header() print(neorawio) sources = ephyviewer.get_sources_from_neo_rawio(neorawio) app = ephyviewer.mkQApp() win = ephyviewer.MainViewer(debug=True, show_auto_scale=True) for i, sig_source in enumerate(sources['signal']): view = ephyviewer.TraceViewer(source=sig_source, name='signal {}'.format(i)) win.add_view(view) for i, ep_source in enumerate(sources['epoch']): view = ephyviewer.EpochViewer(source=ep_source, name='epochs') win.add_view(view) if interactive: win.show() app.exec_() else: # close thread properly win.close()
def test_neo_rawio_sources(): from neo.rawio.tdtrawio import TdtRawIO local_test_dir = get_tdt_test_files() dirname = os.path.join(local_test_dir, 'aep_05') neorawio = TdtRawIO(dirname=dirname) neorawio.parse_header() print(neorawio) sources = ephyviewer.get_sources_from_neo_rawio(neorawio) #~ print(sources) for s in sources['signal']: print(s.t_start, s.nb_channel, s.sample_rate) print(s.get_chunk(i_start=0, i_stop=1024).shape) for s in sources['epoch']: print(s.t_start, s.nb_channel) #~ print(s.get_chunk(i_start=0, i_stop=1024).shape) print(s.get_chunk_by_time(chan=0, t_start=None, t_stop=None)) for s in sources['spike']: print(s.t_start, s.nb_channel) print(s.get_chunk_by_time(chan=0, t_start=None, t_stop=None))
def test_neo_rawio_sources(): #TODO make autorun neo tdtrawio test before from neo.rawio.tdtrawio import TdtRawIO dirname = '/tmp/files_for_testing_neo/tdt/aep_05/' neorawio = TdtRawIO(dirname=dirname) neorawio.parse_header() print(neorawio) sources = ephyviewer.get_sources_from_neo_rawio(neorawio) #~ print(sources) for s in sources['signal']: print(s.t_start, s.nb_channel, s.sample_rate) print(s.get_chunk(i_start=0, i_stop=1024).shape) for s in sources['epoch']: print(s.t_start, s.nb_channel) #~ print(s.get_chunk(i_start=0, i_stop=1024).shape) print(s.get_chunk_by_time(chan=0, t_start=None, t_stop=None)) for s in sources['spike']: print(s.t_start, s.nb_channel) print(s.get_chunk_by_time(chan=0, t_start=None, t_stop=None))
def __init__(self, dirname): TdtRawIO.__init__(self, dirname=dirname) BaseFromRaw.__init__(self, dirname)
def test_compare_load_multi_single_block(self): dirname = self.get_local_path('tdt/aep_05') filename = self.get_local_path('tdt/aep_05/Block-1/aep_05_Block-1.Tdx') io_single = TdtRawIO(filename) io_multi = TdtRawIO(dirname) io_single.parse_header() io_multi.parse_header() self.assertEqual(io_single.tdt_block_mode, 'single') self.assertEqual(io_multi.tdt_block_mode, 'multi') self.assertEqual(io_single.block_count(), 1) self.assertEqual(io_multi.block_count(), 1) self.assertEqual(io_single.segment_count(0), 1) self.assertEqual(io_multi.segment_count(0), 2) # compare header infos assert_array_equal(io_single.header['signal_streams'], io_multi.header['signal_streams']) assert_array_equal(io_single.header['signal_channels'], io_multi.header['signal_channels']) assert_array_equal(io_single.header['event_channels'], io_multi.header['event_channels']) # not all spiking channels are present in first tdt block (segment) for spike_channel in io_single.header['spike_channels']: self.assertIn(spike_channel, io_multi.header['spike_channels']) # check that extracted signal chunks are identical assert_array_equal(io_single.get_analogsignal_chunk(0, 0, 0, 100, 0), io_multi.get_analogsignal_chunk(0, 0, 0, 100, 0))
def test_invalid_dirname(self): invalid_name = 'random_non_existant_tdt_filename' assert not Path(invalid_name).exists() with self.assertRaises(ValueError): TdtRawIO(invalid_name)