def __init__(self): QtWidgets.QApplication.__init__(self,['']) ############# LOGIC CONTROL ################## self.isconnected = Value('b',1) self.trigger_server_activated = False self.streaming = Value('b',0) ############### INIT CONSTANTS DEFINITION ########################### self.constants = constants() ######### slots manager for multiple callbacks settings ############# self.slots = SlotsManager() ########### queue ########### self.queue = Queue() ################ BUFFER #################### self.buffer = buffer(self.constants) self.buffer.emitter.connect(self.slots.trigger) ################ INIT DATA MANAGER ##################### self.eeg_dmg = data_manager_openBCI(self.constants, self.queue, self.buffer, self.slots) self.eeg_dmg.start() ################# INIT GUI ################################ self.gui = GUI(self, callbacks = [self.connection_manager, self.test_acquisition, self.launch_trigger_server, self.saveFileDialog, self.openFileNameDialog]) ########## LOGGER #################### self.log = log.logger(self.gui.bci_graph.logger) ####### INIT DRIVER ########### self.driver = openBCI(self.queue, self.streaming, self.isconnected, self.log) self.driver.start()
def __init__(self): QtWidgets.QApplication.__init__(self,['']) ############# LOGIC CONTROL ################## self.isconnected = Value('b',1) ############### INIT CONSTANTS DEFINITION ########################### self.constants = constants() ######### slots manager for multiple callbacks settings ############# self.slots = SlotsManager() ########### queue ########### self.queue = Queue() ##### TRIGGER SERVER ############ self.trigger_server = trigger_server(self.constants.ADDRESS, self.constants.PORT) ################ BUFFER #################### self.buffer = buffer(self.constants) self.buffer.emitter.connect(self.slots.trigger) ################ INIT DATA MANAGER ##################### self.eeg_dmg = data_manager_openBCI(self) self.eeg_dmg.start() ###### INIT tcp/ip INTERFACE FOR DATA ACQUISITION self.recording_manager = recording_manager(self) ################# INIT GUI ################################ self.gui = GUI(self, callbacks = [self.connection_manager, self.recording_manager.test_acquisition, self.recording_manager.update_state, self.saveFileDialog, self.openFileNameDialog]) ########## LOGGER #################### self.log = log.logger(self.gui) ####### INIT DRIVER ########### self.driver = openBCI(self.queue, self.recording_manager.streaming, self.isconnected, self.log) self.driver.start()
def __init__(self): QtWidgets.QApplication.__init__(self, ['']) #Inicia la aplicación de QT ############# LOGIC CONTROL ################## self.isconnected = Value( 'b', 1 ) #Devuelve una "Envoltura de Sincronización" de tipo byte con valor 1 # Iniciar Constantes self.constants = constants() ######### slots manager for multiple callbacks settings ############# self.slots = SlotsManager() # Iniciar Encolamiento self.queue = Queue() self.queue_even = Queue() self.queue_odd = Queue() ##### TRIGGER SERVER ############ self.trigger_server = trigger_server(self.constants.ADDRESS, self.constants.PORT) # Iniciar buffer donde se guardan los datos de los sensores self.buffer = buffer(self.constants) self.buffer.emitter.connect( self.slots.trigger) ##### Ejecuta el evento para los callbacks?? # Iniciar manejo de datos self.eeg_dmg = data_manager_openBCI(self) #Envía toda la clase MYAPP self.eeg_dmg.start() # Iniciar interfaz TCP/IP para adquisición de datos self.recording_manager = recording_manager( self) #Introduce la propia aplicación # Iniciar Aplicación GUI: envía la aplicación completa y una lista de callbacks # CALLBACKS: conjunto de acciones ante las que debe dar una respuesta = conexión, adquisición, actualización, guardar o cargar/abrir self.gui = GUI(self, callbacks=[ self.connection_manager, self.recording_manager.test_acquisition, self.recording_manager.update_state, self.saveFileDialog, self.openFileNameDialog ]) ########## LOGGER #################### self.log = log.logger( self.gui) #Introducir la aplicación GUI previamente creada # Iniciar Driver self.driver = openBCI( self, self.queue, self.queue_even, self.queue_odd, self.recording_manager.streaming, self.isconnected, self.log ) #Introduce la cola, los estados del streaming y de conexión y el logger self.driver.start()
def __init__(self, signal=None, signal_numbers=None, seconds=None, sample_rate=None): ############### CONSTANTS ###################### self.PATH = None self.SIGNAL = signal self.SIGNAL_NUMBERS = signal_numbers self.SECONDS = seconds self.SAMPLE_RATE = sample_rate self.WINDOW = self.SAMPLE_RATE * self.SECONDS self.freqTask = self.SAMPLE_RATE ############### data save trigger self.io = edf_writter(self.SIGNAL_NUMBERS + 1, self.SAMPLE_RATE) self.allData = [] self.current_trial = 0 ############### buffer ######################## self.buffer = buffer(channels=self.SIGNAL_NUMBERS + 1, num_samples=self.WINDOW, sample_rate=self.SAMPLE_RATE) # self.trigger_control = None ###### mutex lock self.mutexBuffer = Lock()
import numpy as np import pickle ############# EXTERNAL LIBRARIES ###################################### from PyQt5 import QtWidgets from multiprocessing import Queue, Value isconnected = Value('b', 1) streaming = Value('b', 0) ############### INIT CONSTANTS DEFINITION ########################### constants = constants() ######### slots manager for multiple callbacks settings ############# slots = SlotsManager() ########### queue ########### queue = Queue() ################ BUFFER #################### buffer = buffer(constants) buffer.emitter.connect(slots.trigger) ################ INIT DATA MANAGER ##################### eeg_dmg = data_manager_openBCI(constants, queue, buffer, slots) eeg_dmg.start() from FEATURES.online_features_02 import compute_online_features from multiprocessing import Process, Array from sklearn.externals import joblib import numpy as np import pickle # callbacks isstored = True trial = 0