Example #1
0
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()
Example #3
0
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))
Example #4
0
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))
Example #5
0
 def __init__(self, dirname):
     TdtRawIO.__init__(self, dirname=dirname)
     BaseFromRaw.__init__(self, dirname)
Example #6
0
 def __init__(self, dirname):
     TdtRawIO.__init__(self, dirname=dirname)
     BaseFromRaw.__init__(self, dirname)
Example #7
0
    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))
Example #8
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)