Newer
Older
from __future__ import (absolute_import, division, print_function)
from reduction_gui.instruments.interface import InstrumentInterface
from reduction_gui.widgets.inelastic.dgs_sample_setup import SampleSetupWidget
from reduction_gui.widgets.inelastic.dgs_data_corrections import DataCorrectionsWidget
from reduction_gui.widgets.inelastic.dgs_diagnose_detectors import DiagnoseDetectorsWidget
from reduction_gui.widgets.inelastic.dgs_absolute_units import AbsoluteUnitsWidget
from reduction_gui.reduction.inelastic.dgs_reduction_script import DgsReductionScripter
class DgsInterface(InstrumentInterface):
"""
Defines the widgets for direct geometry spectrometer reduction
"""
# Allowed extensions for loading data files
data_type = "Data files * (*)"
def __init__(self, name, settings):
super(DgsInterface, self).__init__(name, settings)
self.ERROR_REPORT_NAME = "dgs_error_report.xml"
# Scripter object to interface with Mantid
self.scripter = DgsReductionScripter(name=name, facility=settings.facility_name)
self.attach(SampleSetupWidget(settings = self._settings,
self.attach(DataCorrectionsWidget(settings = self._settings,
data_type = self.data_type))
# Diagnose detectors
self.attach(DiagnoseDetectorsWidget(settings = self._settings,
self.attach(AbsoluteUnitsWidget(settings = self._settings,
data_type = self.data_type))