def getListOfExperiments(self): settings = ConfigSettings(SECTION_REGISTRY) settings.read(self.oBatchSettings.settingsFilename) settings.set_section(SECTION_NAME_GENERAL) settings.set2('pathin', self.oBatchSettings.baseInDir) settings.set2('pathout', self.oBatchSettings.baseOutDir) imagecontainer = ImageContainer() imagecontainer.import_from_settings(settings) if self.oBatchSettings.plates is None: plates = imagecontainer.plates else: plates = self.oBatchSettings.plates lstExperiments = [] for plate in plates: meta_data = imagecontainer.get_meta_data(plate) positions = meta_data.positions if self.oBatchSettings.omit_processed_positions: finished_pos = [os.path.splitext(x)[0].split('__')[0] for x in os.listdir(os.path.join(self.oBatchSettings.baseOutDir, plate, 'log', '_finished'))] positions = filter(lambda x: x not in finished_pos, positions) lstExperiments.extend([(x,y) for x,y in zip([plate for i in positions], positions) ]) return lstExperiments
path_input = settings.get2('pathin') if path_output is not None: settings.set2('pathout', path_output) logger.info('Overwrite output path by %s' % path_output) else: path_output = settings.get2('pathout') if multiple_plates is None: multiple_plates = settings.get(SECTION_NAME_GENERAL, 'has_multiple_plates') else: logger.info('Overwrite has_multiple_plates by %s' % multiple_plates) imagecontainer = ImageContainer() imagecontainer.import_from_settings(settings) # FIXME: Could be more generally specified. SGE is setting the job item index via an environment variable if index is None: pass elif index.isdigit(): index = int(index) else: if index == ENV_INDEX_SGE: logger.info("Using SGE job item index: environment variable '%s'" % index) if index not in os.environ: parser.error("SGE environment variable '%s' not defined.") index = int(os.environ[index]) # decrement index (index is in range of 1..n for SGE) index -= 1
path_input = settings.get2('pathin') if path_output is not None: settings.set2('pathout', path_output) logger.info('Overwrite output path by %s' % path_output) else: path_output = settings.get2('pathout') if multiple_plates is None: multiple_plates = settings.get(SECTION_NAME_GENERAL, 'has_multiple_plates') else: logger.info('Overwrite has_multiple_plates by %s' % multiple_plates) imagecontainer = ImageContainer() imagecontainer.import_from_settings(settings) # FIXME: Could be more generally specified. SGE is setting the job item index via an environment variable if index is None: pass elif index.isdigit(): index = int(index) else: if index == ENV_INDEX_SGE: logger.info("Using SGE job item index: environment variable '%s'" % index) if index not in os.environ: parser.error("SGE environment variable '%s' not defined.") index = int(os.environ[index]) # decrement index (index is in range of 1..n for SGE) index -= 1
if multiple_plates is None: multiple_plates = settings.get(SECTION_NAME_GENERAL, 'has_multiple_plates') else: logger.info('Overwrite has_multiple_plates by %s' % multiple_plates) imagecontainer = ImageContainer() if position_list is not None: positions = position_list.split(',') plates = set(np.array([el.split('___') for el in positions])[:,0]) else: plates=None imagecontainer.import_from_settings(settings, plates_restriction=plates) # FIXME: Could be more generally specified. SGE is setting the job item index via an environment variable if index is None: pass elif index.isdigit(): index = int(index) else: if index == ENV_INDEX_SGE: logger.info("Using SGE job item index: environment variable '%s'" % index) if index not in os.environ: parser.error("SGE environment variable '%s' not defined.") index = int(os.environ[index]) # decrement index (index is in range of 1..n for SGE) index -= 1
path_output = settings.get2('pathout') if multiple_plates is None: multiple_plates = settings.get(SECTION_NAME_GENERAL, 'has_multiple_plates') else: logger.info('Overwrite has_multiple_plates by %s' % multiple_plates) imagecontainer = ImageContainer() if position_list is not None: positions = position_list.split(',') plates = set(np.array([el.split('___') for el in positions])[:, 0]) else: plates = None imagecontainer.import_from_settings(settings, plates_restriction=plates) # FIXME: Could be more generally specified. SGE is setting the job item index via an environment variable if index is None: pass elif index.isdigit(): index = int(index) else: if index == ENV_INDEX_SGE: logger.info("Using SGE job item index: environment variable '%s'" % index) if index not in os.environ: parser.error("SGE environment variable '%s' not defined.") index = int(os.environ[index]) # decrement index (index is in range of 1..n for SGE)