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
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