mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-06 18:10:40 +02:00
should all be done now
git-svn-id: file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorGui@56 af1100a4-978c-4157-bff7-07162d2ba061
This commit is contained in:
parent
62b14f4199
commit
38451caa7c
@ -227,8 +227,6 @@
|
|||||||
<addaction name="actionOpenSetup"/>
|
<addaction name="actionOpenSetup"/>
|
||||||
<addaction name="actionSaveSetup"/>
|
<addaction name="actionSaveSetup"/>
|
||||||
<addaction name="separator"/>
|
<addaction name="separator"/>
|
||||||
<addaction name="actionMeasurementWizard"/>
|
|
||||||
<addaction name="separator"/>
|
|
||||||
<addaction name="actionOpenConfiguration"/>
|
<addaction name="actionOpenConfiguration"/>
|
||||||
<addaction name="actionSaveConfiguration"/>
|
<addaction name="actionSaveConfiguration"/>
|
||||||
<addaction name="separator"/>
|
<addaction name="separator"/>
|
||||||
|
@ -34,124 +34,385 @@
|
|||||||
<widget class="QGroupBox" name="groupBox">
|
<widget class="QGroupBox" name="groupBox">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>30</x>
|
<x>45</x>
|
||||||
<y>140</y>
|
<y>75</y>
|
||||||
<width>321</width>
|
<width>686</width>
|
||||||
<height>156</height>
|
<height>231</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="focusPolicy">
|
||||||
|
<enum>Qt::NoFocus</enum>
|
||||||
|
</property>
|
||||||
<property name="title">
|
<property name="title">
|
||||||
<string>Digital Tests</string>
|
<string>Tests</string>
|
||||||
</property>
|
</property>
|
||||||
<widget class="QWidget" name="gridLayoutWidget_2">
|
<widget class="QWidget" name="gridLayoutWidget_2">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>15</x>
|
<x>15</x>
|
||||||
<y>20</y>
|
<y>110</y>
|
||||||
<width>141</width>
|
<width>141</width>
|
||||||
<height>51</height>
|
<height>51</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout_2">
|
<layout class="QGridLayout" name="gridLayout_2">
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<widget class="QCheckBox" name="chk">
|
<widget class="QCheckBox" name="chkDetectorFirmware">
|
||||||
|
<property name="focusPolicy">
|
||||||
|
<enum>Qt::NoFocus</enum>
|
||||||
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Detector Module</string>
|
<string>Readout Firmware</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0">
|
<item row="1" column="0">
|
||||||
<widget class="QCheckBox" name="checkBox_2">
|
<widget class="QCheckBox" name="chkDetectorSoftware">
|
||||||
|
<property name="focusPolicy">
|
||||||
|
<enum>Qt::NoFocus</enum>
|
||||||
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Test xxx</string>
|
<string>Readout Software</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QPushButton" name="btnDigital">
|
<widget class="QWidget" name="horizontalLayoutWidget">
|
||||||
<property name="geometry">
|
|
||||||
<rect>
|
|
||||||
<x>75</x>
|
|
||||||
<y>115</y>
|
|
||||||
<width>150</width>
|
|
||||||
<height>25</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="text">
|
|
||||||
<string>Run</string>
|
|
||||||
</property>
|
|
||||||
<property name="icon">
|
|
||||||
<iconset resource="../include/icons.qrc">
|
|
||||||
<normaloff>:/icons/images/start.png</normaloff>:/icons/images/start.png</iconset>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</widget>
|
|
||||||
<widget class="QGroupBox" name="groupBox_2">
|
|
||||||
<property name="geometry">
|
|
||||||
<rect>
|
|
||||||
<x>425</x>
|
|
||||||
<y>140</y>
|
|
||||||
<width>321</width>
|
|
||||||
<height>156</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
|
||||||
<property name="title">
|
|
||||||
<string>Analog Tests</string>
|
|
||||||
</property>
|
|
||||||
<widget class="QWidget" name="gridLayoutWidget_3">
|
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>15</x>
|
<x>15</x>
|
||||||
<y>20</y>
|
<y>185</y>
|
||||||
|
<width>656</width>
|
||||||
|
<height>36</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<layout class="QHBoxLayout" name="horizontalLayout">
|
||||||
|
<item>
|
||||||
|
<widget class="QPushButton" name="btnTest">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Run Test </string>
|
||||||
|
</property>
|
||||||
|
<property name="icon">
|
||||||
|
<iconset resource="../include/icons.qrc">
|
||||||
|
<normaloff>:/icons/images/start.png</normaloff>:/icons/images/start.png</iconset>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<widget class="QWidget" name="gridLayoutWidget_5">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>415</x>
|
||||||
|
<y>30</y>
|
||||||
|
<width>256</width>
|
||||||
|
<height>31</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<layout class="QGridLayout" name="gridLayout_5">
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QLabel" name="lblModule">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>0</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize">
|
||||||
|
<size>
|
||||||
|
<width>100</width>
|
||||||
|
<height>16777215</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Module:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="2">
|
||||||
|
<widget class="QComboBox" name="comboModule">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize">
|
||||||
|
<size>
|
||||||
|
<width>16777215</width>
|
||||||
|
<height>16777215</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="frame">
|
||||||
|
<bool>true</bool>
|
||||||
|
</property>
|
||||||
|
<item>
|
||||||
|
<property name="text">
|
||||||
|
<string>All Modules</string>
|
||||||
|
</property>
|
||||||
|
</item>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="1">
|
||||||
|
<spacer name="horizontalSpacer_3">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeType">
|
||||||
|
<enum>QSizePolicy::Fixed</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>10</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<widget class="QWidget" name="gridLayoutWidget_3">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>280</x>
|
||||||
|
<y>110</y>
|
||||||
<width>141</width>
|
<width>141</width>
|
||||||
<height>51</height>
|
<height>51</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout_3">
|
<layout class="QGridLayout" name="gridLayout_3">
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<widget class="QCheckBox" name="checkBox_3">
|
<widget class="QCheckBox" name="chkDetectorBus">
|
||||||
|
<property name="focusPolicy">
|
||||||
|
<enum>Qt::NoFocus</enum>
|
||||||
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Detector Module</string>
|
<string>Readout Bus</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="1" column="0">
|
<item row="1" column="0">
|
||||||
<widget class="QCheckBox" name="checkBox_4">
|
<widget class="QCheckBox" name="chkDetectorMemory">
|
||||||
|
<property name="focusPolicy">
|
||||||
|
<enum>Qt::NoFocus</enum>
|
||||||
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Test xxx</string>
|
<string>Readout Memory</string>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<widget class="QPushButton" name="btnAnalog">
|
<widget class="QWidget" name="gridLayoutWidget_6">
|
||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>85</x>
|
<x>530</x>
|
||||||
<y>115</y>
|
<y>110</y>
|
||||||
<width>150</width>
|
<width>141</width>
|
||||||
<height>25</height>
|
<height>26</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizePolicy">
|
<layout class="QGridLayout" name="gridLayout_6">
|
||||||
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
<item row="0" column="0">
|
||||||
<horstretch>0</horstretch>
|
<widget class="QCheckBox" name="chkChip">
|
||||||
<verstretch>0</verstretch>
|
<property name="focusPolicy">
|
||||||
</sizepolicy>
|
<enum>Qt::NoFocus</enum>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Chip</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<widget class="QWidget" name="gridLayoutWidget_4">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>15</x>
|
||||||
|
<y>30</y>
|
||||||
|
<width>276</width>
|
||||||
|
<height>31</height>
|
||||||
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<layout class="QGridLayout" name="gridLayout_4">
|
||||||
<string>Run</string>
|
<item row="0" column="0">
|
||||||
|
<widget class="QLabel" name="lblDetector">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Maximum" vsizetype="Preferred">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>0</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize">
|
||||||
|
<size>
|
||||||
|
<width>150</width>
|
||||||
|
<height>16777215</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Readout:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="2">
|
||||||
|
<widget class="QComboBox" name="comboDetector">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize">
|
||||||
|
<size>
|
||||||
|
<width>16777215</width>
|
||||||
|
<height>16777215</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item row="0" column="1">
|
||||||
|
<spacer name="horizontalSpacer">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeType">
|
||||||
|
<enum>QSizePolicy::Fixed</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>10</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<widget class="QWidget" name="horizontalLayoutWidget_4">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>15</x>
|
||||||
|
<y>60</y>
|
||||||
|
<width>276</width>
|
||||||
|
<height>31</height>
|
||||||
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="icon">
|
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
||||||
<iconset resource="../include/icons.qrc">
|
<item>
|
||||||
<normaloff>:/icons/images/start.png</normaloff>:/icons/images/start.png</iconset>
|
<widget class="QLabel" name="lblStatusLabel">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="maximumSize">
|
||||||
|
<size>
|
||||||
|
<width>150</width>
|
||||||
|
<height>16777215</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Status:</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<spacer name="horizontalSpacer_2">
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeType">
|
||||||
|
<enum>QSizePolicy::Fixed</enum>
|
||||||
|
</property>
|
||||||
|
<property name="sizeHint" stdset="0">
|
||||||
|
<size>
|
||||||
|
<width>10</width>
|
||||||
|
<height>20</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
</spacer>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<widget class="QLabel" name="lblStatus">
|
||||||
|
<property name="sizePolicy">
|
||||||
|
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
|
||||||
|
<horstretch>0</horstretch>
|
||||||
|
<verstretch>0</verstretch>
|
||||||
|
</sizepolicy>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>IDLE</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<widget class="QWidget" name="gridLayoutWidget_7">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>530</x>
|
||||||
|
<y>135</y>
|
||||||
|
<width>141</width>
|
||||||
|
<height>26</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<layout class="QGridLayout" name="gridLayout_7">
|
||||||
|
<item row="0" column="0">
|
||||||
|
<widget class="QCheckBox" name="chkModuleFirmware">
|
||||||
|
<property name="focusPolicy">
|
||||||
|
<enum>Qt::NoFocus</enum>
|
||||||
|
</property>
|
||||||
|
<property name="text">
|
||||||
|
<string>Module Firmware</string>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
|
</widget>
|
||||||
|
<widget class="Line" name="line">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>5</x>
|
||||||
|
<y>95</y>
|
||||||
|
<width>676</width>
|
||||||
|
<height>16</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
|
</property>
|
||||||
|
</widget>
|
||||||
|
<widget class="Line" name="line_2">
|
||||||
|
<property name="geometry">
|
||||||
|
<rect>
|
||||||
|
<x>5</x>
|
||||||
|
<y>165</y>
|
||||||
|
<width>676</width>
|
||||||
|
<height>16</height>
|
||||||
|
</rect>
|
||||||
|
</property>
|
||||||
|
<property name="orientation">
|
||||||
|
<enum>Qt::Horizontal</enum>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</widget>
|
</widget>
|
||||||
@ -159,70 +420,16 @@
|
|||||||
<property name="geometry">
|
<property name="geometry">
|
||||||
<rect>
|
<rect>
|
||||||
<x>45</x>
|
<x>45</x>
|
||||||
<y>30</y>
|
<y>25</y>
|
||||||
<width>291</width>
|
<width>686</width>
|
||||||
<height>36</height>
|
<height>31</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout_4">
|
<layout class="QHBoxLayout" name="horizontalLayout_3">
|
||||||
<item>
|
<item>
|
||||||
<widget class="QLabel" name="lblModule_2">
|
|
||||||
<property name="text">
|
|
||||||
<string>Detector Status:</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item>
|
|
||||||
<widget class="QLabel" name="lblStatus">
|
|
||||||
<property name="text">
|
|
||||||
<string>Offline</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
</layout>
|
|
||||||
</widget>
|
|
||||||
<widget class="QWidget" name="gridLayoutWidget">
|
|
||||||
<property name="geometry">
|
|
||||||
<rect>
|
|
||||||
<x>440</x>
|
|
||||||
<y>29</y>
|
|
||||||
<width>291</width>
|
|
||||||
<height>76</height>
|
|
||||||
</rect>
|
|
||||||
</property>
|
|
||||||
<layout class="QGridLayout" name="gridLayout">
|
|
||||||
<item row="0" column="0">
|
|
||||||
<widget class="QLabel" name="lblModule">
|
|
||||||
<property name="text">
|
|
||||||
<string>Module Number:</string>
|
|
||||||
</property>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="0" column="1">
|
|
||||||
<widget class="QComboBox" name="comboModule">
|
|
||||||
<property name="sizePolicy">
|
|
||||||
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
|
|
||||||
<horstretch>0</horstretch>
|
|
||||||
<verstretch>0</verstretch>
|
|
||||||
</sizepolicy>
|
|
||||||
</property>
|
|
||||||
<property name="maximumSize">
|
|
||||||
<size>
|
|
||||||
<width>16777215</width>
|
|
||||||
<height>16777215</height>
|
|
||||||
</size>
|
|
||||||
</property>
|
|
||||||
<item>
|
|
||||||
<property name="text">
|
|
||||||
<string>All Modules</string>
|
|
||||||
</property>
|
|
||||||
</item>
|
|
||||||
</widget>
|
|
||||||
</item>
|
|
||||||
<item row="2" column="1">
|
|
||||||
<widget class="QPushButton" name="btnGetInfo">
|
<widget class="QPushButton" name="btnGetInfo">
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
<sizepolicy hsizetype="Maximum" vsizetype="Fixed">
|
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
|
||||||
<horstretch>0</horstretch>
|
<horstretch>0</horstretch>
|
||||||
<verstretch>0</verstretch>
|
<verstretch>0</verstretch>
|
||||||
</sizepolicy>
|
</sizepolicy>
|
||||||
@ -235,12 +442,12 @@
|
|||||||
</property>
|
</property>
|
||||||
<property name="maximumSize">
|
<property name="maximumSize">
|
||||||
<size>
|
<size>
|
||||||
<width>150</width>
|
<width>16777215</width>
|
||||||
<height>16777215</height>
|
<height>16777215</height>
|
||||||
</size>
|
</size>
|
||||||
</property>
|
</property>
|
||||||
<property name="text">
|
<property name="text">
|
||||||
<string>Get Information</string>
|
<string>Get ID Information </string>
|
||||||
</property>
|
</property>
|
||||||
<property name="icon">
|
<property name="icon">
|
||||||
<iconset resource="../include/icons.qrc">
|
<iconset resource="../include/icons.qrc">
|
||||||
|
@ -431,7 +431,7 @@ QString filePath;
|
|||||||
QString fileName;
|
QString fileName;
|
||||||
|
|
||||||
/** Max Number of Clone Windows */
|
/** Max Number of Clone Windows */
|
||||||
static const int TRIM_HISTOGRAM_XMAX = 600;
|
static const int TRIM_HISTOGRAM_XMAX = 63;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -12,8 +12,9 @@
|
|||||||
#include "ui_form_tab_debugging.h"
|
#include "ui_form_tab_debugging.h"
|
||||||
/** Project Class Headers */
|
/** Project Class Headers */
|
||||||
class multiSlsDetector;
|
class multiSlsDetector;
|
||||||
|
class slsDetector;
|
||||||
/** Qt Include Headers */
|
/** Qt Include Headers */
|
||||||
|
#include <QTreeWidget>
|
||||||
/** C++ Include Headers */
|
/** C++ Include Headers */
|
||||||
#include "sls_detector_defs.h"
|
#include "sls_detector_defs.h"
|
||||||
|
|
||||||
@ -39,12 +40,6 @@ public:
|
|||||||
void Refresh();
|
void Refresh();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
/** The sls detector object */
|
|
||||||
multiSlsDetector *myDet;
|
|
||||||
|
|
||||||
/** detector type */
|
|
||||||
slsDetectorDefs::detectorType detType;
|
|
||||||
|
|
||||||
/** Sets up the widget
|
/** Sets up the widget
|
||||||
*/
|
*/
|
||||||
void SetupWidgetWindow();
|
void SetupWidgetWindow();
|
||||||
@ -54,6 +49,50 @@ private:
|
|||||||
void Initialization();
|
void Initialization();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
private slots:
|
||||||
|
/** Updates the module list depending on current detector
|
||||||
|
*/
|
||||||
|
void UpdateModuleList();
|
||||||
|
|
||||||
|
/** Updates the status depending on current detector
|
||||||
|
*/
|
||||||
|
void UpdateStatus();
|
||||||
|
|
||||||
|
/** Gets id and versions etc
|
||||||
|
*/
|
||||||
|
void GetInfo();
|
||||||
|
|
||||||
|
/** Sets id and versions on the display widget
|
||||||
|
*/
|
||||||
|
void SetParameters(QTreeWidgetItem *item);
|
||||||
|
|
||||||
|
/** Test detector and module
|
||||||
|
*/
|
||||||
|
void TestDetector();
|
||||||
|
|
||||||
|
private:
|
||||||
|
/** The multi sls detector object */
|
||||||
|
multiSlsDetector *myDet;
|
||||||
|
|
||||||
|
/** detector type */
|
||||||
|
slsDetectorDefs::detectorType detType;
|
||||||
|
|
||||||
|
/**sls detecctor object */
|
||||||
|
slsDetector *det;
|
||||||
|
|
||||||
|
/** Tree Widget displaying the detectors, modules */
|
||||||
|
QTreeWidget *treeDet;
|
||||||
|
/** Widget displaying the serial numbers, mac addresses etc */
|
||||||
|
QFrame *dispFrame;
|
||||||
|
QLabel *lblDetectorId;
|
||||||
|
QLabel *lblDetectorSerial;
|
||||||
|
QLabel *lblDetectorFirmware;
|
||||||
|
QLabel *lblDetectorSoftware;
|
||||||
|
QLabel *lblModuleId;
|
||||||
|
QLabel *lblModuleFirmware;
|
||||||
|
QLabel *lblModuleSerial;
|
||||||
|
QPalette *blue;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
@ -352,11 +352,6 @@ void qDetectorMain::ExecuteUtilities(QAction *action){
|
|||||||
else qDefs::Message(qDefs::WARNING,string("Could not save the Setup Parameters from file:\n")+fName.toAscii().constData(),"Main");
|
else qDefs::Message(qDefs::WARNING,string("Could not save the Setup Parameters from file:\n")+fName.toAscii().constData(),"Main");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if(action==actionMeasurementWizard){
|
|
||||||
#ifdef VERBOSE
|
|
||||||
cout << "Measurement Wizard" << endl;
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
else if(action==actionOpenConfiguration){
|
else if(action==actionOpenConfiguration){
|
||||||
#ifdef VERBOSE
|
#ifdef VERBOSE
|
||||||
cout << "Loading Configuration" << endl;
|
cout << "Loading Configuration" << endl;
|
||||||
@ -461,13 +456,18 @@ void qDetectorMain::ExecuteHelp(QAction *action){
|
|||||||
#ifdef VERBOSE
|
#ifdef VERBOSE
|
||||||
cout << "About: Common GUI for Mythen, Eiger, Gotthard and Agipd detectors" << endl;
|
cout << "About: Common GUI for Mythen, Eiger, Gotthard and Agipd detectors" << endl;
|
||||||
#endif
|
#endif
|
||||||
|
char version[200];
|
||||||
|
sprintf(version,"%llx",myDet->getId(slsDetectorDefs::THIS_SOFTWARE_VERSION));
|
||||||
|
string thisClientVersion = string(version);
|
||||||
//<h1 style="font-family:verdana;">A heading</h1>
|
//<h1 style="font-family:verdana;">A heading</h1>
|
||||||
qDefs::Message(qDefs::INFORMATION,"<p style=\"font-family:verdana;\">SLS Detector GUI version: 1.0<br><br>"
|
qDefs::Message(qDefs::INFORMATION,"<p style=\"font-family:verdana;\">"
|
||||||
|
"SLS Detector GUI version: 1.0<br>"
|
||||||
|
"SLS Detector Client version: "+thisClientVersion+"<br><br>"
|
||||||
"Common GUI to control the SLS Detectors: "
|
"Common GUI to control the SLS Detectors: "
|
||||||
"Mythen, Eiger, Gotthard and Agipd.<br><br>"
|
"Mythen, Eiger, Gotthard and Agipd.<br><br>"
|
||||||
"It can be operated in parallel with the command line interface:<br>"
|
"It can be operated in parallel with the command line interface:<br>"
|
||||||
"sls_detector_put,<br>sls_detector_get,<br>sls_detector_acquire and<br>sls_detector_help.<br><br>"
|
"sls_detector_put,<br>sls_detector_get,<br>sls_detector_acquire and<br>sls_detector_help.<br><br>"
|
||||||
"The software is still in progress. "
|
"The GUI Software is still in progress. "
|
||||||
"Please report bugs to dhanya.maliakal@psi.ch.<\\p>","About SLS Detector GUI");
|
"Please report bugs to dhanya.maliakal@psi.ch.<\\p>","About SLS Detector GUI");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1220,7 +1220,7 @@ int qDrawPlot::UpdateTrimbitPlot(bool fromDetector,bool Histogram){
|
|||||||
for(i=0;i<actualPixelsX;i++){
|
for(i=0;i<actualPixelsX;i++){
|
||||||
if((temp[i]<=TRIM_HISTOGRAM_XMAX))/**shouldnt be the case*/
|
if((temp[i]<=TRIM_HISTOGRAM_XMAX))/**shouldnt be the case*/
|
||||||
histYAxis[0][(int)temp[i]]+=1;
|
histYAxis[0][(int)temp[i]]+=1;
|
||||||
//else cout<<"OUT OF BOUNDS:"<<i<<"-"<<temp[i]<<endl;
|
else cout<<"OUT OF BOUNDS:"<<i<<"-"<<temp[i]<<endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* for(i=0;i<TRIM_HISTOGRAM_XMAX;i++)
|
/* for(i=0;i<TRIM_HISTOGRAM_XMAX;i++)
|
||||||
|
@ -24,7 +24,6 @@ qTabAdvanced::qTabAdvanced(QWidget *parent,multiSlsDetector*& detector, qDrawPlo
|
|||||||
QWidget(parent),myDet(detector),myPlot(plot),btnGroup(NULL){
|
QWidget(parent),myDet(detector),myPlot(plot),btnGroup(NULL){
|
||||||
setupUi(this);
|
setupUi(this);
|
||||||
SetupWidgetWindow();
|
SetupWidgetWindow();
|
||||||
Initialization();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@ -58,6 +57,10 @@ void qTabAdvanced::SetupWidgetWindow(){
|
|||||||
btnGroup = new QButtonGroup(this);
|
btnGroup = new QButtonGroup(this);
|
||||||
btnGroup->addButton(btnRefresh,0);
|
btnGroup->addButton(btnRefresh,0);
|
||||||
btnGroup->addButton(btnGetTrimbits,1);
|
btnGroup->addButton(btnGetTrimbits,1);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
Initialization();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -9,6 +9,9 @@
|
|||||||
// Project Class Headers
|
// Project Class Headers
|
||||||
#include "slsDetector.h"
|
#include "slsDetector.h"
|
||||||
#include "multiSlsDetector.h"
|
#include "multiSlsDetector.h"
|
||||||
|
// Qt Include Headers
|
||||||
|
#include <QDesktopWidget>
|
||||||
|
#include <QGridLayout>
|
||||||
// C++ Include Headers
|
// C++ Include Headers
|
||||||
#include<iostream>
|
#include<iostream>
|
||||||
using namespace std;
|
using namespace std;
|
||||||
@ -18,7 +21,8 @@ using namespace std;
|
|||||||
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
qTabDebugging::qTabDebugging(QWidget *parent,multiSlsDetector*& detector):QWidget(parent),myDet(detector){
|
qTabDebugging::qTabDebugging(QWidget *parent,multiSlsDetector*& detector):
|
||||||
|
QWidget(parent),myDet(detector),treeDet(NULL){
|
||||||
setupUi(this);
|
setupUi(this);
|
||||||
SetupWidgetWindow();
|
SetupWidgetWindow();
|
||||||
Initialization();
|
Initialization();
|
||||||
@ -37,41 +41,443 @@ qTabDebugging::~qTabDebugging(){
|
|||||||
|
|
||||||
|
|
||||||
void qTabDebugging::SetupWidgetWindow(){
|
void qTabDebugging::SetupWidgetWindow(){
|
||||||
|
|
||||||
|
blue = new QPalette();
|
||||||
|
blue->setColor(QPalette::Active,QPalette::WindowText,Qt::darkBlue);
|
||||||
|
|
||||||
|
|
||||||
// Detector Type
|
// Detector Type
|
||||||
detType=myDet->getDetectorsType();
|
detType=myDet->getDetectorsType();
|
||||||
|
///change module label
|
||||||
//status
|
switch(detType){
|
||||||
int detStatus = (int)myDet->getRunStatus();
|
case slsDetectorDefs::EIGER:
|
||||||
string status = slsDetectorBase::runStatusType(slsDetectorDefs::runStatus(detStatus));
|
lblDetector->setText("Half Module:");
|
||||||
lblStatus->setText(QString(status.c_str()).toUpper());
|
chkDetectorFirmware->setText("Half Module Firmware:");
|
||||||
|
chkDetectorSoftware->setText("Half Module Software:");
|
||||||
if(detType==slsDetectorDefs::EIGER) lblModule->setText("Half Module Number:");
|
chkDetectorMemory->setText("Half Module Memory:");
|
||||||
else lblModule->setText("Module Number:");
|
chkDetectorBus->setText("Half Module Bus:");
|
||||||
|
lblModule->hide();
|
||||||
// loading combo box module numbers
|
comboModule->hide();
|
||||||
int max = myDet->setNumberOfModules();
|
chkModuleFirmware->hide();
|
||||||
|
chkChip->setEnabled(false);
|
||||||
|
chkModuleFirmware->setEnabled(false);
|
||||||
|
break;
|
||||||
|
case slsDetectorDefs::GOTTHARD:
|
||||||
|
lblDetector->setText("Module:");
|
||||||
|
chkDetectorFirmware->setText("Module Firmware:");
|
||||||
|
chkDetectorSoftware->setText("Module Software:");
|
||||||
|
chkDetectorMemory->setText("Module Memory:");
|
||||||
|
chkDetectorBus->setText("Module Bus:");
|
||||||
|
lblModule->hide();
|
||||||
|
comboModule->hide();
|
||||||
|
chkModuleFirmware->hide();
|
||||||
|
chkChip->setEnabled(false);
|
||||||
|
chkModuleFirmware->setEnabled(false);
|
||||||
|
break;
|
||||||
|
case slsDetectorDefs::MYTHEN:
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
//leave everything as it is(mythen is default)
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
/* for(int i=0;i<max;i++){
|
//add detectors
|
||||||
slsDetector *s = myDet->getSlsDetector(i);
|
for(int i=0;i<myDet->getNumberOfDetectors();i++){
|
||||||
if(s->setTCPSocket()!=slsDetectorDefs::FAIL){
|
comboDetector->addItem(QString(myDet->getHostname(i).c_str()));
|
||||||
comboModule->addItem(QString::number(i));
|
}
|
||||||
}
|
|
||||||
}*/
|
|
||||||
|
//add modules and status for current detector
|
||||||
|
if(detType==slsDetectorDefs::MYTHEN) UpdateModuleList();
|
||||||
|
UpdateStatus();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
void qTabDebugging::Initialization(){
|
void qTabDebugging::Initialization(){
|
||||||
|
if(detType==slsDetectorDefs::MYTHEN)
|
||||||
|
connect(comboDetector, SIGNAL(currentIndexChanged(int)), this, SLOT(UpdateModuleList()));
|
||||||
|
|
||||||
|
connect(comboDetector, SIGNAL(currentIndexChanged(int)), this, SLOT(UpdateStatus()));
|
||||||
|
connect(btnGetInfo, SIGNAL(clicked()), this, SLOT(GetInfo()));
|
||||||
|
connect(btnTest, SIGNAL(clicked()), this, SLOT(TestDetector()));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
void qTabDebugging::UpdateModuleList(){
|
||||||
|
det = myDet->getSlsDetector(comboDetector->currentIndex());
|
||||||
|
//deletes all modules except "all modules"
|
||||||
|
for(int i=0;i<comboModule->count()-1;i++)
|
||||||
|
comboModule->removeItem(i);
|
||||||
|
for(int i=0;i<det->getNMods();i++){
|
||||||
|
comboModule->addItem(QString("Module %1").arg(i));
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
void qTabDebugging::UpdateStatus(){
|
||||||
|
det = myDet->getSlsDetector(comboDetector->currentIndex());
|
||||||
|
int detStatus = (int)det->getRunStatus();
|
||||||
|
string status = slsDetectorBase::runStatusType(slsDetectorDefs::runStatus(detStatus));
|
||||||
|
lblStatus->setText(QString(status.c_str()).toUpper());
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
void qTabDebugging::GetInfo(){
|
||||||
|
//window
|
||||||
|
QFrame* popup1 = new QFrame(this, Qt::Popup | Qt::SubWindow );
|
||||||
|
QList<QTreeWidgetItem *> items;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//layout
|
||||||
|
QGridLayout *layout = new QGridLayout(popup1);
|
||||||
|
//treewidget
|
||||||
|
treeDet = new QTreeWidget(popup1);
|
||||||
|
layout->addWidget(treeDet,0,0);
|
||||||
|
//display the details
|
||||||
|
dispFrame = new QFrame(popup1);
|
||||||
|
QGridLayout *formLayout = new QGridLayout(dispFrame);
|
||||||
|
lblDetectorId = new QLabel(""); lblDetectorId->setPalette(*blue);
|
||||||
|
lblDetectorSerial = new QLabel(""); lblDetectorSerial->setPalette(*blue);
|
||||||
|
lblDetectorFirmware = new QLabel(""); lblDetectorFirmware->setPalette(*blue);
|
||||||
|
lblDetectorSoftware = new QLabel(""); lblDetectorSoftware->setPalette(*blue);
|
||||||
|
lblModuleId = new QLabel(""); lblModuleId->setPalette(*blue);
|
||||||
|
lblModuleSerial = new QLabel(""); lblModuleSerial->setPalette(*blue);
|
||||||
|
lblModuleFirmware = new QLabel(""); lblModuleFirmware->setPalette(*blue);
|
||||||
|
//to make sure the size is constant
|
||||||
|
lblDetectorFirmware->setFixedWidth(100);
|
||||||
|
layout->addWidget(dispFrame,0,1);
|
||||||
|
|
||||||
|
switch(detType){
|
||||||
|
|
||||||
|
case slsDetectorDefs::MYTHEN:{
|
||||||
|
//display widget
|
||||||
|
formLayout->addWidget(new QLabel("Readout:"),0,0);
|
||||||
|
formLayout->addItem(new QSpacerItem(15,20,QSizePolicy::Fixed,QSizePolicy::Fixed),0,1);
|
||||||
|
formLayout->addWidget(lblDetectorId,0,2);
|
||||||
|
formLayout->addWidget(new QLabel("Readout MAC Address:"),1,0);
|
||||||
|
formLayout->addWidget(lblDetectorSerial,1,2);
|
||||||
|
formLayout->addWidget(new QLabel("Readout Firmware Version:"),2,0);
|
||||||
|
formLayout->addWidget(lblDetectorFirmware,2,2);
|
||||||
|
formLayout->addWidget(new QLabel("Readout Software Version:"),3,0);
|
||||||
|
formLayout->addWidget(lblDetectorSoftware,3,2);
|
||||||
|
formLayout->addWidget(new QLabel("Module:"),4,0);
|
||||||
|
formLayout->addWidget(lblModuleId,4,2);
|
||||||
|
formLayout->addWidget(new QLabel("Module Serial Number:"),5,0);
|
||||||
|
formLayout->addWidget(lblModuleSerial,5,2);
|
||||||
|
formLayout->addWidget(new QLabel("Module Firmware Version:"),6,0);
|
||||||
|
formLayout->addWidget(lblModuleFirmware,6,2);
|
||||||
|
|
||||||
|
|
||||||
|
//tree widget
|
||||||
|
treeDet->setHeaderLabel("Mythen Detector");
|
||||||
|
//gets det names
|
||||||
|
for (int i=0;i<comboDetector->count();i++)
|
||||||
|
items.append(new QTreeWidgetItem((QTreeWidget*)0, QStringList(QString("Readout (%1)").arg(comboDetector->itemText(i)))));
|
||||||
|
treeDet->insertTopLevelItems(0, items);
|
||||||
|
//gets module names
|
||||||
|
for (int i=0;i<comboDetector->count();i++){
|
||||||
|
QList<QTreeWidgetItem *> childItems;
|
||||||
|
det = myDet->getSlsDetector(i);
|
||||||
|
for(int j=0;j<det->getNMods();j++)
|
||||||
|
childItems.append(new QTreeWidgetItem((QTreeWidget*)0, QStringList(QString("Module %1").arg(j))));
|
||||||
|
treeDet->topLevelItem(i)->insertChildren(0,childItems);
|
||||||
|
}
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
case slsDetectorDefs::EIGER:{
|
||||||
|
//display widget
|
||||||
|
formLayout->addWidget(new QLabel("Half Module:"),0,0);
|
||||||
|
formLayout->addItem(new QSpacerItem(15,20,QSizePolicy::Fixed,QSizePolicy::Fixed),0,1);
|
||||||
|
formLayout->addWidget(lblDetectorId,0,2);
|
||||||
|
formLayout->addWidget(new QLabel("Half Module MAC Address:"),1,0);
|
||||||
|
formLayout->addWidget(lblDetectorSerial,1,2);
|
||||||
|
formLayout->addWidget(new QLabel("Half Module Firmware Version:"),2,0);
|
||||||
|
formLayout->addWidget(lblDetectorFirmware,2,2);
|
||||||
|
formLayout->addWidget(new QLabel("Half Module Software Version:"),3,0);
|
||||||
|
formLayout->addWidget(lblDetectorSoftware,3,2);
|
||||||
|
|
||||||
|
//tree widget
|
||||||
|
treeDet->setHeaderLabel("Eiger Detector");
|
||||||
|
//get num modules
|
||||||
|
for (int i=0;i<comboDetector->count()/2;i++)
|
||||||
|
items.append(new QTreeWidgetItem((QTreeWidget*)0, QStringList(QString("Module %1").arg(i))));
|
||||||
|
treeDet->insertTopLevelItems(0, items);
|
||||||
|
//gets det names
|
||||||
|
for (int i=0;i<comboDetector->count();i++){
|
||||||
|
QList<QTreeWidgetItem *> childItems;
|
||||||
|
childItems.append(new QTreeWidgetItem((QTreeWidget*)0, QStringList(QString("Half Module (%1)").arg(comboDetector->itemText(i)))));
|
||||||
|
treeDet->topLevelItem(i*2)->insertChildren(0,childItems);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
case slsDetectorDefs::GOTTHARD:{
|
||||||
|
|
||||||
|
//display widget
|
||||||
|
formLayout->addWidget(new QLabel("Module:"),0,0);
|
||||||
|
formLayout->addItem(new QSpacerItem(15,20,QSizePolicy::Fixed,QSizePolicy::Fixed),0,1);
|
||||||
|
formLayout->addWidget(lblDetectorId,0,2);
|
||||||
|
formLayout->addWidget(new QLabel("Module MAC Address:"),1,0);
|
||||||
|
formLayout->addWidget(lblDetectorSerial,1,2);
|
||||||
|
formLayout->addWidget(new QLabel("Module Firmware Version:"),2,0);
|
||||||
|
formLayout->addWidget(lblDetectorFirmware,2,2);
|
||||||
|
formLayout->addWidget(new QLabel("Module Software Version:"),3,0);
|
||||||
|
formLayout->addWidget(lblDetectorSoftware,3,2);
|
||||||
|
//tree widget
|
||||||
|
treeDet->setHeaderLabel("Gotthard Detector");
|
||||||
|
//gets det names
|
||||||
|
for (int i=0;i<comboDetector->count();i++)
|
||||||
|
items.append(new QTreeWidgetItem((QTreeWidget*)0, QStringList(QString("Module (%1)").arg(comboDetector->itemText(i)))));
|
||||||
|
treeDet->insertTopLevelItems(0, items);
|
||||||
|
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//show and center widget
|
||||||
|
|
||||||
|
int x = ((parentWidget()->width()) - (popup1->frameGeometry().width())) / 2;
|
||||||
|
int y = ((parentWidget()->height()) - (popup1->frameGeometry().height())) / 2;
|
||||||
|
QDesktopWidget *desktop = QApplication::desktop();
|
||||||
|
int screen = desktop->screenNumber(this);
|
||||||
|
popup1->setWindowModality(Qt::WindowModal);
|
||||||
|
popup1->move( (desktop->screenGeometry(screen).x())+x, (desktop->screenGeometry(screen).y())+y );
|
||||||
|
popup1->show();
|
||||||
|
|
||||||
|
//put the first parameters
|
||||||
|
SetParameters(treeDet->topLevelItem(0));
|
||||||
|
|
||||||
|
//initializations
|
||||||
|
connect(treeDet, SIGNAL(itemDoubleClicked(QTreeWidgetItem *,int)) , this, SLOT(SetParameters(QTreeWidgetItem *)));
|
||||||
|
|
||||||
|
}
|
||||||
|
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
void qTabDebugging::SetParameters(QTreeWidgetItem *item){
|
||||||
|
char value[200];
|
||||||
|
int i;
|
||||||
|
|
||||||
|
|
||||||
|
switch(detType){
|
||||||
|
|
||||||
|
case slsDetectorDefs::MYTHEN:{
|
||||||
|
if(item->text(0).contains("Readout")){
|
||||||
|
//find index
|
||||||
|
for(i=0;i<comboDetector->count();i++)
|
||||||
|
if(item== treeDet->topLevelItem(i))
|
||||||
|
break;
|
||||||
|
|
||||||
|
det = myDet->getSlsDetector(i);
|
||||||
|
lblDetectorId->setText(comboDetector->itemText(i));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::DETECTOR_SERIAL_NUMBER));
|
||||||
|
lblDetectorSerial->setText(QString(value));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::DETECTOR_FIRMWARE_VERSION));
|
||||||
|
lblDetectorFirmware ->setText(QString(value));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::DETECTOR_SOFTWARE_VERSION));
|
||||||
|
lblDetectorSoftware->setText(QString(value));
|
||||||
|
|
||||||
|
lblModuleId->setText("");
|
||||||
|
lblModuleSerial->setText("");
|
||||||
|
lblModuleFirmware->setText("");
|
||||||
|
}else{
|
||||||
|
//find index
|
||||||
|
for(i=0;i<comboDetector->count();i++)
|
||||||
|
if(item->parent() == treeDet->topLevelItem(i))
|
||||||
|
break;
|
||||||
|
int im = item->parent()->indexOfChild(item);
|
||||||
|
|
||||||
|
det = myDet->getSlsDetector(i);
|
||||||
|
lblDetectorId->setText(comboDetector->itemText(i));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::DETECTOR_SERIAL_NUMBER));
|
||||||
|
lblDetectorSerial->setText(QString(value));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::DETECTOR_FIRMWARE_VERSION));
|
||||||
|
lblDetectorFirmware ->setText(QString(value));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::DETECTOR_SOFTWARE_VERSION));
|
||||||
|
lblDetectorSoftware->setText(QString(value));
|
||||||
|
|
||||||
|
lblModuleId->setText(QString("%1").arg(im));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::MODULE_SERIAL_NUMBER,im));
|
||||||
|
lblModuleSerial->setText(QString(value));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::MODULE_FIRMWARE_VERSION,im));
|
||||||
|
lblModuleFirmware->setText(QString(value));
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
case slsDetectorDefs::EIGER:{
|
||||||
|
//only if half module clicked
|
||||||
|
if(item->text(0).contains("Half Module")){
|
||||||
|
//find index
|
||||||
|
for(i=0;i<comboDetector->count();i++)
|
||||||
|
if(item== treeDet->topLevelItem(i))
|
||||||
|
break;
|
||||||
|
|
||||||
|
det = myDet->getSlsDetector(i);
|
||||||
|
lblDetectorId->setText(comboDetector->itemText(i));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::DETECTOR_SERIAL_NUMBER));
|
||||||
|
lblDetectorSerial->setText(QString(value));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::DETECTOR_FIRMWARE_VERSION));
|
||||||
|
lblDetectorFirmware ->setText(QString(value));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::DETECTOR_SOFTWARE_VERSION));
|
||||||
|
lblDetectorSoftware->setText(QString(value));
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
case slsDetectorDefs::GOTTHARD:{
|
||||||
|
//find index
|
||||||
|
for(i=0;i<comboDetector->count();i++)
|
||||||
|
if(item== treeDet->topLevelItem(i))
|
||||||
|
break;
|
||||||
|
|
||||||
|
det = myDet->getSlsDetector(i);
|
||||||
|
lblDetectorId->setText(comboDetector->itemText(i));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::DETECTOR_SERIAL_NUMBER));
|
||||||
|
lblDetectorSerial->setText(QString(value));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::DETECTOR_FIRMWARE_VERSION));
|
||||||
|
lblDetectorFirmware ->setText(QString(value));
|
||||||
|
sprintf(value,"%llx",det->getId(slsDetectorDefs::DETECTOR_SOFTWARE_VERSION));
|
||||||
|
lblDetectorSoftware->setText(QString(value));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
void qTabDebugging::TestDetector(){
|
||||||
|
#ifdef VERBOSE
|
||||||
|
cout << "Testing" << endl;
|
||||||
|
#endif
|
||||||
|
|
||||||
|
int retval=slsDetectorDefs::FAIL;
|
||||||
|
QString message;
|
||||||
|
QString Detector = "Detector";
|
||||||
|
|
||||||
|
//main messagebox title
|
||||||
|
switch(detType){
|
||||||
|
case slsDetectorDefs::MYTHEN:
|
||||||
|
message = QString("<nobr>Test Results for %1 and %2:</nobr><br><br>").arg(comboDetector->currentText(),comboModule->currentText());
|
||||||
|
break;
|
||||||
|
case slsDetectorDefs::EIGER: Detector = "Half Module"; break;
|
||||||
|
case slsDetectorDefs::GOTTHARD: Detector = "Module"; break;
|
||||||
|
default: break;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if(detType==slsDetectorDefs::MYTHEN)
|
||||||
|
message = QString("<nobr>Test Results for %1 and %2:</nobr><br><br>").arg(comboDetector->currentText(),comboModule->currentText());
|
||||||
|
else message = QString("<nobr>Test Results for %1:</nobr><br><br>").arg(comboDetector->currentText());
|
||||||
|
|
||||||
|
//get sls det object
|
||||||
|
det = myDet->getSlsDetector(comboDetector->currentIndex());
|
||||||
|
|
||||||
|
//detector firmware
|
||||||
|
if(chkDetectorFirmware->isChecked()){
|
||||||
|
retval = det->digitalTest(slsDetectorDefs::DETECTOR_FIRMWARE_TEST);
|
||||||
|
if(retval== slsDetectorDefs::FAIL) message.append(QString("<nobr>%1 Firmware: FAIL</nobr><br>").arg(Detector));
|
||||||
|
else message.append(QString("<nobr>%1 Firmware: %2</nobr><br>").arg(Detector,QString::number(retval)));
|
||||||
|
#ifdef VERBOSE
|
||||||
|
cout<<"Detector Firmware: "<<retval<<endl;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
//detector software
|
||||||
|
if(chkDetectorSoftware->isChecked()){
|
||||||
|
retval = det->digitalTest(slsDetectorDefs::DETECTOR_SOFTWARE_TEST);
|
||||||
|
if(retval== slsDetectorDefs::FAIL) message.append(QString("<nobr>%1 Software: FAIL</nobr><br>").arg(Detector));
|
||||||
|
else message.append(QString("<nobr>%1 Software: %2</nobr><br>").arg(Detector,QString::number(retval)));
|
||||||
|
#ifdef VERBOSE
|
||||||
|
cout<<"Detector Software: "<<retval<<endl;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
//detector CPU-FPGA bus
|
||||||
|
if(chkDetectorBus->isChecked()){
|
||||||
|
retval = det->digitalTest(slsDetectorDefs::DETECTOR_BUS_TEST);
|
||||||
|
if(retval== slsDetectorDefs::FAIL) message.append(QString("<nobr>%1 Bus: FAIL</nobr><br>").arg(Detector));
|
||||||
|
else message.append(QString("<nobr>%1 Bus: %2</nobr><br>").arg(Detector,QString::number(retval)));
|
||||||
|
#ifdef VERBOSE
|
||||||
|
cout<<"Detector Bus: "<<retval<<endl;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
//detector Memory
|
||||||
|
if(chkDetectorMemory->isChecked()){
|
||||||
|
retval = det->digitalTest(slsDetectorDefs::DETECTOR_MEMORY_TEST);
|
||||||
|
if(retval== slsDetectorDefs::FAIL) message.append(QString("<nobr>%1 Memory: FAIL</nobr><br>").arg(Detector));
|
||||||
|
else message.append(QString("<nobr>%1 Memory: %2</nobr><br>").arg(Detector,QString::number(retval)));
|
||||||
|
#ifdef VERBOSE
|
||||||
|
cout<<"Detector Memory: "<<retval<<endl;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
//chip
|
||||||
|
if(chkChip->isChecked()){
|
||||||
|
retval = det->digitalTest(slsDetectorDefs::CHIP_TEST,comboModule->currentIndex());
|
||||||
|
if(retval== slsDetectorDefs::FAIL) message.append("<br><nobr>Chip: FAIL</nobr><br>");
|
||||||
|
else message.append(QString("<nobr>Chip: %1</nobr><br>").arg(retval));
|
||||||
|
#ifdef VERBOSE
|
||||||
|
cout<<"Chip: "<<retval<<endl;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
//module firmware
|
||||||
|
if(chkModuleFirmware->isChecked()){
|
||||||
|
retval = det->digitalTest(slsDetectorDefs::MODULE_FIRMWARE_TEST,comboModule->currentIndex());
|
||||||
|
if(retval== slsDetectorDefs::FAIL) message.append("<nobr>Module Firmware: FAIL</nobr><br>");
|
||||||
|
else message.append(QString("<nobr>Module Firmware: %1</nobr><br>").arg(retval));
|
||||||
|
#ifdef VERBOSE
|
||||||
|
cout<<"Module Firmware: "<<retval<<endl;
|
||||||
|
#endif
|
||||||
|
}
|
||||||
|
//display message
|
||||||
|
qDefs::Message(qDefs::INFORMATION,message.toAscii().constData(),"Debugging");
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
void qTabDebugging::Refresh(){
|
void qTabDebugging::Refresh(){
|
||||||
|
UpdateStatus();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -57,9 +57,11 @@ void qTabMessages::SetupWidgetWindow(){
|
|||||||
btnClear->setFixedWidth(100);
|
btnClear->setFixedWidth(100);
|
||||||
btnClear->setIcon(QIcon( ":/icons/images/erase.png" ));
|
btnClear->setIcon(QIcon( ":/icons/images/erase.png" ));
|
||||||
|
|
||||||
gridLayout->addWidget(btnSave,0,0,1,1);
|
gridLayout->addItem(new QSpacerItem(15,10,QSizePolicy::Fixed,QSizePolicy::Fixed),0,0);
|
||||||
gridLayout->addWidget(btnClear,0,4,1,1);
|
gridLayout->addWidget(btnSave,1,0,1,1);
|
||||||
gridLayout->addWidget(dispLog,1,0,1,5);
|
gridLayout->addWidget(btnClear,1,4,1,1);
|
||||||
|
gridLayout->addItem(new QSpacerItem(15,10,QSizePolicy::Fixed,QSizePolicy::Fixed),2,0);
|
||||||
|
gridLayout->addWidget(dispLog,3,0,1,5);
|
||||||
|
|
||||||
qout=new qDebugStream(std::cout,this);
|
qout=new qDebugStream(std::cout,this);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user