Example #1
0
 def check_input(self):
     for event in pygame.event.get():
         if event.type == pygame.QUIT:
             self.quit()
         elif event.type == pygame.KEYDOWN:
             if event.key == pygame.K_ESCAPE:
                 self.quit()
             elif event.key == pygame.K_0:
                 if self.loc == 'lab':
                     self.daq.set_volts_zero()
                 elif self.loc == 'scanner':
                     self.scanner_daq.set_volts_zero()
             elif event.key == pygame.K_m:
                 if self.input_mode == 'mouse':
                     self.input_mode = 'sensor'
                 elif self.input_mode == 'sensor':
                     self.input_mode = 'mouse'
             elif event.key == pygame.K_d:
                 self.debug_bool = not self.debug_bool
             elif event.key == pygame.K_s:
                 self.nfb_info_bool = not self.nfb_info_bool
             elif event.key == pygame.K_SPACE:
                 self.run_type = 's_p'
                 gr.reset_for_next_run(self)
                 self.run_mode = 'trials'
             elif event.key == pygame.K_7:
                 self.run_mode = 'mvc'
             elif event.key == pygame.K_8:
                 gn.set_mode('loc', self.SERVER_TARGET)
                 self.run_type = 'loc'
                 self.next_run_msg = 'Ready for Localizer'
             elif event.key == pygame.K_9:
                 gn.set_mode('nfb', self.SERVER_TARGET)
                 self.run_type = 'nfb'
                 self.next_run_msg = ('Ready for Run '
                     + str(game.nfb_run_count + 1) + ' of 4')
             elif event.key == pygame.K_5:
                 if ((self.run_type == 'loc'
                         or self.run_type == 'nfb')
                         and self.run_mode == 'idle'):
                     self.run_mode = 'trials'
                     self.next_run_msg = ''
                     gr.reset_for_next_run(self)
             # control of insta_server
             elif event.key == pygame.K_g:
                 gn.set_mode('idle', self.SERVER_TARGET)
             elif event.key == pygame.K_h:
                 gn.set_mode('rai', self.SERVER_TARGET)
             elif event.key == pygame.K_j:
                 gn.set_mode('rfi', self.SERVER_TARGET)
             elif event.key == pygame.K_k:
                 gn.set_mode('loc', self.SERVER_TARGET)
             elif event.key == pygame.K_l:
                 gn.set_mode('nfb', self.SERVER_TARGET)
Example #2
0
 def check_input(self):
     for event in pygame.event.get():
         if event.type == pygame.QUIT:
             self.quit()
         elif event.type == pygame.KEYDOWN:
             if event.key == pygame.K_ESCAPE: self.quit()
             elif event.key == pygame.K_0:
                 self.daq.set_volts_zero()
             elif event.key == pygame.K_m:
                 if self.input_mode == 'keyboard':
                     self.input_mode = 'sensor'
                 elif self.input_mode == 'sensor':
                     self.input_mode = 'keyboard'
             elif event.key == pygame.K_n:
                 self.show_keyboard = not(self.show_keyboard)
             elif ((event.key == pygame.K_SPACE
                    or event.key == pygame.K_5)
                   and not(self.run_trials)):
                 self.run_trials = True
                 if SENSOR_ACTIVE:
                     self.daq.set_digital_out(1)
                 gr.reset_for_next_run(game)
             elif event.key == pygame.K_p:
                 self.run_trials = False
             elif event.key == pygame.K_d:
                 self.debug_bool = not(self.debug_bool)
             elif event.key == pygame.K_LEFT:
                 self.set_run('debug')
             elif event.key == pygame.K_RIGHT:
                 self.set_run('test')
             elif event.key == pygame.K_UP:
                 self.set_run('train')
             elif event.key == pygame.K_DOWN:
                 self.set_run('scan')
             if self.input_mode == 'keyboard':
                 if event.key == self.key_codes[0]: self.keydown[0] = True
                 elif event.key == self.key_codes[1]: self.keydown[1] = True
                 elif event.key == self.key_codes[2]: self.keydown[2] = True
                 elif event.key == self.key_codes[3]: self.keydown[3] = True
                 elif event.key == self.key_codes[4]: self.keydown[4] = True
         elif event.type == pygame.KEYUP:
             if self.input_mode == 'keyboard':
                 if event.key == self.key_codes[0]: self.keydown[0] = False
                 elif event.key == self.key_codes[1]: self.keydown[1] = False
                 elif event.key == self.key_codes[2]: self.keydown[2] = False
                 elif event.key == self.key_codes[3]: self.keydown[3] = False
                 elif event.key == self.key_codes[4]: self.keydown[4] = False
     if self.input_mode == 'sensor':
         self.force_array[:] = self.daq.get_force()
         self.keydown[:] = self.force_array > self.KEYPRESS_FORCE
         self.keepunder[:] = self.force_array < self.KEEP_UNDER_FORCE
