display all liberas

This commit is contained in:
Grzegorz Kowalski 2022-09-26 22:04:38 +02:00
parent 55d91d8551
commit 81232a2674
5 changed files with 541 additions and 888 deletions

View File

@ -18,8 +18,8 @@
"units": {
},
"settings": {
"x": "01",
"y": "07",
"x": ["01", "03", "05", "07", "09", "11"],
"y": ["02", "04", "06", "08", "10", "12"],
"global_orbit": "10",
"global_magnet": "10"
}

View File

@ -12,6 +12,7 @@ from threads import ThreadWrapper
from grouping import GroupingWindow
from seroutput import SERWindow
from statuswidget import StatusWidget
base_dir = os.path.dirname(os.path.realpath(__file__))
@ -35,6 +36,12 @@ class MainWindow(QtGui.QWidget):
self.grouping = GroupingWindow(self)
self.ser_output = SERWindow(self)
self.x_list_layout = QtGui.QVBoxLayout()
self.XFrame.setLayout(self.x_list_layout)
self.y_list_layout = QtGui.QVBoxLayout()
self.YFrame.setLayout(self.y_list_layout)
self.connect(self.FOFBONButton, QtCore.SIGNAL("clicked()"),
lambda: self.send_tim_event("EVG", magic_numbers.EventID.FOFB_ON)
)
@ -54,32 +61,6 @@ class MainWindow(QtGui.QWidget):
self.connect(self.GroupingButton, QtCore.SIGNAL("clicked()"), self.grouping.show)
self.connect(self.SERButton, QtCore.SIGNAL("clicked()"), self.ser_output.show)
self.connect(self.XInterlockResetButton, QtCore.SIGNAL("clicked()"),
lambda: self.execute_ireg_command_on_axis("x", "FOFBIlkReset")
)
self.connect(self.XReconnectButton, QtCore.SIGNAL("clicked()"),
lambda: self.execute_ireg_command_on_axis("x", "FOFBReconnect")
)
self.connect(self.XResetPIButton, QtCore.SIGNAL("clicked()"),
lambda: self.execute_ireg_command_on_axis("x", "FOFBPIReset")
)
self.connect(self.XSaturationResetButton, QtCore.SIGNAL("clicked()"),
lambda: self.execute_ireg_command_on_axis("x", "FOFBSaturationReset")
)
self.connect(self.YInterlockResetButton, QtCore.SIGNAL("clicked()"),
lambda: self.execute_ireg_command_on_axis("y", "FOFBIlkReset")
)
self.connect(self.YReconnectButton, QtCore.SIGNAL("clicked()"),
lambda: self.execute_ireg_command_on_axis("y", "FOFBReconnect")
)
self.connect(self.YResetPIButton, QtCore.SIGNAL("clicked()"),
lambda: self.execute_ireg_command_on_axis("y", "FOFBPIReset")
)
self.connect(self.YSaturationResetButton, QtCore.SIGNAL("clicked()"),
lambda: self.execute_ireg_command_on_axis("y", "FOFBSaturationReset")
)
self.update_timer = QtCore.QTimer()
self.connect(self.update_timer, QtCore.SIGNAL("timeout()"), self.update)
@ -92,38 +73,6 @@ class MainWindow(QtGui.QWidget):
def setModel(self):
self.EVGStateLabel.setModel("EVG")
self.XStateLabel.setModel(self.settings["x"])
self.XInterlockLabel.setModel(self.settings["x"], "FOFBIlk")
self.XIDLabel.setText(self.settings["x"])
self.XFOFBStateLabel.setModel(self.settings["x"], "FOFBState")
self.XFOFBStateLabel.setColorMap(cm.FOFB_STATE)
# self.XBuffersLabel.setModel()
self.XS1Label.setModel(self.settings["x"], "FOFBSaturation", 0)
self.XS1Label.setColorMap(cm.RED_BOOL)
self.XS2Label.setModel(self.settings["x"], "FOFBSaturation", 1)
self.XS2Label.setColorMap(cm.RED_BOOL)
self.XS3Label.setModel(self.settings["x"], "FOFBSaturation", 2)
self.XS3Label.setColorMap(cm.RED_BOOL)
self.XS4Label.setModel(self.settings["x"], "FOFBSaturation", 3)
self.XS4Label.setColorMap(cm.RED_BOOL)
self.YStateLabel.setModel(self.settings["y"])
self.YInterlockLabel.setModel(self.settings["y"], "FOFBIlk")
self.YIDLabel.setText(self.settings["y"])
self.YFOFBStateLabel.setModel(self.settings["y"], "FOFBState")
self.YFOFBStateLabel.setColorMap(cm.FOFB_STATE)
# self.YBuffersLabel.setModel()
self.YS1Label.setModel(self.settings["y"], "FOFBSaturation", 0)
self.YS1Label.setColorMap(cm.RED_BOOL)
self.YS2Label.setModel(self.settings["y"], "FOFBSaturation", 1)
self.YS2Label.setColorMap(cm.RED_BOOL)
self.YS3Label.setModel(self.settings["y"], "FOFBSaturation", 2)
self.YS3Label.setColorMap(cm.RED_BOOL)
self.YS4Label.setModel(self.settings["y"], "FOFBSaturation", 3)
self.YS4Label.setColorMap(cm.RED_BOOL)
def start(self, fn, config=None):
ThreadWrapper(self.load, args=(fn, config)).start()
@ -133,6 +82,7 @@ class MainWindow(QtGui.QWidget):
# fill grouping and magnets
for dev in sorted(self.devices.keys()):
if dev.upper() != "EVG":
self.addLibera(dev)
self.grouping.addLibera(dev)
self.ser_output.addLibera(dev)
self.grouping.addGlobal(self.settings["global_orbit"], self.settings["global_magnet"])
@ -177,6 +127,16 @@ class MainWindow(QtGui.QWidget):
self.cache[dev] = {}
self.cache[dev][attr] = None
def addLibera(self, dev):
print "[ INFO]: Status: add Libera %s" % dev
libera = StatusWidget(self, dev)
self.connect(self, QtCore.SIGNAL("update"), libera.update)
# self.liberas[dev] = libera
if dev in self.settings["x"]:
self.x_list_layout.addWidget(libera)
elif dev in self.settings["y"]:
self.y_list_layout.addWidget(libera)
def update(self):
print "[ INFO]: update"
try:
@ -251,8 +211,8 @@ class MainWindow(QtGui.QWidget):
except Exception as e:
print str(e)
def execute_ireg_command_on_axis(self, axis, cmd):
self.execute_ireg_command(self.settings[axis], cmd)
# def execute_ireg_command_on_axis(self, axis, cmd):
# self.execute_ireg_command(self.settings[axis], cmd)
def send_tim_event(self, dev, evt):
print "[ INFO]: sw event %s/%d" % (dev, evt)

