Пример #1
0
    def reconfigureWidget(self):
        """
        called from selectTimerAndMCAs
        """
        lst = HasyUtils.getMgElements("mg_tnggui")
        if len(lst) == 0:
            self.logWidget.append("reconfigureWidget: mg_tnggui is empty")
            return
        #
        # ['eh_t01', 'eh_c01', 'eh_mca01']
        #
        self.selectedTimers = []
        for elm in lst:
            if elm.find('_t0') != -1:
                self.selectedTimers.append(self.getDev(elm))
        self.selectedMCAs = []
        for elm in lst:
            if elm.find('_mca') != -1:
                self.selectedMCAs.append(self.getDev(elm))

        #self.selectedTimers.sort()
        #self.selectedMCAs.sort()
        self.mcaComboBox.clear()
        for dev in self.selectedMCAs:
            self.mcaComboBox.addItem(dev['name'])
        self.mcaOntop = self.selectedMCAs[0]
        return
Пример #2
0
 def cb_activeMntGrpChanged(self):
     temp = str(self.activeMntGrpComboBox.currentText())
     if len(temp.strip()) == 0:
         return
     HasyUtils.setEnv("ActiveMntGrp", temp)
     elements = HasyUtils.getMgElements(temp)
     #self.logWidget.append( "macroServerIfc.cb_activeMntGrpChanged: ActiveMntGrp to %s: %s" % (temp, elements))
     return
Пример #3
0
    def __init__(self,
                 dev=None,
                 devices=None,
                 logWidget=None,
                 app=None,
                 parent=None):
        super(mcaWidget, self).__init__(parent)

        if PySpectra.InfoBlock.monitorGui is None:
            PySpectra.InfoBlock.setMonitorGui(self)
        self.dev = dev
        self.devices = devices
        if self.devices == None:
            self.devices = devices.Devices()
        self.logWidget = logWidget
        self.app = app
        self.parent = parent
        lst = HasyUtils.getMgElements("mg_tnggui")
        if lst is None or len(lst) == 0:
            self.selectedTimers = self.devices.allTimers[:]
            self.selectedMCAs = self.devices.allMCAs[:]
        else:
            #
            # ['eh_t01', 'eh_c01', 'eh_mca01']
            #
            self.selectedTimers = []
            for elm in lst:
                if elm.find('_t0') != -1:
                    self.selectedTimers.append(self.getDev(elm))
            self.selectedMCAs = []
            for elm in lst:
                if elm.find('_mca') != -1 and elm.find("roi") == -1:
                    temp = self.getDev(elm)
                    self.selectedMCAs.append(temp)

        if len(self.selectedMCAs) == 0:
            if self.logWidget:
                self.logWidget.append("mcaWidget: there are no MCAs")
            raise ValueError("mcaWidget: there are no MCAs")

        #self.selectedTimers.sort()
        #self.selectedMCAs.sort()
        self.mcaOntop = self.selectedMCAs[0]
        #
        # set the window title
        #
        if self.dev is not None:
            self.setWindowTitle("MCA %s" % self.dev['name'])
        else:
            self.setWindowTitle("MCA")
        self.move(10, 750)

        #
        # prepare widgets
        #
        self.prepareWidgets()

        self.flagClosed = False
        self.pyspGui = None
        self.statusMCA = "Idle"
        self.flagTimerWasBusy = False
        #
        # updateTimeMCA: the interval between MCA readings
        #
        self.updateTimeMCA = 1.
        self.timeDead = 0.
        self.timeTotal = 0
        #
        #
        self.refreshTimer = QtCore.QTimer(self)
        self.refreshTimer.start(definitions.TIMEOUT_REFRESH_MOTOR)
        self.refreshTimer.timeout.connect(self.cb_refreshMCAWidget)
        #
        # the timer which is busy while the MCAs are active
        #
        self.mcaTimer = QtCore.QTimer(self)
        self.mcaTimer.timeout.connect(self.updateMeasurement)

        for dev in self.selectedMCAs:
            dev['proxy'].stop()
        self.clearMCAs()

        return