示例#1
0
    def __init__(self):
        self._connection = connect_client(type=peers.LOGIC)
        self._long_mgr = UgmConfigManager()
        self._long_mgr.update_from_file(LONG_FILE, True)
        self._word_mgr = UgmConfigManager()
        self._word_mgr.update_from_file(WORD_FILE, True)

        self.fixation = '+'
        self.mask = 'XXXXXXXXXXXXXX'
        self.available_keys = ['1', '2', '3', '4', '5']
        self.word_config = {'id': 5555, 'message': ''}
        self.img_config = {'id': 6666, 'image_path': ''}
        self.data_manager = DataManager()
        self.run_tag = {}
示例#2
0
    def __init__(self, p_config_name=None):
        super(Experiment_manager, self).__init__()
        self.config_file = self.read_experiment_config(p_config_name)
        print self.config_file
        self.screens = self.config_file['screens']
        self.sc_configs = []
        self.repeats = self.config_file['repeats']
        self.readable_names = self.config_file['readable_names']
        self.programme = self.config_file['file_to_run']

        # set up screens configuration - pair screens with diode freqs
        if not self.config_file.get('USE_DEFAULT_FREQS'):
            self.freq_sets = self.config_file['freqs']
            print "UWAGA"
            print ""
            print ""
            print self.screens
            print len(self.screens)
            print self.freq_sets
            print len(self.freq_sets)
            assert (len(self.screens) == len(self.freq_sets))
            self.sc_configs = [
                zip(scr, fre) for scr, fre in zip(self.screens, self.freq_sets)
            ]
        else:
            def_freqs = self.config_file['DEFAULT_FREQS']
            assert (def_freqs != None)
            self.sc_configs = [zip(scr, def_freqs) for scr in self.screens]

        LOGGER.info("screens and freqs: \n" + \
                str(self.sc_configs))

        self._prepare_screens(self.sc_configs)

        LOGGER.debug("SHUFFLED screens and freqs: \n" + \
                str(self.sc_configs))

        self._delay = self.config_file['delay']
        self._last_delay = None
        try:
            self._delay + 0
            # No error, delay is not random, just a number
            self._rand_delay = False
        except TypeError:
            self._rand_delay = True

        self.config_manager = UgmConfigManager()
        self._connection = None
        self._screen_sounds = self.config_file.get('sounds', None)
        self._field_look_nums = self.config_file.get('field_look_nums', None)

        if self._field_look_nums != None:
            self._sc_look_index = 0
        else:
            self._screen_look_num = 0

        if self._screen_sounds:
            import pygame
            import settings
            pygame.init()
            for i, s in enumerate(self._screen_sounds):
                self._screen_sounds[i] = os.path.join(
                    settings.module_abs_path(), self._screen_sounds[i])