53
statuswidget.py Normal file
View File

@ -0,0 +1,53 @@
import os
from PyQt4 import QtGui, QtCore, uic
from labels import cm
base_dir = os.path.dirname(os.path.realpath(__file__))
class StatusWidget(QtGui.QWidget):
def __init__(self, main_window, device, parent=None):
QtGui.QWidget.__init__(self, parent)
uic.loadUi("%s/ui/status.ui" % base_dir, self)
self.main_window = main_window
self.units = self.main_window.units
self.addAttribute = lambda dev, attr: self.main_window.addAttribute(dev, attr)
self.device = device
self.IDLabel.setText(device)
self.StateLabel.setModel(device)
self.InterlockLabel.setModel(device, "FOFBIlk")
self.IDLabel.setText(device)
self.FOFBStateLabel.setModel(device, "FOFBState")
self.FOFBStateLabel.setColorMap(cm.FOFB_STATE)
# self.BuffersLabel.setModel()
self.S1Label.setModel(device, "FOFBSaturation", 0)
self.S1Label.setColorMap(cm.RED_BOOL)
self.S2Label.setModel(device, "FOFBSaturation", 1)
self.S2Label.setColorMap(cm.RED_BOOL)
self.S3Label.setModel(device, "FOFBSaturation", 2)
self.S3Label.setColorMap(cm.RED_BOOL)
self.S4Label.setModel(device, "FOFBSaturation", 3)
self.S4Label.setColorMap(cm.RED_BOOL)
self.connect(self.InterlockResetButton, QtCore.SIGNAL("clicked()"),
lambda: self.main_window.execute_ireg_command(device, "FOFBIlkReset")
)
self.connect(self.ReconnectButton, QtCore.SIGNAL("clicked()"),
lambda: self.main_window.execute_ireg_command(device, "FOFBReconnect")
)
self.connect(self.ResetPIButton, QtCore.SIGNAL("clicked()"),
lambda: self.main_window.execute_ireg_command(device, "FOFBPIReset")
)
self.connect(self.SaturationResetButton, QtCore.SIGNAL("clicked()"),
lambda: self.main_window.execute_ireg_command(device, "FOFBSaturationReset")
)
def update(self, cache):
self.emit(QtCore.SIGNAL("update"), cache)

View File

