Esempio n. 1
0
    def create_fabio_reader(self, file_name, fabio_image, file_series):
        """Factory to create fabio reader.

        :rtype: FabioReader"""
        use_edf_reader = False
        first_file_name = None
        first_image = None

        if isinstance(file_series, list):
            first_file_name = file_series[0]
        elif isinstance(file_series, fabio.file_series.file_series):
            first_image = file_series.first_image()
        elif fabio_image is not None:
            first_image = fabio_image
        else:
            first_file_name = file_name

        if first_file_name is not None:
            _, ext = os.path.splitext(first_file_name)
            ext = ext[1:]
            use_edf_reader = ext in fabio.edfimage.EdfImage.DEFAULT_EXTENSIONS
        elif first_image is not None:
            use_edf_reader = isinstance(first_image, fabio.edfimage.EdfImage)
        else:
            assert (False)

        if use_edf_reader:
            reader = EdfFabioReader(file_name, fabio_image, file_series)
        else:
            reader = FabioReader(file_name, fabio_image, file_series)
        return reader
Esempio n. 2
0
    def create_fabio_reader(self, file_name, fabio_image, file_series):
        """Factory to create fabio reader.

        :rtype: FabioReader"""
        use_edf_reader = False
        first_file_name = None
        first_image = None

        if isinstance(file_series, list):
            first_file_name = file_series[0]
        elif isinstance(file_series, fabio.file_series.file_series):
            first_image = file_series.first_image()
        elif fabio_image is not None:
            first_image = fabio_image
        else:
            first_file_name = file_name

        if first_file_name is not None:
            _, ext = os.path.splitext(first_file_name)
            ext = ext[1:]
            edfimage = fabio.edfimage.EdfImage
            if hasattr(edfimage, "DEFAULT_EXTENTIONS"):
                # Typo on fabio 0.5
                edf_extensions = edfimage.DEFAULT_EXTENTIONS
            else:
                edf_extensions = edfimage.DEFAULT_EXTENSIONS
            use_edf_reader = ext in edf_extensions
        elif first_image is not None:
            use_edf_reader = isinstance(first_image, fabio.edfimage.EdfImage)
        else:
            assert(False)

        if use_edf_reader:
            reader = EdfFabioReader(file_name, fabio_image, file_series)
        else:
            reader = FabioReader(file_name, fabio_image, file_series)
        return reader