diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000000000000000000000000000000000000..ba077a4031add5b3a04384f8b9cfc414efbf47dd --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +bin diff --git a/Makefile b/Makefile new file mode 100644 index 0000000000000000000000000000000000000000..7bddf66dc7fc93a570389f21acc569c94dd42a47 --- /dev/null +++ b/Makefile @@ -0,0 +1,18 @@ +NAME = sl-decimators-gui +MAIN = sl-decimators.py + +DIRNAME = $(NAME:-gui=) +PY_FILES += $(wildcard src/*.py) + +default: bin ${PY_FILES} + @cp ${PY_FILES} bin/${DIRNAME} + @echo "#!/bin/bash\nexec ${DIRNAME}/${MAIN}" > bin/${NAME} + @chmod +x bin/${NAME} bin/${DIRNAME}/${MAIN} + +bin: + @test -d $@ || mkdir -p $@/${DIRNAME} + +clean: + @rm -fr bin/ src/*~ + +.PHONY: clean diff --git a/src/sl-decimators.py b/src/sl-decimators.py new file mode 100644 index 0000000000000000000000000000000000000000..76067fd705c781316fcff0d8364e0bbaeaf842aa --- /dev/null +++ b/src/sl-decimators.py @@ -0,0 +1,1300 @@ +#!/usr/bin/python3 +#-*- coding: utf-8 -*- + +import PyTango +from PyQt4.QtCore import * +from PyQt4.QtGui import * + +devicelist = {} +devicelist['1'] = PyTango.DeviceProxy('f/timing/rttrigger_sl.01') +devicelist['2'] = PyTango.DeviceProxy('f/timing/rttrigger_sl.02') +devicelist['3'] = PyTango.DeviceProxy('f/timing/rttrigger_sl.03') +devicelist['4'] = PyTango.DeviceProxy('f/timing/rttrigger_sl.04') +devicelist['5'] = PyTango.DeviceProxy('f/timing/rttrigger_sl.05') +devicelist['contollo'] = PyTango.DeviceProxy('ec-sl-slpsr-01/rtevr/ff100000') + + +class Finestra(QTabWidget): + def __init__(self, parent=None): + super(Finestra, self).__init__(parent) + self.paginagenerale = QFrame() + self.paginagenerale_1facileindicatore = QLineEdit() + self.paginagenerale_1etichetta = QLabel('f/timing/rttrigger_sl.01') + self.paginagenerale_1modalita = LineEditRO() + self.paginagenerale_1on = QPushButton('ON') + self.paginagenerale_1on.clicked.connect(self.accendi1) + self.paginagenerale_1off = QPushButton('OFF') + self.paginagenerale_1off.clicked.connect(self.spegni1) + self.paginagenerale_1conf = QToolButton() + self.paginagenerale_2facileindicatore = QLineEdit() + self.paginagenerale_2etichetta = QLabel('f/timing/rttrigger_sl.02') + self.paginagenerale_2modalita = LineEditRO() + self.paginagenerale_2on = QPushButton('ON') + self.paginagenerale_2on.clicked.connect(self.accendi2) + self.paginagenerale_2off = QPushButton('OFF') + self.paginagenerale_2off.clicked.connect(self.spegni2) + self.paginagenerale_2conf = QToolButton() + self.paginagenerale_3facileindicatore = QLineEdit() + self.paginagenerale_3etichetta = QLabel('f/timing/rttrigger_sl.03') + self.paginagenerale_3modalita = LineEditRO() + self.paginagenerale_3on = QPushButton('ON') + self.paginagenerale_3on.clicked.connect(self.accendi3) + self.paginagenerale_3off = QPushButton('OFF') + self.paginagenerale_3off.clicked.connect(self.spegni3) + self.paginagenerale_3conf = QToolButton() + self.paginagenerale_4facileindicatore = QLineEdit() + self.paginagenerale_4etichetta = QLabel('f/timing/rttrigger_sl.04') + self.paginagenerale_4modalita = LineEditRO() + self.paginagenerale_4on = QPushButton('ON') + self.paginagenerale_4on.clicked.connect(self.accendi4) + self.paginagenerale_4off = QPushButton('OFF') + self.paginagenerale_4off.clicked.connect(self.spegni4) + self.paginagenerale_4conf = QToolButton() + self.paginagenerale_5facileindicatore = QLineEdit() + self.paginagenerale_5etichetta = QLabel('f/timing/rttrigger_sl.05') + self.paginagenerale_5modalita = LineEditRO() + self.paginagenerale_5on = QPushButton('ON') + self.paginagenerale_5on.clicked.connect(self.accendi5) + self.paginagenerale_5off = QPushButton('OFF') + self.paginagenerale_5off.clicked.connect(self.spegni5) + self.paginagenerale_5conf = QToolButton() + self.LO_paginagenerale = QGridLayout() + self.LO_paginagenerale.addWidget(self.paginagenerale_1facileindicatore, 10, 0, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_1etichetta, 10, 1, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_1modalita, 10, 2, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_1on, 10, 3, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_1off, 10, 4, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_1conf, 10, 5, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_2facileindicatore, 20, 0, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_2etichetta, 20, 1, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_2modalita, 20, 2, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_2on, 20, 3, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_2off, 20, 4, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_2conf, 20, 5, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_3facileindicatore, 30, 0, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_3etichetta, 30, 1, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_3modalita, 30, 2, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_3on, 30, 3, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_3off, 30, 4, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_3conf, 30, 5, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_4facileindicatore, 40, 0, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_4etichetta, 40, 1, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_4modalita, 40, 2, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_4on, 40, 3, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_4off, 40, 4, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_4conf, 40, 5, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_5facileindicatore, 50, 0, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_5etichetta, 50, 1, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_5modalita, 50, 2, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_5on, 50, 3, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_5off, 50, 4, 1, 1) + self.LO_paginagenerale.addWidget(self.paginagenerale_5conf, 50, 5, 1, 1) + self.paginagenerale.setLayout(self.LO_paginagenerale) + # + self.paginadeci1 = QFrame() + self.paginadeci1_campo_BunchNumber = DoppiaSceltanofun('Enable start/end BunchNumber') + self.paginadeci1_campo_BunchNumberEnd_R = LineEditRO() + self.paginadeci1_campo_BunchNumberEnd_W = QLineEdit() + self.paginadeci1_campo_BunchNumberStart_R = LineEditRO() + self.paginadeci1_campo_BunchNumberStart_W = QLineEdit() + self.paginadeci1_campo_DelayMode = QRadioButton('Delay mode') + self.paginadeci1_campo_DelayMode.chiave = '1' + self.paginadeci1_campo_DelayMode.clicked.connect(self.sceltadelay) + self.paginadeci1_campo_DelayOffset_R = LineEditRO() + self.paginadeci1_campo_DelayOffset_W = QLineEdit() + self.paginadeci1_campo_EnableStaticTriggerShift = DoppiaScelta('Enable Static Trigger Shift', '1', 'EnableStaticTriggerShift') + self.paginadeci1_campo_InfiniteCycle = DoppiaScelta('Infinite cycles', '1', 'InfiniteCycle') + self.paginadeci1_campo_InfiniteCycle.radiopositive.setChecked(1) + self.paginadeci1_campo_MaxNumCycles_R = LineEditRO() + self.paginadeci1_campo_MaxNumCycles_W = QLineEdit() + self.paginadeci1_campo_PolarityMode = DoppiaScelta('Polarity mode', '1', 'PolarityMode') + self.paginadeci1_campo_ReverseMode = DoppiaScelta('Reverse mode', '1', 'ReverseMode') + self.paginadeci1_campo_SaveModes = DoppiaScelta('Save modes', '1', 'SaveModes') + self.paginadeci1_campo_Sequence_R = LineEditRO() + self.paginadeci1_campo_Sequence_W = QLineEdit() + self.paginadeci1_campo_State = LineEditRO() + self.paginadeci1_campo_Status = LineEditRO() + self.paginadeci1_campo_StatusMode = QRadioButton('Status Mode') + self.paginadeci1_campo_StatusMode.chiave = '1' + self.paginadeci1_campo_StatusMode.clicked.connect(self.sceltastatus) + self.paginadeci1_applica = QPushButton('Apply') + self.paginadeci1_applica.clicked.connect(self.applica1) + self.paginadeci1_on = QPushButton('ON') + self.paginadeci1_on.clicked.connect(self.accendi1) + self.paginadeci1_off = QPushButton('OFF') + self.paginadeci1_off.clicked.connect(self.spegni1) + self.LOpaginadeci1 = QGridLayout() + self.LOpaginadeci1.addWidget(QLabel('This decive acts on the trigger signal for both SEED and SLU'), 0, 0, 1, 3) + self.LOpaginadeci1.addWidget(QLabel(''), 1, 0, 1, 3) + self.LOpaginadeci1.addWidget(QLabel('State(misleading): '), 2, 0, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_State, 2, 1, 1, 1) + self.LOpaginadeci1.addWidget(QLabel('Status: '), 3, 0, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_Status, 3, 1, 1, 2) + self.LOpaginadeci1.addWidget(self.paginadeci1_on, 4, 0, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_off, 4, 1, 1, 1) + self.LOpaginadeci1.addWidget(QLabel('BunchNumber Start: '), 10, 0, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_BunchNumberStart_R, 10, 1, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_BunchNumberStart_W, 10, 2, 1, 1) + self.LOpaginadeci1.addWidget(QLabel('BunchNumber End: '), 11, 0, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_BunchNumberEnd_R, 11, 1, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_BunchNumberEnd_W, 11, 2, 1, 1) + self.LOpaginadeci1.addWidget(QLabel('Delay offset: '), 12, 0, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_DelayOffset_R, 12, 1, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_DelayOffset_W, 12, 2, 1, 1) + self.LOpaginadeci1.addWidget(QLabel('Sequence: '), 13, 0, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_Sequence_R, 13, 1, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_Sequence_W, 13, 2, 1, 1) + self.LOpaginadeci1.addWidget(QLabel('Max num Cycles: '), 14, 0, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_MaxNumCycles_R, 14, 1, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_MaxNumCycles_W, 14, 2, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_StatusMode, 20, 0, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_DelayMode, 20, 1, 1, 1) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_InfiniteCycle, 22, 0, 1, 3) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_EnableStaticTriggerShift, 23, 0, 1, 3) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_PolarityMode, 24, 0, 1, 3) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_ReverseMode, 25, 0, 1, 3) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_SaveModes, 26, 0, 1, 3) + self.LOpaginadeci1.addWidget(self.paginadeci1_campo_BunchNumber, 27, 0, 1, 3) + self.LOpaginadeci1.addWidget(self.paginadeci1_applica, 30, 0, 1, 3) + self.paginadeci1.setLayout(self.LOpaginadeci1) + # + self.paginadeci2 = QFrame() + self.paginadeci2_campo_BunchNumber = DoppiaSceltanofun('Enable start/end BunchNumber') + self.paginadeci2_campo_BunchNumberEnd_R = LineEditRO() + self.paginadeci2_campo_BunchNumberEnd_W = QLineEdit() + self.paginadeci2_campo_BunchNumberStart_R = LineEditRO() + self.paginadeci2_campo_BunchNumberStart_W = QLineEdit() + self.paginadeci2_campo_DelayMode = QRadioButton('Delay mode') + self.paginadeci2_campo_DelayMode.chiave = '2' + self.paginadeci2_campo_DelayMode.clicked.connect(self.sceltadelay) + self.paginadeci2_campo_DelayOffset_R = LineEditRO() + self.paginadeci2_campo_DelayOffset_W = QLineEdit() + self.paginadeci2_campo_EnableStaticTriggerShift = DoppiaScelta('Enable Static Trigger Shift', '2', 'EnableStaticTriggerShift') + self.paginadeci2_campo_InfiniteCycle = DoppiaScelta('Infinite cycles', '2', 'InfiniteCycle') + self.paginadeci2_campo_InfiniteCycle.radiopositive.setChecked(1) + self.paginadeci2_campo_MaxNumCycles_R = LineEditRO() + self.paginadeci2_campo_MaxNumCycles_W = QLineEdit() + self.paginadeci2_campo_PolarityMode = DoppiaScelta('Polarity mode', '2', 'PolarityMode') + self.paginadeci2_campo_ReverseMode = DoppiaScelta('Reverse mode', '2', 'ReverseMode') + self.paginadeci2_campo_SaveModes = DoppiaScelta('Save modes', '2', 'SaveModes') + self.paginadeci2_campo_Sequence_R = LineEditRO() + self.paginadeci2_campo_Sequence_W = QLineEdit() + self.paginadeci2_campo_State = LineEditRO() + self.paginadeci2_campo_Status = LineEditRO() + self.paginadeci2_campo_StatusMode = QRadioButton('Status Mode') + self.paginadeci2_campo_StatusMode.chiave = '2' + self.paginadeci2_campo_StatusMode.clicked.connect(self.sceltastatus) + self.paginadeci2_applica = QPushButton('Apply') + self.paginadeci2_applica.clicked.connect(self.applica2) + self.paginadeci2_on = QPushButton('ON') + self.paginadeci2_on.clicked.connect(self.accendi2) + self.paginadeci2_off = QPushButton('OFF') + self.paginadeci2_off.clicked.connect(self.spegni2) + self.LOpaginadeci2 = QGridLayout() + self.LOpaginadeci2.addWidget(QLabel('With FEL1 this decive acts on the trigger signal for SEED'), 0, 0, 1, 3) + self.LOpaginadeci2.addWidget(QLabel('With FEL2 this decive acts on the trigger signal for SLU'), 1, 0, 1, 3) + self.LOpaginadeci2.addWidget(QLabel('State(misleading): '), 2, 0, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_State, 2, 1, 1, 1) + self.LOpaginadeci2.addWidget(QLabel('Status: '), 3, 0, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_Status, 3, 1, 1, 2) + self.LOpaginadeci2.addWidget(self.paginadeci2_on, 4, 0, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_off, 4, 1, 1, 1) + self.LOpaginadeci2.addWidget(QLabel('BunchNumber Start: '), 10, 0, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_BunchNumberStart_R, 10, 1, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_BunchNumberStart_W, 10, 2, 1, 1) + self.LOpaginadeci2.addWidget(QLabel('BunchNumber End: '), 11, 0, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_BunchNumberEnd_R, 11, 1, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_BunchNumberEnd_W, 11, 2, 1, 1) + self.LOpaginadeci2.addWidget(QLabel('Delay offset: '), 12, 0, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_DelayOffset_R, 12, 1, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_DelayOffset_W, 12, 2, 1, 1) + self.LOpaginadeci2.addWidget(QLabel('Sequence: '), 13, 0, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_Sequence_R, 13, 1, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_Sequence_W, 13, 2, 1, 1) + self.LOpaginadeci2.addWidget(QLabel('Max num Cycles: '), 14, 0, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_MaxNumCycles_R, 14, 1, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_MaxNumCycles_W, 14, 2, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_StatusMode, 20, 0, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_DelayMode, 20, 1, 1, 1) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_InfiniteCycle, 22, 0, 1, 3) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_EnableStaticTriggerShift, 23, 0, 1, 3) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_PolarityMode, 24, 0, 1, 3) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_ReverseMode, 25, 0, 1, 3) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_SaveModes, 26, 0, 1, 3) + self.LOpaginadeci2.addWidget(self.paginadeci2_campo_BunchNumber, 27, 0, 1, 3) + self.LOpaginadeci2.addWidget(self.paginadeci2_applica, 30, 0, 1, 3) + self.paginadeci2.setLayout(self.LOpaginadeci2) + # + self.paginadeci3 = QFrame() + self.paginadeci3_campo_BunchNumber = DoppiaSceltanofun('Enable start/end BunchNumber') + self.paginadeci3_campo_BunchNumberEnd_R = LineEditRO() + self.paginadeci3_campo_BunchNumberEnd_W = QLineEdit() + self.paginadeci3_campo_BunchNumberStart_R = LineEditRO() + self.paginadeci3_campo_BunchNumberStart_W = QLineEdit() + self.paginadeci3_campo_DelayMode = QRadioButton('Delay mode') + self.paginadeci3_campo_DelayMode.chiave = '3' + self.paginadeci3_campo_DelayMode.clicked.connect(self.sceltadelay) + self.paginadeci3_campo_DelayOffset_R = LineEditRO() + self.paginadeci3_campo_DelayOffset_W = QLineEdit() + self.paginadeci3_campo_EnableStaticTriggerShift = DoppiaScelta('Enable Static Trigger Shift', '3', 'EnableStaticTriggerShift') + self.paginadeci3_campo_InfiniteCycle = DoppiaScelta('Infinite cycles', '3', 'InfiniteCycle') + self.paginadeci3_campo_InfiniteCycle.radiopositive.setChecked(1) + self.paginadeci3_campo_MaxNumCycles_R = LineEditRO() + self.paginadeci3_campo_MaxNumCycles_W = QLineEdit() + self.paginadeci3_campo_PolarityMode = DoppiaScelta('Polarity mode', '3', 'PolarityMode') + self.paginadeci3_campo_ReverseMode = DoppiaScelta('Reverse mode', '3', 'ReverseMode') + self.paginadeci3_campo_SaveModes = DoppiaScelta('Save modes', '3', 'SaveModes') + self.paginadeci3_campo_Sequence_R = LineEditRO() + self.paginadeci3_campo_Sequence_W = QLineEdit() + self.paginadeci3_campo_State = LineEditRO() + self.paginadeci3_campo_Status = LineEditRO() + self.paginadeci3_campo_StatusMode = QRadioButton('Status Mode') + self.paginadeci3_campo_StatusMode.chiave = '3' + self.paginadeci3_campo_StatusMode.clicked.connect(self.sceltastatus) + self.paginadeci3_applica = QPushButton('Apply') + self.paginadeci3_applica.clicked.connect(self.applica3) + self.paginadeci3_on = QPushButton('ON') + self.paginadeci3_on.clicked.connect(self.accendi3) + self.paginadeci3_off = QPushButton('OFF') + self.paginadeci3_off.clicked.connect(self.spegni3) + self.LOpaginadeci3 = QGridLayout() + self.LOpaginadeci3.addWidget(QLabel('With FEL1 this decive acts on the trigger signal for SLU'), 0, 0, 1, 3) + self.LOpaginadeci3.addWidget(QLabel('With FEL2 this decive acts on the trigger signal for SEED'), 1, 0, 1, 3) + self.LOpaginadeci3.addWidget(QLabel('State(misleading): '), 2, 0, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_State, 2, 1, 1, 1) + self.LOpaginadeci3.addWidget(QLabel('Status: '), 3, 0, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_Status, 3, 1, 1, 2) + self.LOpaginadeci3.addWidget(self.paginadeci3_on, 4, 0, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_off, 4, 1, 1, 1) + self.LOpaginadeci3.addWidget(QLabel('BunchNumber Start: '), 10, 0, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_BunchNumberStart_R, 10, 1, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_BunchNumberStart_W, 10, 2, 1, 1) + self.LOpaginadeci3.addWidget(QLabel('BunchNumber End: '), 11, 0, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_BunchNumberEnd_R, 11, 1, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_BunchNumberEnd_W, 11, 2, 1, 1) + self.LOpaginadeci3.addWidget(QLabel('Delay offset: '), 12, 0, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_DelayOffset_R, 12, 1, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_DelayOffset_W, 12, 2, 1, 1) + self.LOpaginadeci3.addWidget(QLabel('Sequence: '), 13, 0, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_Sequence_R, 13, 1, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_Sequence_W, 13, 2, 1, 1) + self.LOpaginadeci3.addWidget(QLabel('Max num Cycles: '), 14, 0, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_MaxNumCycles_R, 14, 1, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_MaxNumCycles_W, 14, 2, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_StatusMode, 20, 0, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_DelayMode, 20, 1, 1, 1) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_InfiniteCycle, 22, 0, 1, 3) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_EnableStaticTriggerShift, 23, 0, 1, 3) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_PolarityMode, 24, 0, 1, 3) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_ReverseMode, 25, 0, 1, 3) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_SaveModes, 26, 0, 1, 3) + self.LOpaginadeci3.addWidget(self.paginadeci3_campo_BunchNumber, 27, 0, 1, 3) + self.LOpaginadeci3.addWidget(self.paginadeci3_applica, 30, 0, 1, 3) + self.paginadeci3.setLayout(self.LOpaginadeci3) + # + self.paginadeci4 = QFrame() + self.paginadeci4_campo_BunchNumber = DoppiaSceltanofun('Enable start/end BunchNumber') + self.paginadeci4_campo_BunchNumberEnd_R = LineEditRO() + self.paginadeci4_campo_BunchNumberEnd_W = QLineEdit() + self.paginadeci4_campo_BunchNumberStart_R = LineEditRO() + self.paginadeci4_campo_BunchNumberStart_W = QLineEdit() + self.paginadeci4_campo_DelayMode = QRadioButton('Delay mode') + self.paginadeci4_campo_DelayMode.chiave = '4' + self.paginadeci4_campo_DelayMode.clicked.connect(self.sceltadelay) + self.paginadeci4_campo_DelayOffset_R = LineEditRO() + self.paginadeci4_campo_DelayOffset_W = QLineEdit() + self.paginadeci4_campo_EnableStaticTriggerShift = DoppiaScelta('Enable Static Trigger Shift', '4', 'EnableStaticTriggerShift') + self.paginadeci4_campo_InfiniteCycle = DoppiaScelta('Infinite cycles', '4', 'InfiniteCycle') + self.paginadeci4_campo_InfiniteCycle.radiopositive.setChecked(1) + self.paginadeci4_campo_MaxNumCycles_R = LineEditRO() + self.paginadeci4_campo_MaxNumCycles_W = QLineEdit() + self.paginadeci4_campo_PolarityMode = DoppiaScelta('Polarity mode', '4', 'PolarityMode') + self.paginadeci4_campo_ReverseMode = DoppiaScelta('Reverse mode', '4', 'ReverseMode') + self.paginadeci4_campo_SaveModes = DoppiaScelta('Save modes', '4', 'SaveModes') + self.paginadeci4_campo_Sequence_R = LineEditRO() + self.paginadeci4_campo_Sequence_W = QLineEdit() + self.paginadeci4_campo_State = LineEditRO() + self.paginadeci4_campo_Status = LineEditRO() + self.paginadeci4_campo_StatusMode = QRadioButton('Status Mode') + self.paginadeci4_campo_StatusMode.chiave = '4' + self.paginadeci4_campo_StatusMode.clicked.connect(self.sceltastatus) + self.paginadeci4_applica = QPushButton('Apply') + self.paginadeci4_applica.clicked.connect(self.applica4) + self.paginadeci4_on = QPushButton('ON') + self.paginadeci4_on.clicked.connect(self.accendi4) + self.paginadeci4_off = QPushButton('OFF') + self.paginadeci4_off.clicked.connect(self.spegni4) + self.LOpaginadeci4 = QGridLayout() + self.LOpaginadeci4.addWidget(QLabel('Amplifier 1 without diagnostics'), 0, 0, 1, 3) + self.LOpaginadeci4.addWidget(QLabel(''), 1, 0, 1, 3) + self.LOpaginadeci4.addWidget(QLabel('State(misleading): '), 2, 0, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_State, 2, 1, 1, 1) + self.LOpaginadeci4.addWidget(QLabel('Status: '), 3, 0, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_Status, 3, 1, 1, 2) + self.LOpaginadeci4.addWidget(self.paginadeci4_on, 4, 0, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_off, 4, 1, 1, 1) + self.LOpaginadeci4.addWidget(QLabel('BunchNumber Start: '), 10, 0, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_BunchNumberStart_R, 10, 1, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_BunchNumberStart_W, 10, 2, 1, 1) + self.LOpaginadeci4.addWidget(QLabel('BunchNumber End: '), 11, 0, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_BunchNumberEnd_R, 11, 1, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_BunchNumberEnd_W, 11, 2, 1, 1) + self.LOpaginadeci4.addWidget(QLabel('Delay offset: '), 12, 0, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_DelayOffset_R, 12, 1, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_DelayOffset_W, 12, 2, 1, 1) + self.LOpaginadeci4.addWidget(QLabel('Sequence: '), 13, 0, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_Sequence_R, 13, 1, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_Sequence_W, 13, 2, 1, 1) + self.LOpaginadeci4.addWidget(QLabel('Max num Cycles: '), 14, 0, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_MaxNumCycles_R, 14, 1, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_MaxNumCycles_W, 14, 2, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_StatusMode, 20, 0, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_DelayMode, 20, 1, 1, 1) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_InfiniteCycle, 22, 0, 1, 3) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_EnableStaticTriggerShift, 23, 0, 1, 3) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_PolarityMode, 24, 0, 1, 3) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_ReverseMode, 25, 0, 1, 3) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_SaveModes, 26, 0, 1, 3) + self.LOpaginadeci4.addWidget(self.paginadeci4_campo_BunchNumber, 27, 0, 1, 3) + self.LOpaginadeci4.addWidget(self.paginadeci4_applica, 30, 0, 1, 3) + self.paginadeci4.setLayout(self.LOpaginadeci4) + # + self.paginadeci5 = QFrame() + self.paginadeci5_campo_BunchNumber = DoppiaSceltanofun('Enable start/end BunchNumber') + self.paginadeci5_campo_BunchNumberEnd_R = LineEditRO() + self.paginadeci5_campo_BunchNumberEnd_W = QLineEdit() + self.paginadeci5_campo_BunchNumberStart_R = LineEditRO() + self.paginadeci5_campo_BunchNumberStart_W = QLineEdit() + self.paginadeci5_campo_DelayMode = QRadioButton('Delay mode') + self.paginadeci5_campo_DelayMode.chiave = '5' + self.paginadeci5_campo_DelayMode.clicked.connect(self.sceltadelay) + self.paginadeci5_campo_DelayOffset_R = LineEditRO() + self.paginadeci5_campo_DelayOffset_W = QLineEdit() + self.paginadeci5_campo_EnableStaticTriggerShift = DoppiaScelta('Enable Static Trigger Shift', '5', 'EnableStaticTriggerShift') + self.paginadeci5_campo_InfiniteCycle = DoppiaScelta('Infinite cycles', '5', 'InfiniteCycle') + self.paginadeci5_campo_InfiniteCycle.radiopositive.setChecked(1) + self.paginadeci5_campo_MaxNumCycles_R = LineEditRO() + self.paginadeci5_campo_MaxNumCycles_W = QLineEdit() + self.paginadeci5_campo_PolarityMode = DoppiaScelta('Polarity mode', '5', 'PolarityMode') + self.paginadeci5_campo_ReverseMode = DoppiaScelta('Reverse mode', '5', 'ReverseMode') + self.paginadeci5_campo_SaveModes = DoppiaScelta('Save modes', '5', 'SaveModes') + self.paginadeci5_campo_Sequence_R = LineEditRO() + self.paginadeci5_campo_Sequence_W = QLineEdit() + self.paginadeci5_campo_State = LineEditRO() + self.paginadeci5_campo_Status = LineEditRO() + self.paginadeci5_campo_StatusMode = QRadioButton('Status Mode') + self.paginadeci5_campo_StatusMode.chiave = '5' + self.paginadeci5_campo_StatusMode.clicked.connect(self.sceltastatus) + self.paginadeci5_applica = QPushButton('Apply') + self.paginadeci5_applica.clicked.connect(self.applica5) + self.paginadeci5_on = QPushButton('ON') + self.paginadeci5_on.clicked.connect(self.accendi5) + self.paginadeci5_off = QPushButton('OFF') + self.paginadeci5_off.clicked.connect(self.spegni5) + self.LOpaginadeci5 = QGridLayout() + self.LOpaginadeci5.addWidget(QLabel('Amplifier 2 without diagnostics'), 0, 0, 1, 3) + self.LOpaginadeci5.addWidget(QLabel(''), 1, 0, 1, 3) + self.LOpaginadeci5.addWidget(QLabel('State(misleading): '), 2, 0, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_State, 2, 1, 1, 1) + self.LOpaginadeci5.addWidget(QLabel('Status: '), 3, 0, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_Status, 3, 1, 1, 2) + self.LOpaginadeci5.addWidget(self.paginadeci5_on, 4, 0, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_off, 4, 1, 1, 1) + self.LOpaginadeci5.addWidget(QLabel('BunchNumber Start: '), 10, 0, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_BunchNumberStart_R, 10, 1, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_BunchNumberStart_W, 10, 2, 1, 1) + self.LOpaginadeci5.addWidget(QLabel('BunchNumber End: '), 11, 0, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_BunchNumberEnd_R, 11, 1, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_BunchNumberEnd_W, 11, 2, 1, 1) + self.LOpaginadeci5.addWidget(QLabel('Delay offset: '), 12, 0, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_DelayOffset_R, 12, 1, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_DelayOffset_W, 12, 2, 1, 1) + self.LOpaginadeci5.addWidget(QLabel('Sequence: '), 13, 0, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_Sequence_R, 13, 1, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_Sequence_W, 13, 2, 1, 1) + self.LOpaginadeci5.addWidget(QLabel('Max num Cycles: '), 14, 0, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_MaxNumCycles_R, 14, 1, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_MaxNumCycles_W, 14, 2, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_StatusMode, 20, 0, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_DelayMode, 20, 1, 1, 1) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_InfiniteCycle, 22, 0, 1, 3) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_EnableStaticTriggerShift, 23, 0, 1, 3) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_PolarityMode, 24, 0, 1, 3) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_ReverseMode, 25, 0, 1, 3) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_SaveModes, 26, 0, 1, 3) + self.LOpaginadeci5.addWidget(self.paginadeci5_campo_BunchNumber, 27, 0, 1, 3) + self.LOpaginadeci5.addWidget(self.paginadeci5_applica, 30, 0, 1, 3) + self.paginadeci5.setLayout(self.LOpaginadeci5) + # + self.insertTab(0, self.paginagenerale, 'General') + self.insertTab(1, self.paginadeci1, 'rttrigger_sl.01') + self.insertTab(2, self.paginadeci2, 'rttrigger_sl.02') + self.insertTab(3, self.paginadeci3, 'rttrigger_sl.03') + self.insertTab(4, self.paginadeci4, 'rttrigger_sl.04') + self.insertTab(5, self.paginadeci5, 'rttrigger_sl.05') + self.show() + #timer + self.timer = QBasicTimer() + self.timer.start(2000, self) + + def timerEvent(self, event): + self.update() + + def __del__(self): + self.timer.stop() + + def update(self): + try: + tmp = devicelist['contollo'].read_attribute('ChannelsState') + if tmp.value[0] == 10: + self.paginagenerale_1facileindicatore.setText('ON') + self.paginagenerale_1facileindicatore.setStyleSheet("background-color: rgb(255, 255, 255)") + self.paginagenerale_2facileindicatore.setText('?') + self.paginagenerale_2facileindicatore.setStyleSheet("background-color: rgb(200, 200, 200)") + self.paginagenerale_3facileindicatore.setText('?') + self.paginagenerale_3facileindicatore.setStyleSheet("background-color: rgb(200, 200, 200)") + elif tmp.value[0] == 1 and tmp.value[1] == 10 and tmp.value[2] == 1: + self.paginagenerale_1facileindicatore.setText('OFF') + self.paginagenerale_1facileindicatore.setStyleSheet("background-color: rgb(200, 200, 200)") + self.paginagenerale_2facileindicatore.setText('ON') + self.paginagenerale_2facileindicatore.setStyleSheet("background-color: rgb(255, 255, 255)") + self.paginagenerale_3facileindicatore.setText('OFF') + self.paginagenerale_3facileindicatore.setStyleSheet("background-color: rgb(200, 200, 200)") + elif tmp.value[0] == 1 and tmp.value[1] == 1 and tmp.value[2] == 10: + self.paginagenerale_1facileindicatore.setText('OFF') + self.paginagenerale_1facileindicatore.setStyleSheet("background-color: rgb(200, 200, 200)") + self.paginagenerale_2facileindicatore.setText('OFF') + self.paginagenerale_2facileindicatore.setStyleSheet("background-color: rgb(200, 200, 200)") + self.paginagenerale_3facileindicatore.setText('ON') + self.paginagenerale_3facileindicatore.setStyleSheet("background-color: rgb(255, 255, 255)") + elif tmp.value[0] == 1 and tmp.value[1] == 1 and tmp.value[2] == 1: + self.paginagenerale_1facileindicatore.setText('OFF') + self.paginagenerale_1facileindicatore.setStyleSheet("background-color: rgb(200, 200, 200)") + self.paginagenerale_2facileindicatore.setText('OFF') + self.paginagenerale_2facileindicatore.setStyleSheet("background-color: rgb(200, 200, 200)") + self.paginagenerale_3facileindicatore.setText('OFF') + self.paginagenerale_3facileindicatore.setStyleSheet("background-color: rgb(200, 200, 200)") + else: + self.paginagenerale_1facileindicatore.setText('?') + self.paginagenerale_1facileindicatore.setStyleSheet("background-color: rgb(200, 200, 200)") + self.paginagenerale_2facileindicatore.setText('?') + self.paginagenerale_2facileindicatore.setStyleSheet("background-color: rgb(200, 200, 200)") + self.paginagenerale_3facileindicatore.setText('?') + self.paginagenerale_3facileindicatore.setStyleSheet("background-color: rgb(200, 200, 200)") + except: + print('ao') + try: + tmp = devicelist['1'].read_attributes(['BunchNumberEnd', 'BunchNumberStart', 'DelayMode', 'DelayOffset', 'EnableStaticTriggerShift', 'InfiniteCycle', 'MaxNumCycles', 'PolarityMode', 'ReverseMode', 'SaveModes', 'Sequence', 'State', 'Status', 'StatusMode']) + self.paginadeci1_campo_BunchNumberEnd_R.setText(str(tmp[0].value)) + self.paginadeci1_campo_BunchNumberStart_R.setText(str(tmp[1].value)) + if tmp[2].value: + self.paginadeci1_campo_DelayMode.setChecked(1) + self.paginagenerale_1modalita.setText('Delay') + else: + self.paginadeci1_campo_DelayMode.setChecked(0) + self.paginadeci1_campo_DelayOffset_R.setText(str(tmp[3].value)) + if tmp[4].value: + self.paginadeci1_campo_EnableStaticTriggerShift.lettura.setText('True') + else: + self.paginadeci1_campo_EnableStaticTriggerShift.lettura.setText('False') + if tmp[5].value: + self.paginadeci1_campo_InfiniteCycle.lettura.setText('True') + else: + self.paginadeci1_campo_InfiniteCycle.lettura.setText('False') + self.paginadeci1_campo_MaxNumCycles_R.setText(str(tmp[6].value)) + if tmp[7].value: + self.paginadeci1_campo_PolarityMode.lettura.setText('True') + else: + self.paginadeci1_campo_PolarityMode.lettura.setText('False') + if tmp[8].value: + self.paginadeci1_campo_ReverseMode.lettura.setText('True') + else: + self.paginadeci1_campo_ReverseMode.lettura.setText('False') + if tmp[9].value: + self.paginadeci1_campo_SaveModes.lettura.setText('True') + else: + self.paginadeci1_campo_SaveModes.lettura.setText('False') + self.paginadeci1_campo_Sequence_R.setText(str(tmp[10].value)) + self.paginadeci1_campo_State.setText(str(tmp[11].value)) + self.paginadeci1_campo_Status.setText(str(tmp[12].value)) + if tmp[13].value: + self.paginadeci1_campo_StatusMode.setChecked(1) + self.paginagenerale_1modalita.setText('Status') + else: + self.paginadeci1_campo_StatusMode.setChecked(0) + except: + self.paginadeci1_campo_BunchNumberEnd_R.setText('#####') + self.paginadeci1_campo_BunchNumberStart_R.setText('#####') + self.paginagenerale_1modalita.setText('#####') + self.paginadeci1_campo_DelayOffset_R.setText('#####') + self.paginadeci1_campo_Sequence_R.setText('#####') + self.paginadeci1_campo_State.setText('#####') + self.paginadeci1_campo_Status.setText('#####') + self.paginadeci1_campo_MaxNumCycles_R.setText('#####') + self.paginadeci1_campo_DelayMode.setChecked(0) + self.paginadeci1_campo_StatusMode.setChecked(0) + self.paginadeci1_campo_EnableStaticTriggerShift.lettura.setText('UNKNOW') + self.paginadeci1_campo_InfiniteCycle.lettura.setText('UNKNOW') + self.paginadeci1_campo_PolarityMode.lettura.setText('UNKNOW') + self.paginadeci1_campo_ReverseMode.lettura.setText('UNKNOW') + self.paginadeci1_campo_SaveModes.lettura.setText('UNKNOW') + ## + try: + tmp = devicelist['2'].read_attributes(['BunchNumberEnd', 'BunchNumberStart', 'DelayMode', 'DelayOffset', 'EnableStaticTriggerShift', 'InfiniteCycle', 'MaxNumCycles', 'PolarityMode', 'ReverseMode', 'SaveModes', 'Sequence', 'State', 'Status', 'StatusMode']) + self.paginadeci2_campo_BunchNumberEnd_R.setText(str(tmp[0].value)) + self.paginadeci2_campo_BunchNumberStart_R.setText(str(tmp[1].value)) + if tmp[2].value: + self.paginadeci2_campo_DelayMode.setChecked(1) + self.paginagenerale_2modalita.setText('Delay') + else: + self.paginadeci2_campo_DelayMode.setChecked(0) + self.paginadeci2_campo_DelayOffset_R.setText(str(tmp[3].value)) + if tmp[4].value: + self.paginadeci2_campo_EnableStaticTriggerShift.lettura.setText('True') + else: + self.paginadeci2_campo_EnableStaticTriggerShift.lettura.setText('False') + if tmp[5].value: + self.paginadeci2_campo_InfiniteCycle.lettura.setText('True') + else: + self.paginadeci2_campo_InfiniteCycle.lettura.setText('False') + self.paginadeci2_campo_MaxNumCycles_R.setText(str(tmp[6].value)) + if tmp[7].value: + self.paginadeci2_campo_PolarityMode.lettura.setText('True') + else: + self.paginadeci2_campo_PolarityMode.lettura.setText('False') + if tmp[8].value: + self.paginadeci2_campo_ReverseMode.lettura.setText('True') + else: + self.paginadeci2_campo_ReverseMode.lettura.setText('False') + if tmp[9].value: + self.paginadeci2_campo_SaveModes.lettura.setText('True') + else: + self.paginadeci2_campo_SaveModes.lettura.setText('False') + self.paginadeci2_campo_Sequence_R.setText(str(tmp[10].value)) + self.paginadeci2_campo_State.setText(str(tmp[11].value)) + self.paginadeci2_campo_Status.setText(str(tmp[12].value)) + if tmp[13].value: + self.paginadeci2_campo_StatusMode.setChecked(1) + self.paginagenerale_2modalita.setText('Status') + else: + self.paginadeci2_campo_StatusMode.setChecked(0) + except: + self.paginadeci2_campo_BunchNumberEnd_R.setText('#####') + self.paginadeci2_campo_BunchNumberStart_R.setText('#####') + self.paginagenerale_2modalita.setText('#####') + self.paginadeci2_campo_DelayOffset_R.setText('#####') + self.paginadeci2_campo_Sequence_R.setText('#####') + self.paginadeci2_campo_State.setText('#####') + self.paginadeci2_campo_Status.setText('#####') + self.paginadeci2_campo_MaxNumCycles_R.setText('#####') + self.paginadeci2_campo_DelayMode.setChecked(0) + self.paginadeci2_campo_StatusMode.setChecked(0) + self.paginadeci2_campo_EnableStaticTriggerShift.lettura.setText('UNKNOW') + self.paginadeci2_campo_InfiniteCycle.lettura.setText('UNKNOW') + self.paginadeci2_campo_PolarityMode.lettura.setText('UNKNOW') + self.paginadeci2_campo_ReverseMode.lettura.setText('UNKNOW') + self.paginadeci2_campo_SaveModes.lettura.setText('UNKNOW') + ## + try: + tmp = devicelist['3'].read_attributes(['BunchNumberEnd', 'BunchNumberStart', 'DelayMode', 'DelayOffset', 'EnableStaticTriggerShift', 'InfiniteCycle', 'MaxNumCycles', 'PolarityMode', 'ReverseMode', 'SaveModes', 'Sequence', 'State', 'Status', 'StatusMode']) + self.paginadeci3_campo_BunchNumberEnd_R.setText(str(tmp[0].value)) + self.paginadeci3_campo_BunchNumberStart_R.setText(str(tmp[1].value)) + if tmp[2].value: + self.paginadeci3_campo_DelayMode.setChecked(1) + self.paginagenerale_3modalita.setText('Delay') + else: + self.paginadeci3_campo_DelayMode.setChecked(0) + self.paginadeci3_campo_DelayOffset_R.setText(str(tmp[3].value)) + if tmp[4].value: + self.paginadeci3_campo_EnableStaticTriggerShift.lettura.setText('True') + else: + self.paginadeci3_campo_EnableStaticTriggerShift.lettura.setText('False') + if tmp[5].value: + self.paginadeci3_campo_InfiniteCycle.lettura.setText('True') + else: + self.paginadeci3_campo_InfiniteCycle.lettura.setText('False') + self.paginadeci3_campo_MaxNumCycles_R.setText(str(tmp[6].value)) + if tmp[7].value: + self.paginadeci3_campo_PolarityMode.lettura.setText('True') + else: + self.paginadeci3_campo_PolarityMode.lettura.setText('False') + if tmp[8].value: + self.paginadeci3_campo_ReverseMode.lettura.setText('True') + else: + self.paginadeci3_campo_ReverseMode.lettura.setText('False') + if tmp[9].value: + self.paginadeci3_campo_SaveModes.lettura.setText('True') + else: + self.paginadeci3_campo_SaveModes.lettura.setText('False') + self.paginadeci3_campo_Sequence_R.setText(str(tmp[10].value)) + self.paginadeci3_campo_State.setText(str(tmp[11].value)) + self.paginadeci3_campo_Status.setText(str(tmp[12].value)) + if tmp[13].value: + self.paginadeci3_campo_StatusMode.setChecked(1) + self.paginagenerale_3modalita.setText('Status') + else: + self.paginadeci3_campo_StatusMode.setChecked(0) + except: + self.paginadeci3_campo_BunchNumberEnd_R.setText('#####') + self.paginadeci3_campo_BunchNumberStart_R.setText('#####') + self.paginagenerale_3modalita.setText('#####') + self.paginadeci3_campo_DelayOffset_R.setText('#####') + self.paginadeci3_campo_Sequence_R.setText('#####') + self.paginadeci3_campo_State.setText('#####') + self.paginadeci3_campo_Status.setText('#####') + self.paginadeci3_campo_MaxNumCycles_R.setText('#####') + self.paginadeci3_campo_DelayMode.setChecked(0) + self.paginadeci3_campo_StatusMode.setChecked(0) + self.paginadeci3_campo_EnableStaticTriggerShift.lettura.setText('UNKNOW') + self.paginadeci3_campo_InfiniteCycle.lettura.setText('UNKNOW') + self.paginadeci3_campo_PolarityMode.lettura.setText('UNKNOW') + self.paginadeci3_campo_ReverseMode.lettura.setText('UNKNOW') + self.paginadeci3_campo_SaveModes.lettura.setText('UNKNOW') + ## + try: + tmp = devicelist['4'].read_attributes(['BunchNumberEnd', 'BunchNumberStart', 'DelayMode', 'DelayOffset', 'EnableStaticTriggerShift', 'InfiniteCycle', 'MaxNumCycles', 'PolarityMode', 'ReverseMode', 'SaveModes', 'Sequence', 'State', 'Status', 'StatusMode']) + self.paginadeci4_campo_BunchNumberEnd_R.setText(str(tmp[0].value)) + self.paginadeci4_campo_BunchNumberStart_R.setText(str(tmp[1].value)) + if tmp[2].value: + self.paginadeci4_campo_DelayMode.setChecked(1) + self.paginagenerale_4modalita.setText('Delay') + else: + self.paginadeci4_campo_DelayMode.setChecked(0) + self.paginadeci4_campo_DelayOffset_R.setText(str(tmp[3].value)) + if tmp[4].value: + self.paginadeci4_campo_EnableStaticTriggerShift.lettura.setText('True') + else: + self.paginadeci4_campo_EnableStaticTriggerShift.lettura.setText('False') + if tmp[5].value: + self.paginadeci4_campo_InfiniteCycle.lettura.setText('True') + else: + self.paginadeci4_campo_InfiniteCycle.lettura.setText('False') + self.paginadeci4_campo_MaxNumCycles_R.setText(str(tmp[6].value)) + if tmp[7].value: + self.paginadeci4_campo_PolarityMode.lettura.setText('True') + else: + self.paginadeci4_campo_PolarityMode.lettura.setText('False') + if tmp[8].value: + self.paginadeci4_campo_ReverseMode.lettura.setText('True') + else: + self.paginadeci4_campo_ReverseMode.lettura.setText('False') + if tmp[9].value: + self.paginadeci4_campo_SaveModes.lettura.setText('True') + else: + self.paginadeci4_campo_SaveModes.lettura.setText('False') + self.paginadeci4_campo_Sequence_R.setText(str(tmp[10].value)) + self.paginadeci4_campo_State.setText(str(tmp[11].value)) + self.paginadeci4_campo_Status.setText(str(tmp[12].value)) + if tmp[13].value: + self.paginadeci4_campo_StatusMode.setChecked(1) + self.paginagenerale_4modalita.setText('Status') + else: + self.paginadeci4_campo_StatusMode.setChecked(0) + except: + self.paginadeci4_campo_BunchNumberEnd_R.setText('#####') + self.paginadeci4_campo_BunchNumberStart_R.setText('#####') + self.paginagenerale_4modalita.setText('#####') + self.paginadeci4_campo_DelayOffset_R.setText('#####') + self.paginadeci4_campo_Sequence_R.setText('#####') + self.paginadeci4_campo_State.setText('#####') + self.paginadeci4_campo_Status.setText('#####') + self.paginadeci4_campo_MaxNumCycles_R.setText('#####') + self.paginadeci4_campo_DelayMode.setChecked(0) + self.paginadeci4_campo_StatusMode.setChecked(0) + self.paginadeci4_campo_EnableStaticTriggerShift.lettura.setText('UNKNOW') + self.paginadeci4_campo_InfiniteCycle.lettura.setText('UNKNOW') + self.paginadeci4_campo_PolarityMode.lettura.setText('UNKNOW') + self.paginadeci4_campo_ReverseMode.lettura.setText('UNKNOW') + self.paginadeci4_campo_SaveModes.lettura.setText('UNKNOW') + ## + try: + tmp = devicelist['5'].read_attributes(['BunchNumberEnd', 'BunchNumberStart', 'DelayMode', 'DelayOffset', 'EnableStaticTriggerShift', 'InfiniteCycle', 'MaxNumCycles', 'PolarityMode', 'ReverseMode', 'SaveModes', 'Sequence', 'State', 'Status', 'StatusMode']) + self.paginadeci5_campo_BunchNumberEnd_R.setText(str(tmp[0].value)) + self.paginadeci5_campo_BunchNumberStart_R.setText(str(tmp[1].value)) + if tmp[2].value: + self.paginadeci5_campo_DelayMode.setChecked(1) + self.paginagenerale_5modalita.setText('Delay') + else: + self.paginadeci5_campo_DelayMode.setChecked(0) + self.paginadeci5_campo_DelayOffset_R.setText(str(tmp[3].value)) + if tmp[4].value: + self.paginadeci5_campo_EnableStaticTriggerShift.lettura.setText('True') + else: + self.paginadeci5_campo_EnableStaticTriggerShift.lettura.setText('False') + if tmp[5].value: + self.paginadeci5_campo_InfiniteCycle.lettura.setText('True') + else: + self.paginadeci5_campo_InfiniteCycle.lettura.setText('False') + self.paginadeci5_campo_MaxNumCycles_R.setText(str(tmp[6].value)) + if tmp[7].value: + self.paginadeci5_campo_PolarityMode.lettura.setText('True') + else: + self.paginadeci5_campo_PolarityMode.lettura.setText('False') + if tmp[8].value: + self.paginadeci5_campo_ReverseMode.lettura.setText('True') + else: + self.paginadeci5_campo_ReverseMode.lettura.setText('False') + if tmp[9].value: + self.paginadeci5_campo_SaveModes.lettura.setText('True') + else: + self.paginadeci5_campo_SaveModes.lettura.setText('False') + self.paginadeci5_campo_Sequence_R.setText(str(tmp[10].value)) + self.paginadeci5_campo_State.setText(str(tmp[11].value)) + self.paginadeci5_campo_Status.setText(str(tmp[12].value)) + if tmp[13].value: + self.paginadeci5_campo_StatusMode.setChecked(1) + self.paginagenerale_5modalita.setText('Status') + else: + self.paginadeci5_campo_StatusMode.setChecked(0) + except: + self.paginadeci5_campo_BunchNumberEnd_R.setText('#####') + self.paginadeci5_campo_BunchNumberStart_R.setText('#####') + self.paginagenerale_5modalita.setText('#####') + self.paginadeci5_campo_DelayOffset_R.setText('#####') + self.paginadeci5_campo_Sequence_R.setText('#####') + self.paginadeci5_campo_State.setText('#####') + self.paginadeci5_campo_Status.setText('#####') + self.paginadeci5_campo_MaxNumCycles_R.setText('#####') + self.paginadeci5_campo_DelayMode.setChecked(0) + self.paginadeci5_campo_StatusMode.setChecked(0) + self.paginadeci5_campo_EnableStaticTriggerShift.lettura.setText('UNKNOW') + self.paginadeci5_campo_InfiniteCycle.lettura.setText('UNKNOW') + self.paginadeci5_campo_PolarityMode.lettura.setText('UNKNOW') + self.paginadeci5_campo_ReverseMode.lettura.setText('UNKNOW') + self.paginadeci5_campo_SaveModes.lettura.setText('UNKNOW') + + def accendi1(self): + if self.paginadeci1_campo_BunchNumber.radiopositive.isChecked(): + devicelist['1'].command_inout('Start', 1) + else: + devicelist['1'].command_inout('Start', 0) + + def accendi2(self): + if self.paginadeci2_campo_BunchNumber.radiopositive.isChecked(): + devicelist['2'].command_inout('Start', 1) + else: + devicelist['2'].command_inout('Start', 0) + + def accendi3(self): + if self.paginadeci3_campo_BunchNumber.radiopositive.isChecked(): + devicelist['3'].command_inout('Start', 1) + else: + devicelist['3'].command_inout('Start', 0) + + def accendi4(self): + if self.paginadeci4_campo_BunchNumber.radiopositive.isChecked(): + devicelist['4'].command_inout('Start', 1) + else: + devicelist['4'].command_inout('Start', 0) + + def accendi5(self): + if self.paginadeci5_campo_BunchNumber.radiopositive.isChecked(): + devicelist['5'].command_inout('Start', 1) + else: + devicelist['5'].command_inout('Start', 0) + + def spegni1(self): + devicelist['1'].command_inout('Stop') + + def spegni2(self): + devicelist['2'].command_inout('Stop') + + def spegni3(self): + devicelist['3'].command_inout('Stop') + + def spegni4(self): + devicelist['4'].command_inout('Stop') + + def spegni5(self): + devicelist['5'].command_inout('Stop') + + def applica1(self): + try: + BunchNumberEnd_new = float(str(self.paginadeci1_campo_BunchNumberEnd_W.text())) + devicelist['1'].write_attribute('BunchNumberEnd', BunchNumberEnd_new) + except: + print('not float ' + str(self.paginadeci1_campo_BunchNumberEnd_W.text())) + try: + BunchNumberStart_new = int(str(self.paginadeci1_campo_BunchNumberStart_W.text())) + devicelist['1'].write_attribute('BunchNumberStart', BunchNumberStart_new) + except: + print('not float ' + str(self.paginadeci1_campo_BunchNumberStart_W.text())) + try: + DelayOffset_new = float(str(self.paginadeci1_campo_DelayOffset_W.text())) + devicelist['1'].write_attribute('DelayOffset', DelayOffset_new) + except: + print('not float ' + str(self.paginadeci1_campo_DelayOffset_W.text())) + try: + MaxNumCycles_new = float(str(self.paginadeci1_campo_MaxNumCycles_W.text())) + devicelist['1'].write_attribute('MaxNumCycles', MaxNumCycles_new) + except: + print('not float ' + str(self.paginadeci1_campo_MaxNumCycles_W.text())) + try: + tmp = str(self.paginadeci1_campo_Sequence_W.text()).replace('[', '').replace(']','') + Sequence_new = [int(aa) for aa in tmp.split(',')] + devicelist['1'].write_attribute('Sequence', Sequence_new) + except: + print('not float ' + str(self.paginadeci1_campo_Sequence_W.text())) + if self.paginadeci1_campo_DelayMode.isChecked(): + DelayMode_new = True + else: + DelayMode_new = False + try: + devicelist['1'].write_attribute('DelayMode', DelayMode_new) + except: + print('Error DelayMode') + if self.paginadeci1_campo_StatusMode.isChecked(): + StatusMode_new = True + else: + StatusMode_new = False + try: + devicelist['1'].write_attribute('StatusMode', StatusMode_new) + except: + print('Error StatusMode') + if self.paginadeci1_campo_EnableStaticTriggerShift.radiopositive.isChecked(): + EnableStaticTriggerShift_new = True + else: + EnableStaticTriggerShift_new = False + try: + devicelist['1'].write_attribute('EnableStaticTriggerShift', EnableStaticTriggerShift_new) + except: + print('Error EnableStaticTriggerShift') + if self.paginadeci1_campo_PolarityMode.radiopositive.isChecked(): + PolarityMode_new = True + else: + PolarityMode_new = False + try: + devicelist['1'].write_attribute('PolarityMode', PolarityMode_new) + except: + print('Error PolarityMode') + if self.paginadeci1_campo_ReverseMode.radiopositive.isChecked(): + ReverseMode_new = True + else: + ReverseMode_new = False + try: + devicelist['1'].write_attribute('ReverseMode', ReverseMode_new) + except: + print('Error ReverseMode') + if self.paginadeci1_campo_SaveModes.radiopositive.isChecked(): + SaveModes_new = True + else: + SaveModes_new = False + try: + devicelist['1'].write_attribute('SaveModes', SaveModes_new) + except: + print('Error SaveModes') + if self.paginadeci1_campo_InfiniteCycle.radiopositive.isChecked(): + InfiniteCycle_new = True + else: + InfiniteCycle_new = False + try: + devicelist['1'].write_attribute('InfiniteCycle', InfiniteCycle_new) + except: + print('Error InfiniteCycle') + print('applica1 DONE') + + def applica2(self): + try: + BunchNumberEnd_new = float(str(self.paginadeci2_campo_BunchNumberEnd_W.text())) + devicelist['2'].write_attribute('BunchNumberEnd', BunchNumberEnd_new) + except: + print('not float ' + str(self.paginadeci2_campo_BunchNumberEnd_W.text())) + try: + BunchNumberStart_new = float(str(self.paginadeci2_campo_BunchNumberStart_W.text())) + devicelist['2'].write_attribute('BunchNumberStart', BunchNumberStart_new) + except: + print('not float ' + str(self.paginadeci2_campo_BunchNumberStart_W.text())) + try: + DelayOffset_new = float(str(self.paginadeci2_campo_DelayOffset_W.text())) + devicelist['2'].write_attribute('DelayOffset', DelayOffset_new) + except: + print('not float ' + str(self.paginadeci2_campo_DelayOffset_W.text())) + try: + MaxNumCycles_new = float(str(self.paginadeci2_campo_MaxNumCycles_W.text())) + devicelist['2'].write_attribute('MaxNumCycles', MaxNumCycles_new) + except: + print('not float ' + str(self.paginadeci2_campo_MaxNumCycles_W.text())) + try: + tmp = str(self.paginadeci2_campo_Sequence_W.text()).replace('[', '').replace(']','') + Sequence_new = [int(aa) for aa in tmp.split(',')] + devicelist['2'].write_attribute('Sequence', Sequence_new) + except: + print('not float ' + str(self.paginadeci2_campo_Sequence_W.text())) + if self.paginadeci2_campo_DelayMode.isChecked(): + DelayMode_new = True + else: + DelayMode_new = False + try: + devicelist['2'].write_attribute('DelayMode', DelayMode_new) + except: + print('Error DelayMode') + if self.paginadeci2_campo_StatusMode.isChecked(): + StatusMode_new = True + else: + StatusMode_new = False + try: + devicelist['2'].write_attribute('StatusMode', StatusMode_new) + except: + print('Error StatusMode') + if self.paginadeci2_campo_EnableStaticTriggerShift.radiopositive.isChecked(): + EnableStaticTriggerShift_new = True + else: + EnableStaticTriggerShift_new = False + try: + devicelist['2'].write_attribute('EnableStaticTriggerShift', EnableStaticTriggerShift_new) + except: + print('Error EnableStaticTriggerShift') + if self.paginadeci2_campo_PolarityMode.radiopositive.isChecked(): + PolarityMode_new = True + else: + PolarityMode_new = False + try: + devicelist['2'].write_attribute('PolarityMode', PolarityMode_new) + except: + print('Error PolarityMode') + if self.paginadeci2_campo_ReverseMode.radiopositive.isChecked(): + ReverseMode_new = True + else: + ReverseMode_new = False + try: + devicelist['2'].write_attribute('ReverseMode', ReverseMode_new) + except: + print('Error ReverseMode') + if self.paginadeci2_campo_SaveModes.radiopositive.isChecked(): + SaveModes_new = True + else: + SaveModes_new = False + try: + devicelist['2'].write_attribute('SaveModes', SaveModes_new) + except: + print('Error SaveModes') + if self.paginadeci2_campo_InfiniteCycle.radiopositive.isChecked(): + InfiniteCycle_new = True + else: + InfiniteCycle_new = False + try: + devicelist['2'].write_attribute('InfiniteCycle', InfiniteCycle_new) + except: + print('Error InfiniteCycle') + print('applica2 DONE') + + def applica3(self): + try: + BunchNumberEnd_new = float(str(self.paginadeci3_campo_BunchNumberEnd_W.text())) + devicelist['3'].write_attribute('BunchNumberEnd', BunchNumberEnd_new) + except: + print('not float ' + str(self.paginadeci3_campo_BunchNumberEnd_W.text())) + try: + BunchNumberStart_new = float(str(self.paginadeci3_campo_BunchNumberStart_W.text())) + devicelist['3'].write_attribute('BunchNumberStart', BunchNumberStart_new) + except: + print('not float ' + str(self.paginadeci3_campo_BunchNumberStart_W.text())) + try: + DelayOffset_new = float(str(self.paginadeci3_campo_DelayOffset_W.text())) + devicelist['3'].write_attribute('DelayOffset', DelayOffset_new) + except: + print('not float ' + str(self.paginadeci3_campo_DelayOffset_W.text())) + try: + MaxNumCycles_new = float(str(self.paginadeci3_campo_MaxNumCycles_W.text())) + devicelist['3'].write_attribute('MaxNumCycles', MaxNumCycles_new) + except: + print('not float ' + str(self.paginadeci3_campo_MaxNumCycles_W.text())) + try: + tmp = str(self.paginadeci3_campo_Sequence_W.text()).replace('[', '').replace(']','') + Sequence_new = [int(aa) for aa in tmp.split(',')] + devicelist['3'].write_attribute('Sequence', Sequence_new) + except: + print('not float ' + str(self.paginadeci3_campo_Sequence_W.text())) + if self.paginadeci3_campo_DelayMode.isChecked(): + DelayMode_new = True + else: + DelayMode_new = False + try: + devicelist['3'].write_attribute('DelayMode', DelayMode_new) + except: + print('Error DelayMode') + if self.paginadeci3_campo_StatusMode.isChecked(): + StatusMode_new = True + else: + StatusMode_new = False + try: + devicelist['3'].write_attribute('StatusMode', StatusMode_new) + except: + print('Error StatusMode') + if self.paginadeci3_campo_EnableStaticTriggerShift.radiopositive.isChecked(): + EnableStaticTriggerShift_new = True + else: + EnableStaticTriggerShift_new = False + try: + devicelist['3'].write_attribute('EnableStaticTriggerShift', EnableStaticTriggerShift_new) + except: + print('Error EnableStaticTriggerShift') + if self.paginadeci3_campo_PolarityMode.radiopositive.isChecked(): + PolarityMode_new = True + else: + PolarityMode_new = False + try: + devicelist['3'].write_attribute('PolarityMode', PolarityMode_new) + except: + print('Error PolarityMode') + if self.paginadeci3_campo_ReverseMode.radiopositive.isChecked(): + ReverseMode_new = True + else: + ReverseMode_new = False + try: + devicelist['3'].write_attribute('ReverseMode', ReverseMode_new) + except: + print('Error ReverseMode') + if self.paginadeci3_campo_SaveModes.radiopositive.isChecked(): + SaveModes_new = True + else: + SaveModes_new = False + try: + devicelist['3'].write_attribute('SaveModes', SaveModes_new) + except: + print('Error SaveModes') + if self.paginadeci3_campo_InfiniteCycle.radiopositive.isChecked(): + InfiniteCycle_new = True + else: + InfiniteCycle_new = False + try: + devicelist['3'].write_attribute('InfiniteCycle', InfiniteCycle_new) + except: + print('Error InfiniteCycle') + print('applica3 DONE') + + def applica4(self): + try: + BunchNumberEnd_new = float(str(self.paginadeci4_campo_BunchNumberEnd_W.text())) + devicelist['4'].write_attribute('BunchNumberEnd', BunchNumberEnd_new) + except: + print('not float ' + str(self.paginadeci4_campo_BunchNumberEnd_W.text())) + try: + BunchNumberStart_new = float(str(self.paginadeci4_campo_BunchNumberStart_W.text())) + devicelist['4'].write_attribute('BunchNumberStart', BunchNumberStart_new) + except: + print('not float ' + str(self.paginadeci4_campo_BunchNumberStart_W.text())) + try: + DelayOffset_new = float(str(self.paginadeci4_campo_DelayOffset_W.text())) + devicelist['4'].write_attribute('DelayOffset', DelayOffset_new) + except: + print('not float ' + str(self.paginadeci4_campo_DelayOffset_W.text())) + try: + MaxNumCycles_new = float(str(self.paginadeci4_campo_MaxNumCycles_W.text())) + devicelist['4'].write_attribute('MaxNumCycles', MaxNumCycles_new) + except: + print('not float ' + str(self.paginadeci4_campo_MaxNumCycles_W.text())) + try: + tmp = str(self.paginadeci4_campo_Sequence_W.text()).replace('[', '').replace(']','') + Sequence_new = [int(aa) for aa in tmp.split(',')] + devicelist['4'].write_attribute('Sequence', Sequence_new) + except: + print('not float ' + str(self.paginadeci4_campo_Sequence_W.text())) + if self.paginadeci4_campo_DelayMode.isChecked(): + DelayMode_new = True + else: + DelayMode_new = False + try: + devicelist['4'].write_attribute('DelayMode', DelayMode_new) + except: + print('Error DelayMode') + if self.paginadeci4_campo_StatusMode.isChecked(): + StatusMode_new = True + else: + StatusMode_new = False + try: + devicelist['4'].write_attribute('StatusMode', StatusMode_new) + except: + print('Error StatusMode') + if self.paginadeci4_campo_EnableStaticTriggerShift.radiopositive.isChecked(): + EnableStaticTriggerShift_new = True + else: + EnableStaticTriggerShift_new = False + try: + devicelist['4'].write_attribute('EnableStaticTriggerShift', EnableStaticTriggerShift_new) + except: + print('Error EnableStaticTriggerShift') + if self.paginadeci4_campo_PolarityMode.radiopositive.isChecked(): + PolarityMode_new = True + else: + PolarityMode_new = False + try: + devicelist['4'].write_attribute('PolarityMode', PolarityMode_new) + except: + print('Error PolarityMode') + if self.paginadeci4_campo_ReverseMode.radiopositive.isChecked(): + ReverseMode_new = True + else: + ReverseMode_new = False + try: + devicelist['4'].write_attribute('ReverseMode', ReverseMode_new) + except: + print('Error ReverseMode') + if self.paginadeci4_campo_SaveModes.radiopositive.isChecked(): + SaveModes_new = True + else: + SaveModes_new = False + try: + devicelist['4'].write_attribute('SaveModes', SaveModes_new) + except: + print('Error SaveModes') + if self.paginadeci4_campo_InfiniteCycle.radiopositive.isChecked(): + InfiniteCycle_new = True + else: + InfiniteCycle_new = False + try: + devicelist['4'].write_attribute('InfiniteCycle', InfiniteCycle_new) + except: + print('Error InfiniteCycle') + print('applica4 DONE') + + def applica5(self): + try: + BunchNumberEnd_new = float(str(self.paginadeci5_campo_BunchNumberEnd_W.text())) + devicelist['5'].write_attribute('BunchNumberEnd', BunchNumberEnd_new) + except: + print('not float ' + str(self.paginadeci5_campo_BunchNumberEnd_W.text())) + try: + BunchNumberStart_new = float(str(self.paginadeci5_campo_BunchNumberStart_W.text())) + devicelist['5'].write_attribute('BunchNumberStart', BunchNumberStart_new) + except: + print('not float ' + str(self.paginadeci5_campo_BunchNumberStart_W.text())) + try: + DelayOffset_new = float(str(self.paginadeci5_campo_DelayOffset_W.text())) + devicelist['5'].write_attribute('DelayOffset', DelayOffset_new) + except: + print('not float ' + str(self.paginadeci5_campo_DelayOffset_W.text())) + try: + MaxNumCycles_new = float(str(self.paginadeci5_campo_MaxNumCycles_W.text())) + devicelist['5'].write_attribute('MaxNumCycles', MaxNumCycles_new) + except: + print('not float ' + str(self.paginadeci5_campo_MaxNumCycles_W.text())) + try: + tmp = str(self.paginadeci5_campo_Sequence_W.text()).replace('[', '').replace(']','') + Sequence_new = [int(aa) for aa in tmp.split(',')] + devicelist['5'].write_attribute('Sequence', Sequence_new) + except: + print('not float ' + str(self.paginadeci5_campo_Sequence_W.text())) + if self.paginadeci5_campo_DelayMode.isChecked(): + DelayMode_new = True + else: + DelayMode_new = False + try: + devicelist['5'].write_attribute('DelayMode', DelayMode_new) + except: + print('Error DelayMode') + if self.paginadeci5_campo_StatusMode.isChecked(): + StatusMode_new = True + else: + StatusMode_new = False + try: + devicelist['5'].write_attribute('StatusMode', StatusMode_new) + except: + print('Error StatusMode') + if self.paginadeci5_campo_EnableStaticTriggerShift.radiopositive.isChecked(): + EnableStaticTriggerShift_new = True + else: + EnableStaticTriggerShift_new = False + try: + devicelist['5'].write_attribute('EnableStaticTriggerShift', EnableStaticTriggerShift_new) + except: + print('Error EnableStaticTriggerShift') + if self.paginadeci5_campo_PolarityMode.radiopositive.isChecked(): + PolarityMode_new = True + else: + PolarityMode_new = False + try: + devicelist['5'].write_attribute('PolarityMode', PolarityMode_new) + except: + print('Error PolarityMode') + if self.paginadeci5_campo_ReverseMode.radiopositive.isChecked(): + ReverseMode_new = True + else: + ReverseMode_new = False + try: + devicelist['5'].write_attribute('ReverseMode', ReverseMode_new) + except: + print('Error ReverseMode') + if self.paginadeci5_campo_SaveModes.radiopositive.isChecked(): + SaveModes_new = True + else: + SaveModes_new = False + try: + devicelist['5'].write_attribute('SaveModes', SaveModes_new) + except: + print('Error SaveModes') + if self.paginadeci5_campo_InfiniteCycle.radiopositive.isChecked(): + InfiniteCycle_new = True + else: + InfiniteCycle_new = False + try: + devicelist['5'].write_attribute('InfiniteCycle', InfiniteCycle_new) + except: + print('Error InfiniteCycle') + print('applica5 DONE') + + + def sceltadelay(self): + tmp = self.sender() + print(tmp.chiave) + devicelist[tmp.chiave].write_attribute('DelayMode', 1) + devicelist[tmp.chiave].write_attribute('InfiniteCycle', 0) + devicelist[tmp.chiave].write_attribute('InfiniteCycle', 1) + + def sceltastatus(self): + tmp = self.sender() + devicelist[tmp.chiave].write_attribute('StatusMode', 1) + devicelist[tmp.chiave].write_attribute('InfiniteCycle', 0) + devicelist[tmp.chiave].write_attribute('InfiniteCycle', 1) + + +class LineEditRO(QLineEdit): + def __init__(self): + super(LineEditRO, self).__init__() + self.setReadOnly(1) + self.setStyleSheet("background-color: rgb(200, 200, 200)") + + +class DoppiaScelta(QFrame): + def __init__(self, testo, chi, cosa): + super(DoppiaScelta, self).__init__() + self.label = QLabel(testo) + self.chiave = chi + self.attribrutto = cosa + self.lettura = LineEditRO() + self.radiopositive = QRadioButton('on') + self.radionegative = QRadioButton('off') + self.radionegative.setChecked(1) + dopsce_lo = QHBoxLayout() + dopsce_lo.addWidget(self.label) + dopsce_lo.addWidget(self.lettura) + dopsce_lo.addWidget(self.radiopositive) + dopsce_lo.addWidget(self.radionegative) + self.setLayout(dopsce_lo) + + def fallo_true(self): + devicelist[self.chiave].write_attribute(self.attribrutto, 1) + + def fallo_false(self): + devicelist[self.chiave].write_attribute(self.attribrutto, 0) + + +class DoppiaSceltanofun(QFrame): + def __init__(self, testo): + super(DoppiaSceltanofun, self).__init__() + self.label = QLabel(testo) + self.radiopositive = QRadioButton('on') + self.radionegative = QRadioButton('off') + self.radionegative.setChecked(1) + dopsce_lo = QHBoxLayout() + dopsce_lo.addWidget(self.label) + dopsce_lo.addWidget(self.radiopositive) + dopsce_lo.addWidget(self.radionegative) + self.setLayout(dopsce_lo) + + +if __name__ == '__main__': + app = QApplication([]) + window = Finestra() + window.show() + app.exec_()