@ -7,7 +7,7 @@
<x>0</x>
<y>0</y>
<width>742</width>
<height>383</height>
<height>540</height>
</rect>
</property>
<property name="windowTitle">
@ -308,7 +308,7 @@
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<layout class="QVBoxLayout" name="verticalLayout_5">
<layout class="QVBoxLayout" name="verticalLayout_5" stretch="0,1,0">
<property name="spacing">
<number>2</number>
</property>
@ -347,35 +347,6 @@
</property>
</widget>
</item>
<item>
<widget class="StateLabel" name="XStateLabel">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_2">
<property name="orientation">
@ -392,200 +363,13 @@
</layout>
</item>
<item>
<widget class="QFrame" name="frame_3">
<widget class="QFrame" name="XFrame">
<property name="frameShape">
<enum>QFrame::Box</enum>
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
<enum>QFrame::Raised</enum>
</property>
<layout class="QGridLayout" name="gridLayout_3">
<property name="horizontalSpacing">
<number>2</number>
</property>
<property name="margin">
<number>3</number>
</property>
<item row="2" column="2">
<layout class="QVBoxLayout" name="verticalLayout_4">
<property name="spacing">
<number>0</number>
</property>
<item>
<widget class="QLabel" name="label_10">
<property name="font">
<font>
<pointsize>7</pointsize>
</font>
</property>
<property name="text">
<string>Buffers</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="StateLabel" name="XBuffersLabel">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>20</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="1">
<layout class="QVBoxLayout" name="verticalLayout_3">
<property name="spacing">
<number>0</number>
</property>
<item>
<widget class="QLabel" name="label_9">
<property name="font">
<font>
<pointsize>7</pointsize>
</font>
</property>
<property name="text">
<string>FOFB</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="EnumStateLabel" name="XFOFBStateLabel">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>20</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="0">
<widget class="QLabel" name="XIDLabel">
<property name="font">
<font>
<pointsize>13</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>00</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="2" column="3">
<widget class="QPushButton" name="XReconnectButton">
<property name="text">
<string>Reconnect</string>
</property>
</widget>
</item>
<item row="1" column="3">
<widget class="QPushButton" name="XInterlockResetButton">
<property name="text">
<string>Reset</string>
</property>
</widget>
</item>
<item row="1" column="0" colspan="3">
<widget class="InterlockLabel" name="XInterlockLabel">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::Box</enum>
</property>
<property name="text">
<string>INTERLOCK</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="0" column="0" colspan="4">
<widget class="QLabel" name="label_8">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Status</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
@ -603,13 +387,6 @@
<property name="spacing">
<number>2</number>
</property>
<item row="3" column="2">
<widget class="QPushButton" name="XResetPIButton">
<property name="text">
<string>Reset PI</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QPushButton" name="pushButton">
<property name="text">
@ -670,7 +447,7 @@
</property>
</widget>
</item>
<item row="0" column="0" colspan="3">
<item row="0" column="0" colspan="2">
<widget class="QLabel" name="label_5">
<property name="font">
<font>
@ -690,182 +467,6 @@
</layout>
</widget>
</item>
<item>
<widget class="QFrame" name="frame_2">
<property name="frameShape">
<enum>QFrame::Box</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<layout class="QGridLayout" name="gridLayout">
<property name="margin">
<number>3</number>
</property>
<property name="spacing">
<number>2</number>
</property>
<item row="1" column="2">
<widget class="ArrayElementLabel" name="XS3Label">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>41</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="toolTip">
<string>PI controller</string>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="3">
<widget class="ArrayElementLabel" name="XS4Label">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>41</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="toolTip">
<string>Multiplication V.PI[SU.dP]</string>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="ArrayElementLabel" name="XS1Label">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>41</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="toolTip">
<string>Global orbit data P</string>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="ArrayElementLabel" name="XS2Label">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>41</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="toolTip">
<string>Multiplication SU.dP</string>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="4">
<widget class="QPushButton" name="XSaturationResetButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Reset</string>
</property>
</widget>
</item>
<item row="0" column="0" colspan="5">
<widget class="QLabel" name="label_6">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Saturation</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
</item>
@ -877,7 +478,7 @@
<property name="frameShadow">
<enum>QFrame::Raised</enum>
</property>
<layout class="QVBoxLayout" name="verticalLayout_6">
<layout class="QVBoxLayout" name="verticalLayout_6" stretch="0,1,0">
<property name="spacing">
<number>2</number>
</property>
@ -916,35 +517,6 @@
</property>
</widget>
</item>
<item>
<widget class="StateLabel" name="YStateLabel">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer_4">
<property name="orientation">
@ -961,200 +533,13 @@
</layout>
</item>
<item>
<widget class="QFrame" name="frame_7">
<widget class="QFrame" name="YFrame">
<property name="frameShape">
<enum>QFrame::Box</enum>
<enum>QFrame::StyledPanel</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
<enum>QFrame::Raised</enum>
</property>
<layout class="QGridLayout" name="gridLayout_4">
<property name="horizontalSpacing">
<number>2</number>
</property>
<property name="margin">
<number>3</number>
</property>
<item row="2" column="2">
<layout class="QVBoxLayout" name="verticalLayout_7">
<property name="spacing">
<number>0</number>
</property>
<item>
<widget class="QLabel" name="label_13">
<property name="font">
<font>
<pointsize>7</pointsize>
</font>
</property>
<property name="text">
<string>Buffers</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="StateLabel" name="YBuffersLabel">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>20</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="1">
<layout class="QVBoxLayout" name="verticalLayout_8">
<property name="spacing">
<number>0</number>
</property>
<item>
<widget class="QLabel" name="label_14">
<property name="font">
<font>
<pointsize>7</pointsize>
</font>
</property>
<property name="text">
<string>FOFB</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="EnumStateLabel" name="YFOFBStateLabel">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>20</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="2" column="0">
<widget class="QLabel" name="YIDLabel">
<property name="font">
<font>
<pointsize>13</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>00</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="2" column="3">
<widget class="QPushButton" name="YReconnectButton">
<property name="text">
<string>Reconnect</string>
</property>
</widget>
</item>
<item row="1" column="3">
<widget class="QPushButton" name="YInterlockResetButton">
<property name="text">
<string>Reset</string>
</property>
</widget>
</item>
<item row="1" column="0" colspan="3">
<widget class="InterlockLabel" name="YInterlockLabel">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::Box</enum>
</property>
<property name="text">
<string>INTERLOCK</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="0" column="0" colspan="4">
<widget class="QLabel" name="label_15">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Status</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
@ -1172,13 +557,6 @@
<property name="spacing">
<number>2</number>
</property>
<item row="3" column="2">
<widget class="QPushButton" name="YResetPIButton">
<property name="text">
<string>Reset PI</string>
</property>
</widget>
</item>
<item row="3" column="1">
<widget class="QPushButton" name="pushButton_15">
<property name="text">
@ -1191,23 +569,6 @@
</property>
</widget>
</item>
<item row="0" column="0" colspan="3">
<widget class="QLabel" name="label_7">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Parameters</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="3" column="0">
<widget class="QPushButton" name="pushButton_16">
<property name="text">
@ -1256,167 +617,8 @@
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<widget class="QFrame" name="frame_9">
<property name="frameShape">
<enum>QFrame::Box</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<layout class="QGridLayout" name="gridLayout_6">
<property name="margin">
<number>3</number>
</property>
<property name="spacing">
<number>2</number>
</property>
<item row="1" column="2">
<widget class="ArrayElementLabel" name="YS3Label">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>41</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="toolTip">
<string>PI controller</string>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="3">
<widget class="ArrayElementLabel" name="YS4Label">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>41</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="toolTip">
<string>Multiplication V.PI[SU.dP]</string>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="ArrayElementLabel" name="YS1Label">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>41</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="toolTip">
<string>Global orbit data P</string>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="ArrayElementLabel" name="YS2Label">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>41</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="toolTip">
<string>Multiplication SU.dP</string>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="4">
<widget class="QPushButton" name="YSaturationResetButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Reset</string>
</property>
</widget>
</item>
<item row="0" column="0" colspan="5">
<widget class="QLabel" name="label_16">
<item row="0" column="0" colspan="2">
<widget class="QLabel" name="label_7">
<property name="font">
<font>
<pointsize>10</pointsize>
@ -1425,7 +627,7 @@
</font>
</property>
<property name="text">
<string>Saturation</string>
<string>Parameters</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
@ -1446,21 +648,6 @@
<extends>QLabel</extends>
<header>labels</header>
</customwidget>
<customwidget>
<class>InterlockLabel</class>
<extends>QLabel</extends>
<header>labels</header>
</customwidget>
<customwidget>
<class>ArrayElementLabel</class>
<extends>QLabel</extends>
<header>labels</header>
</customwidget>
<customwidget>
<class>EnumStateLabel</class>
<extends>QLabel</extends>
<header>labels</header>
</customwidget>
</customwidgets>
<resources/>
<connections/>

