コード例 #1
0
 def setUp(self):
     source = EEGTablePacketSource()
     source.convert()
     self.collector = EEGDataCollector(source, FIELDS, WINDOW_SIZE)
     dataHandler = lambda x: x
     self.collector.setHandler(dataHandler)
     self.notifyCalled = 0
コード例 #2
0
ファイル: util_test.py プロジェクト: ppasler/current-adas
class TestEEGTableToPacketUtil(unittest.TestCase):

    def setUp(self):
        self.util = EEGTablePacketSource()
        self.util.convert()

    def test_dequeue(self):
        data = self.util.dequeue() 
        self.assertEquals(len(data.sensors), 17)
        self.assertTrue("X" in data.sensors.keys())
        self.assertTrue("quality" in data.sensors["X"].keys())
コード例 #3
0
class TestEEGTableToPacketConverter(unittest.TestCase):

    def setUp(self):
        self.converter = EEGTablePacketSource(FILE_PATH, False)

    def test_convert_sunshine(self):
        self.assertFalse(self.converter.hasMore)
        self.converter.convert()
        self.assertTrue(self.converter.hasMore)
        for _ in range(0, len(self.converter.data)):
            self.converter.dequeue()
        self.assertFalse(self.converter.hasMore)
コード例 #4
0
 def setUp(self):
     self.converter = EEGTablePacketSource(FILE_PATH, False)
コード例 #5
0
ファイル: emotiv.py プロジェクト: ppasler/current-adas
 def setup_windows(self):
     """
     Setup for headset on the Windows platform. 
     """
     global deviceConnected        
     devices = []
     try:
         for device in hid.find_all_hid_devices():
             if device.vendor_id != 0x1234 and device.vendor_id != 0xED02:
                 continue
             if device.product_name == 'Brain Waves':
                 devices.append(device)
                 device.open()
                 self.serial_number = device.serial_number
                 device.set_raw_data_handler(self.handler)
             elif device.product_name == 'EPOC BCI':
                 devices.append(device)
                 device.open()
                 self.serial_number = device.serial_number
                 device.set_raw_data_handler(self.handler)
             elif device.product_name == '00000000000':
                 devices.append(device)
                 device.open()
                 self.serial_number = device.serial_number
                 device.set_raw_data_handler(self.handler)
             elif device.product_name == 'Emotiv RAW DATA':
                 devices.append(device)
                 device.open()
                 self.serial_number = device.serial_number
                 device.set_raw_data_handler(self.handler)
             elif device.product_name == 'EEG Signals':
                 devices.append(device)
                 device.open()
                 self.serial_number = device.serial_number
                 device.set_raw_data_handler(self.handler)
         deviceConnected = (len(devices) > 0)
         if deviceConnected:            
             crypto = gevent.spawn(self.setup_crypto, self.serial_number)      
             console_updater = gevent.spawn(self.update_console)
             if self.write_to_file:
                 print "Writing to file: " + fname
                 if os.path.isfile(fname) == False:
                     header = 'Timestamp;';
                     for k in enumerate(self.sensors):
                         header = header + k[1] + ';';
                     header = header + 'QY;QF3;QF4;QP7;QFC6;QF7;QF8;QT7;QP8;QFC5;QAF4;QUnknown;QT8;QX;QO2;QO1;QAF3'
                        
                     with open(fname, 'w') as f:
                         f.write(header + '\n')
                         f.close()
                 file_updater = gevent.spawn(self.update_file)
         else:
             global eegTableData
             filePath = scriptPath + "/../../../captured_data/janis/parts/2016-07-12-11-15_EEG_4096.csv"
             eegTableData = EEGTablePacketSource(filePath)
             eegTableData.convert()
         while self.running:
             try:
                 gevent.sleep(0)
             except KeyboardInterrupt:
                 self.running = False
             
     finally:
         if deviceConnected: 
             for device in devices:
                 device.close()
        
             gevent.kill(crypto, KeyboardInterrupt)
             gevent.kill(console_updater, KeyboardInterrupt)
             if self.write_to_file:
                 gevent.kill(file_updater, KeyboardInterrupt)
コード例 #6
0
ファイル: util_test.py プロジェクト: ppasler/current-adas
 def setUp(self):
     self.util = EEGTablePacketSource()
     self.util.convert()