Beispiel #1
0
    def runSequenceLineEditEvent(self):
        run_sequence = self.runSequenceLineEdit.text()
        self.is_manual_edit_of_tableWidget = False
        oListRuns = RunSequenceBreaker(run_sequence)
        _new_runs = oListRuns.getFinalList()

        _old_runs = self.loaded_list_of_runs
        _list_runs = np.unique(np.hstack([_old_runs, _new_runs]))
        o_load_and_sort_nxsdata = LoadAndSortNXSDataForSFcalculator(
            _list_runs, parent=self, read_options=self.read_options)
        self.update_table(o_load_and_sort_nxsdata)
        self.is_manual_edit_of_tableWidget = True
Beispiel #2
0
    def loadNxs(self):
        self.clearMetadataTable()
        run_sequence = self.ui.runNumberEdit.text()
        oListRuns = RunSequenceBreaker(run_sequence)
        _list_runs = oListRuns.getFinalList()
        if len(_list_runs) > self.WARNING_NBR_FILES:
            msgBox = QMessageBox()
            _str = "Program is about to load " + str(len(_list_runs)) + " files. Do you want to continue ?"                                                                   
            msgBox.setText(_str)
            msgBox.addButton(QPushButton('NO'), QMessageBox.NoRole)
            msgBox.addButton(QPushButton('YES'), QMessageBox.YesRole)
            ret = msgBox.exec_()
            if ret == 0:
                self.ui.inputErrorLabel.setVisible(False)
                return

        if _list_runs[0] == -1:
            if self.list_nxs == []:
                return
            else:
                _list_runs = self.list_runs
                _list_nxs = self.list_nxs
                _list_filename = self.list_filename

        elif _list_runs[0] == -2:
            self.ui.inputErrorLabel.setVisible(True)
            return

        else:
            self.list_runs = _list_runs
            self.list_filename = []
            self.list_nxs = []
            for _runs in _list_runs:
                try:
                    _filename = RefRed.nexus_utilities.findNeXusFullPath(_runs)
                except:
                    self.ui.inputErrorLabel.setVisible(True)                    
                    return
                self.list_filename.append(_filename)
                randomString = RefRed.utilities.generate_random_workspace_name();print("About to load %s" % _filename)
                _nxs = LoadEventNexus(Filename = _filename, OutputWorkspace = randomString, MetaDataOnly=True)
                self.list_nxs.append(_nxs)

        self.ui.inputErrorLabel.setVisible(False)
        list_metadata_selected = self.list_metadata_selected

        _header = ['Run #','IPTS']
        for name in list_metadata_selected:
            self.ui.metadataTable.insertColumn(2)
            _header.append(name)
        self.ui.metadataTable.setHorizontalHeaderLabels(_header)
        list_nxs = self.list_nxs