453
ui/status.ui Normal file
View File

@ -0,0 +1,453 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>Form</class>
<widget class="QWidget" name="Form">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>292</width>
<height>107</height>
</rect>
</property>
<property name="windowTitle">
<string>Form</string>
</property>
<layout class="QVBoxLayout" name="verticalLayout">
<property name="spacing">
<number>0</number>
</property>
<property name="margin">
<number>0</number>
</property>
<item>
<widget class="QFrame" name="frame_3">
<property name="frameShape">
<enum>QFrame::Box</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<layout class="QGridLayout" name="gridLayout_3">
<property name="margin">
<number>2</number>
</property>
<property name="spacing">
<number>2</number>
</property>
<item row="1" column="1">
<widget class="QLabel" name="IDLabel">
<property name="font">
<font>
<pointsize>13</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>00</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="0" column="5">
<widget class="QPushButton" name="InterlockResetButton">
<property name="text">
<string>Reset</string>
</property>
</widget>
</item>
<item row="1" column="2">
<layout class="QVBoxLayout" name="verticalLayout_3">
<property name="spacing">
<number>0</number>
</property>
<item>
<widget class="QLabel" name="label_9">
<property name="font">
<font>
<pointsize>7</pointsize>
</font>
</property>
<property name="text">
<string>FOFB</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="EnumStateLabel" name="FOFBStateLabel">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>20</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="3">
<layout class="QVBoxLayout" name="verticalLayout_4">
<property name="spacing">
<number>0</number>
</property>
<item>
<widget class="QLabel" name="label_10">
<property name="font">
<font>
<pointsize>7</pointsize>
</font>
</property>
<property name="text">
<string>Buffers</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class="StateLabel" name="BuffersLabel">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>20</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</item>
<item row="1" column="4">
<widget class="QPushButton" name="ReconnectButton">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>Reconnect</string>
</property>
</widget>
</item>
<item row="1" column="5">
<widget class="QPushButton" name="ResetPIButton">
<property name="maximumSize">
<size>
<width>16777215</width>
<height>16777215</height>
</size>
</property>
<property name="text">
<string>Reset PI</string>
</property>
</widget>
</item>
<item row="2" column="5">
<widget class="QPushButton" name="SaturationResetButton">
<property name="sizePolicy">
<sizepolicy hsizetype="Minimum" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>Reset</string>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="StateLabel" name="StateLabel">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>16777215</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="2" column="0" colspan="5">
<widget class="QFrame" name="frame_2">
<property name="frameShape">
<enum>QFrame::Box</enum>
</property>
<property name="frameShadow">
<enum>QFrame::Plain</enum>
</property>
<layout class="QGridLayout" name="gridLayout">
<property name="margin">
<number>3</number>
</property>
<property name="spacing">
<number>2</number>
</property>
<item row="1" column="3">
<widget class="ArrayElementLabel" name="S3Label">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>41</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="toolTip">
<string>PI controller</string>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="1">
<widget class="ArrayElementLabel" name="S1Label">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>41</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="toolTip">
<string>Global orbit data P</string>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="2">
<widget class="ArrayElementLabel" name="S2Label">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>41</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="toolTip">
<string>Multiplication SU.dP</string>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="4">
<widget class="ArrayElementLabel" name="S4Label">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="maximumSize">
<size>
<width>41</width>
<height>25</height>
</size>
</property>
<property name="font">
<font>
<pointsize>24</pointsize>
<weight>50</weight>
<bold>false</bold>
</font>
</property>
<property name="toolTip">
<string>Multiplication V.PI[SU.dP]</string>
</property>
<property name="text">
<string>∙</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item row="1" column="0">
<widget class="QLabel" name="label_6">
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="text">
<string>Saturation</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item row="0" column="0" colspan="5">
<widget class="InterlockLabel" name="InterlockLabel">
<property name="minimumSize">
<size>
<width>0</width>
<height>0</height>
</size>
</property>
<property name="font">
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name="styleSheet">
<string notr="true"/>
</property>
<property name="frameShape">
<enum>QFrame::Box</enum>
</property>
<property name="text">
<string>INTERLOCK</string>
</property>
<property name="alignment">
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
</layout>
</widget>
</item>
</layout>
</widget>
<customwidgets>
<customwidget>
<class>StateLabel</class>
<extends>QLabel</extends>
<header>labels</header>
</customwidget>
<customwidget>
<class>InterlockLabel</class>
<extends>QLabel</extends>
<header>labels</header>
</customwidget>
<customwidget>
<class>ArrayElementLabel</class>
<extends>QLabel</extends>
<header>labels</header>
</customwidget>
<customwidget>
<class>EnumStateLabel</class>
<extends>QLabel</extends>
<header>labels</header>
</customwidget>
</customwidgets>
<resources/>
<connections/>
</ui>