Example #3
0
 def check_input(self):
     for event in pygame.event.get():
         if event.type == pygame.QUIT:
             self.quit()
         elif event.type == pygame.KEYDOWN:
             if event.key == pygame.K_ESCAPE: self.quit()
             elif ((event.key == pygame.K_SPACE
                    or event.key == pygame.K_5)
                   and not(self.run_trials)):
                 self.run_trials = True
                 gr.reset_for_next_run(game)
             elif event.key == pygame.K_p:
                 self.run_trials = False
             elif event.key == pygame.K_q:
                 if not(SENSOR_ACTIVE):
                     self.force_array[0] = self.PRESS_FORCE_THRESHOLD
             elif event.key == pygame.K_w:
                 if not(SENSOR_ACTIVE):
                     self.force_array[1] = self.PRESS_FORCE_THRESHOLD
             elif event.key == pygame.K_e:
                 if not(SENSOR_ACTIVE):
                     self.force_array[2] = self.PRESS_FORCE_THRESHOLD
             elif event.key == pygame.K_r:
                 if not(SENSOR_ACTIVE):
                     self.force_array[3] = self.PRESS_FORCE_THRESHOLD
             elif event.key == pygame.K_m:
                 self.show_thermometer_keyboard_bool = not(
                     self.show_thermometer_keyboard_bool)
             elif event.key == pygame.K_LEFT:
                 self.set_run('debug')
             elif event.key == pygame.K_RIGHT:
                 self.set_run('test')
             elif event.key == pygame.K_UP:
                 self.set_run('train')
             elif event.key == pygame.K_DOWN:
                 self.set_run('scan')
         elif event.type == pygame.KEYUP:
             if event.key == pygame.K_q:
                 if not(SENSOR_ACTIVE):
                     self.force_array[0] = self.MIN_KEY_FORCE
             elif event.key == pygame.K_w:
                 if not(SENSOR_ACTIVE):
                     self.force_array[1] = self.MIN_KEY_FORCE
             elif event.key == pygame.K_e:
                 if not(SENSOR_ACTIVE):
                     self.force_array[2] = self.MIN_KEY_FORCE
             elif event.key == pygame.K_r:
                 if not(SENSOR_ACTIVE):
                     self.force_array[3] = self.MIN_KEY_FORCE
     if SENSOR_ACTIVE:
         self.check_keys()
Example #4
0
 def check_input(self):
     for event in pygame.event.get():
         if event.type == pygame.QUIT:
             self.quit()
         elif event.type == pygame.KEYDOWN:
             if event.key == pygame.K_ESCAPE: self.quit()
             elif event.key == pygame.K_m:
                 if self.input_mode == 'keyboard':
                     self.input_mode = 'sensor'
                 elif self.input_mode == 'sensor':
                     self.input_mode = 'keyboard'
             elif event.key == pygame.K_n:
                 self.show_keyboard = not(self.show_keyboard)
             elif ((event.key == pygame.K_SPACE
                    or event.key == pygame.K_5)
                   and not(self.run_trials)):
                 self.run_trials = True
                 gr.reset_for_next_run(game)
             elif event.key == pygame.K_p:
                 self.run_trials = False
             elif event.key == pygame.K_d:
                 self.debug_bool = not(self.debug_bool)
             elif event.key == pygame.K_LEFT:
                 self.set_run('debug')
             elif event.key == pygame.K_RIGHT:
                 self.set_run('test')
             elif event.key == pygame.K_UP:
                 self.set_run('train')
             elif event.key == pygame.K_DOWN:
                 self.set_run('scan')
             if self.input_mode == 'keyboard':
                 if event.key == self.key_codes[0]: self.keydown[0] = True
                 elif event.key == self.key_codes[1]: self.keydown[1] = True
                 elif event.key == self.key_codes[2]: self.keydown[2] = True
                 elif event.key == self.key_codes[3]: self.keydown[3] = True
                 elif event.key == self.key_codes[4]: self.keydown[4] = True
         elif event.type == pygame.KEYUP:
             if self.input_mode == 'keyboard':
                 if event.key == self.key_codes[0]: self.keydown[0] = False
                 elif event.key == self.key_codes[1]: self.keydown[1] = False
                 elif event.key == self.key_codes[2]: self.keydown[2] = False
                 elif event.key == self.key_codes[3]: self.keydown[3] = False
                 elif event.key == self.key_codes[4]: self.keydown[4] = False
     if self.input_mode == 'sensor':
         # add sensor logic here
         # - keypress recognized if force > 2.5N in one finger 
         #   and less than 2.2N in rest of fingers
         pass