示例#1
0
    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
示例#2
0
文件: cecog_batch.py 项目: imcf/cecog
        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
示例#3
0
        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
示例#4
0

    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
示例#5
0
        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)