<?xml version="1.0" encoding="UTF-8"?> <display version="2.0.0"> <name>LEBT DSM</name> <macros> <EVR>PBI-DPL01:Ctrl-EVR-101:</EVR> <P>LEBT-010:PBI-Dpl-001:</P> </macros> <width>1670</width> <height>1310</height> <rules> <rule name="New Rule" prop_id="name" out_exp="false"> <pv_name>loc://prefix("$(P)")</pv_name> </rule> </rules> <widget type="rectangle" version="2.0.0"> <name>Title bar</name> <class>TITLE-BAR</class> <x use_class="true">0</x> <y use_class="true">0</y> <width>1670</width> <height use_class="true">50</height> <line_width use_class="true">0</line_width> <background_color use_class="true"> <color name="PRIMARY-HEADER-BACKGROUND" red="151" green="188" blue="202"> </color> </background_color> </widget> <widget type="label" version="2.0.0"> <name>Title</name> <class>TITLE</class> <text>Doppler Shift Monitor</text> <x use_class="true">20</x> <y use_class="true">0</y> <width>1630</width> <height use_class="true">50</height> <font use_class="true"> <font name="Header 1" family="Source Sans Pro" style="BOLD_ITALIC" size="36.0"> </font> </font> <foreground_color use_class="true"> <color name="HEADER-TEXT" red="0" green="0" blue="0"> </color> </foreground_color> <transparent use_class="true">true</transparent> <horizontal_alignment use_class="true">0</horizontal_alignment> <vertical_alignment use_class="true">1</vertical_alignment> <wrap_words use_class="true">false</wrap_words> </widget> <widget type="group" version="2.0.0"> <name>Andor</name> <x>20</x> <y>70</y> <width>470</width> <height>420</height> <style>3</style> <widget type="rectangle" version="2.0.0"> <name>Background</name> <class>GROUP</class> <width>470</width> <height>420</height> <line_width>2</line_width> <line_color use_class="true"> <color name="GROUP-BORDER" red="150" green="155" blue="151"> </color> </line_color> <background_color use_class="true"> <color name="GROUP-BACKGROUND" red="200" green="205" blue="201"> </color> </background_color> <corner_width>10</corner_width> <corner_height>10</corner_height> </widget> <widget type="label" version="2.0.0"> <name>Title</name> <class>GROUP-TITLE</class> <text>Andor detector</text> <width>470</width> <height use_class="true">30</height> <font use_class="true"> <font name="Header 2" family="Source Sans Pro" style="BOLD_ITALIC" size="21.0"> </font> </font> <foreground_color use_class="true"> <color name="GROUP-TEXT" red="25" green="25" blue="25"> </color> </foreground_color> <horizontal_alignment use_class="true">1</horizontal_alignment> <vertical_alignment use_class="true">1</vertical_alignment> <wrap_words use_class="true">false</wrap_words> </widget> <widget type="label" version="2.0.0"> <name>Sensor size</name> <text>Sensor size:</text> <x>20</x> <y>50</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Sensor width</name> <pv_name>$(P)CAM-MaxSizeX_RBV</pv_name> <x>240</x> <y>50</y> <width>40</width> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>x</name> <text>x</text> <x>280</x> <y>50</y> <width>20</width> <height>30</height> <horizontal_alignment>1</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Sensor heigth</name> <pv_name>$(P)CAM-MaxSizeY_RBV</pv_name> <x>300</x> <y>50</y> <width>40</width> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>Image size</name> <text>Image size:</text> <x>20</x> <y>90</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Image width</name> <pv_name>$(P)CAM-ArraySizeX_RBV</pv_name> <x>240</x> <y>90</y> <width>40</width> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>x</name> <text>x</text> <x>280</x> <y>90</y> <width>20</width> <height>30</height> <horizontal_alignment>1</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Image weigth</name> <pv_name>$(P)CAM-ArraySizeY_RBV</pv_name> <x>300</x> <y>90</y> <width>40</width> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>Gain</name> <text>Preamp gain:</text> <x>20</x> <y>130</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Gain</name> <pv_name>$(P)CAM-AndorPreAmpGain_RBV</pv_name> <x>240</x> <y>130</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>Speed</name> <text>ADC speed:</text> <x>20</x> <y>170</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Speed</name> <pv_name>$(P)CAM-AndorADCSpeed_RBV</pv_name> <x>240</x> <y>170</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>Camera status</name> <text>Detector status:</text> <x>20</x> <y>210</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Camera status</name> <pv_name>$(P)CAM-DetectorState_RBV</pv_name> <x>240</x> <y>210</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>Counter</name> <text>Image counter:</text> <x>20</x> <y>250</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Counter</name> <pv_name>$(P)CAM-ArrayCounter_RBV</pv_name> <x>240</x> <y>250</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="action_button" version="3.0.0"> <name>Counter reset</name> <actions> <action type="write_pv"> <pv_name>$(P)CAM-ArrayCounter</pv_name> <value>0</value> </action> </actions> <text>Reset</text> <x>350</x> <y>250</y> <tooltip>$(actions)</tooltip> </widget> <widget type="label" version="2.0.0"> <name>Cooler status</name> <text>Cooler status:</text> <x>20</x> <y>290</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Cooler status</name> <pv_name>$(P)CAM-AndorCooler_RBV</pv_name> <x>240</x> <y>290</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>Temperature</name> <text>Temperature reading:</text> <x>20</x> <y>330</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Temeprature</name> <pv_name>$(P)CAM-TemperatureActual</pv_name> <x>240</x> <y>330</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>Temperature status</name> <text>Temperature status:</text> <x>20</x> <y>370</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Temperature status</name> <pv_name>$(P)CAM-AndorTempStatus_RBV</pv_name> <x>240</x> <y>370</y> <width>210</width> <height>30</height> <format>6</format> <vertical_alignment>1</vertical_alignment> </widget> </widget> <widget type="group" version="2.0.0"> <name>Shamrock</name> <x>20</x> <y>510</y> <width>470</width> <height>220</height> <style>3</style> <widget type="rectangle" version="2.0.0"> <name>Background</name> <class>GROUP</class> <width>470</width> <height>220</height> <line_width>2</line_width> <line_color use_class="true"> <color name="GROUP-BORDER" red="150" green="155" blue="151"> </color> </line_color> <background_color use_class="true"> <color name="GROUP-BACKGROUND" red="200" green="205" blue="201"> </color> </background_color> <corner_width>10</corner_width> <corner_height>10</corner_height> </widget> <widget type="label" version="2.0.0"> <name>Title</name> <class>GROUP-TITLE</class> <text>Shamrock spectrograph</text> <width>470</width> <height use_class="true">30</height> <font use_class="true"> <font name="Header 2" family="Source Sans Pro" style="BOLD_ITALIC" size="21.0"> </font> </font> <foreground_color use_class="true"> <color name="GROUP-TEXT" red="25" green="25" blue="25"> </color> </foreground_color> <horizontal_alignment use_class="true">1</horizontal_alignment> <vertical_alignment use_class="true">1</vertical_alignment> <wrap_words use_class="true">false</wrap_words> </widget> <widget type="label" version="2.0.0"> <name>Gap</name> <text>Slit gap (µm):</text> <x>20</x> <y>50</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textentry" version="3.0.0"> <name>Gap</name> <pv_name>$(P)SPECT-SlitSize1</pv_name> <x>240</x> <y>50</y> <height>30</height> </widget> <widget type="textupdate" version="2.0.0"> <name>Gap RB</name> <pv_name>$(P)SPECT-SlitSize1_RBV</pv_name> <x>350</x> <y>50</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>WL</name> <text>Grating wavelength (nm):</text> <x>20</x> <y>90</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textentry" version="3.0.0"> <name>WL</name> <pv_name>$(P)SPECT-Wavelength</pv_name> <x>240</x> <y>90</y> <height>30</height> </widget> <widget type="textupdate" version="2.0.0"> <name>WL RB</name> <pv_name>$(P)SPECT-Wavelength_RBV</pv_name> <x>350</x> <y>90</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>Min WL</name> <text>Min. wavelength (nm):</text> <x>20</x> <y>130</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Min WL</name> <pv_name>$(P)SPECT-MinWavelength</pv_name> <x>240</x> <y>130</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>Max WL</name> <text>Max. wavelength (nm):</text> <x>20</x> <y>170</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Max WL</name> <pv_name>$(P)SPECT-MaxWavelength</pv_name> <x>240</x> <y>170</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> </widget> <widget type="group" version="2.0.0"> <name>Settings</name> <x>20</x> <y>750</y> <width>470</width> <height>340</height> <style>3</style> <widget type="rectangle" version="2.0.0"> <name>Background</name> <class>GROUP</class> <width>470</width> <height>340</height> <line_width>2</line_width> <line_color use_class="true"> <color name="GROUP-BORDER" red="150" green="155" blue="151"> </color> </line_color> <background_color use_class="true"> <color name="GROUP-BACKGROUND" red="200" green="205" blue="201"> </color> </background_color> <corner_width>10</corner_width> <corner_height>10</corner_height> </widget> <widget type="label" version="2.0.0"> <name>Title</name> <class>GROUP-TITLE</class> <text>Settings</text> <width>470</width> <height use_class="true">30</height> <font use_class="true"> <font name="Header 2" family="Source Sans Pro" style="BOLD_ITALIC" size="21.0"> </font> </font> <foreground_color use_class="true"> <color name="GROUP-TEXT" red="25" green="25" blue="25"> </color> </foreground_color> <horizontal_alignment use_class="true">1</horizontal_alignment> <vertical_alignment use_class="true">1</vertical_alignment> <wrap_words use_class="true">false</wrap_words> </widget> <widget type="label" version="2.0.0"> <name>Time</name> <text>Exposure time (s):</text> <x>20</x> <y>50</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textentry" version="3.0.0"> <name>Time</name> <pv_name>$(P)CAM-AcquireTime</pv_name> <x>240</x> <y>50</y> <height>30</height> </widget> <widget type="textupdate" version="2.0.0"> <name>Time RB</name> <pv_name>$(P)CAM-AcquireTime_RBV</pv_name> <x>350</x> <y>50</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>Delay</name> <text>Trigger delay (µs):</text> <x>20</x> <y>90</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textentry" version="3.0.0"> <name>Delay</name> <pv_name>$(EVR)DlyGen0-Delay-SP</pv_name> <x>240</x> <y>90</y> <height>30</height> </widget> <widget type="textupdate" version="2.0.0"> <name>Delay RB</name> <pv_name>$(EVR)DlyGen0-Delay-RB</pv_name> <x>350</x> <y>90</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>Filter strength</name> <text>Num of images on avg filter:</text> <x>20</x> <y>140</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textentry" version="3.0.0"> <name>Filter strength</name> <pv_name>$(P)PROC-NumFilter</pv_name> <x>240</x> <y>140</y> <height>30</height> </widget> <widget type="textupdate" version="2.0.0"> <name>Filter strength RB</name> <pv_name>$(P)PROC-NumFilter_RBV</pv_name> <x>350</x> <y>140</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>ROI start</name> <text>Fitting region start:</text> <x>20</x> <y>210</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>ROI start x RB</name> <pv_name>$(P)ROI-MinX_RBV</pv_name> <x>240</x> <y>210</y> <width>40</width> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>x</name> <text>x</text> <x>280</x> <y>210</y> <width>20</width> <height>30</height> <horizontal_alignment>1</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>ROI start y RB</name> <pv_name>$(P)ROI-MinY_RBV</pv_name> <x>300</x> <y>210</y> <width>40</width> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>ROI size</name> <text>Fitting region size:</text> <x>20</x> <y>250</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>ROI size x RB</name> <pv_name>$(P)ROI-SizeX_RBV</pv_name> <x>240</x> <y>250</y> <width>40</width> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>x</name> <text>x</text> <x>280</x> <y>250</y> <width>20</width> <height>30</height> <horizontal_alignment>1</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>ROI size y RB</name> <pv_name>$(P)ROI-SizeY_RBV</pv_name> <x>300</x> <y>250</y> <width>40</width> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>ROI bin</name> <text>Fitting region binning:</text> <x>20</x> <y>290</y> <width>210</width> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textentry" version="3.0.0"> <name>ROI bin x</name> <pv_name>$(P)ROI-BinX</pv_name> <x>240</x> <y>290</y> <width>40</width> <height>30</height> </widget> <widget type="label" version="2.0.0"> <name>x</name> <text>x</text> <x>280</x> <y>290</y> <width>20</width> <height>30</height> <horizontal_alignment>1</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textentry" version="3.0.0"> <name>ROI bin y</name> <pv_name>$(P)ROI-BinY</pv_name> <x>300</x> <y>290</y> <width>40</width> <height>30</height> </widget> <widget type="textupdate" version="2.0.0"> <name>ROI bin x RB</name> <pv_name>$(P)ROI-BinX_RBV</pv_name> <x>350</x> <y>290</y> <width>40</width> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>x</name> <text>x</text> <x>390</x> <y>290</y> <width>20</width> <height>30</height> <horizontal_alignment>1</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>ROI bin y RB</name> <pv_name>$(P)ROI-BinY_RBV</pv_name> <x>410</x> <y>290</y> <width>40</width> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> </widget> <widget type="group" version="2.0.0"> <name>Motion</name> <x>20</x> <y>1110</y> <width>470</width> <height>180</height> <style>3</style> <widget type="rectangle" version="2.0.0"> <name>Background</name> <class>GROUP</class> <width>470</width> <height>180</height> <line_width>2</line_width> <line_color use_class="true"> <color name="GROUP-BORDER" red="150" green="155" blue="151"> </color> </line_color> <background_color use_class="true"> <color name="GROUP-BACKGROUND" red="200" green="205" blue="201"> </color> </background_color> <corner_width>10</corner_width> <corner_height>10</corner_height> </widget> <widget type="label" version="2.0.0"> <name>Title</name> <class>GROUP-TITLE</class> <text>Motion</text> <width>470</width> <height use_class="true">30</height> <font use_class="true"> <font name="Header 2" family="Source Sans Pro" style="BOLD_ITALIC" size="21.0"> </font> </font> <foreground_color use_class="true"> <color name="GROUP-TEXT" red="25" green="25" blue="25"> </color> </foreground_color> <horizontal_alignment use_class="true">1</horizontal_alignment> <vertical_alignment use_class="true">1</vertical_alignment> <wrap_words use_class="true">false</wrap_words> </widget> </widget> <widget type="group" version="2.0.0"> <name>Image</name> <x>510</x> <y>70</y> <width>1140</width> <height>420</height> <style>3</style> <widget type="rectangle" version="2.0.0"> <name>Background</name> <class>GROUP</class> <width>1140</width> <height>420</height> <line_width>2</line_width> <line_color use_class="true"> <color name="GROUP-BORDER" red="150" green="155" blue="151"> </color> </line_color> <background_color use_class="true"> <color name="GROUP-BACKGROUND" red="200" green="205" blue="201"> </color> </background_color> <corner_width>10</corner_width> <corner_height>10</corner_height> </widget> <widget type="label" version="2.0.0"> <name>Title</name> <class>GROUP-TITLE</class> <text>Image</text> <width>1140</width> <height use_class="true">30</height> <font use_class="true"> <font name="Header 2" family="Source Sans Pro" style="BOLD_ITALIC" size="21.0"> </font> </font> <foreground_color use_class="true"> <color name="GROUP-TEXT" red="25" green="25" blue="25"> </color> </foreground_color> <horizontal_alignment use_class="true">1</horizontal_alignment> <vertical_alignment use_class="true">1</vertical_alignment> <wrap_words use_class="true">false</wrap_words> </widget> <widget type="image" version="2.0.0"> <name>Image</name> <pv_name>$(P)IMG-ArrayData</pv_name> <x>20</x> <y>50</y> <width>1095</width> <height>288</height> <x_axis> <visible>true</visible> <title></title> <minimum>0.0</minimum> <maximum>100.0</maximum> <title_font> <font name="Default Bold" family="Source Sans Pro" style="BOLD" size="16.0"> </font> </title_font> <scale_font> <font name="Default" family="Source Sans Pro" style="REGULAR" size="16.0"> </font> </scale_font> </x_axis> <y_axis> <visible>true</visible> <title></title> <minimum>0.0</minimum> <maximum>100.0</maximum> <title_font> <font name="Default Bold" family="Source Sans Pro" style="BOLD" size="16.0"> </font> </title_font> <scale_font> <font name="Default" family="Source Sans Pro" style="REGULAR" size="16.0"> </font> </scale_font> </y_axis> <rules> <rule name="data width" prop_id="data_width" out_exp="true"> <exp bool_exp="true"> <expression>pv0</expression> </exp> <pv_name>$(P)IMG-ArraySize0_RBV</pv_name> </rule> <rule name="x axis" prop_id="x_axis.maximum" out_exp="true"> <exp bool_exp="true"> <expression>pv0</expression> </exp> <pv_name>$(P)IMG-ArraySize0_RBV</pv_name> </rule> <rule name="data height" prop_id="data_height" out_exp="true"> <exp bool_exp="true"> <expression>pv0</expression> </exp> <pv_name>$(P)IMG-ArraySize1_RBV</pv_name> </rule> <rule name="y axis" prop_id="y_axis.maximum" out_exp="true"> <exp bool_exp="true"> <expression>pv0</expression> </exp> <pv_name>$(P)IMG-ArraySize1_RBV</pv_name> </rule> <rule name="minimum" prop_id="minimum" out_exp="true"> <exp bool_exp="true"> <expression>pv0</expression> </exp> <pv_name>$(P)STAT-MinValue_RBV</pv_name> </rule> <rule name="maximum" prop_id="maximum" out_exp="true"> <exp bool_exp="true"> <expression>pv0</expression> </exp> <pv_name>$(P)STAT-MaxValue_RBV</pv_name> </rule> </rules> <interpolation>0</interpolation> <rois> <roi> <name>Fitting Region</name> <color> <color red="255" green="0" blue="0"> </color> </color> <visible>true</visible> <interactive>true</interactive> <x_pv>$(P)ROI-MinX</x_pv> <y_pv>$(P)ROI-MinY</y_pv> <width_pv>$(P)ROI-SizeX</width_pv> <height_pv>$(P)ROI-SizeY</height_pv> <file></file> </roi> </rois> </widget> <widget type="label" version="2.0.0"> <name>Min</name> <text>Min. value:</text> <x>20</x> <y>360</y> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Min</name> <pv_name>$(P)STAT-MinValue_RBV</pv_name> <x>130</x> <y>360</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="label" version="2.0.0"> <name>Max</name> <text>Max. value:</text> <x>240</x> <y>360</y> <height>30</height> <horizontal_alignment>2</horizontal_alignment> <vertical_alignment>1</vertical_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Max</name> <pv_name>$(P)STAT-MaxValue_RBV</pv_name> <x>350</x> <y>360</y> <height>30</height> <vertical_alignment>1</vertical_alignment> </widget> <widget type="action_button" version="3.0.0"> <name>Save</name> <actions> <action type="open_display"> <file>../../99-Shared/areadetector-ess-opis/ADCore/ADApp/op/bob/NDFileHDF5.bob</file> <macros> <R>HDF-</R> </macros> <target>tab</target> </action> </actions> <text>Save</text> <x>765</x> <y>360</y> <tooltip>$(actions)</tooltip> </widget> <widget type="action_button" version="3.0.0"> <name>Start</name> <actions> <action type="write_pv"> <pv_name>$(P)CAM-Acquire</pv_name> <value>1</value> </action> </actions> <text>Start</text> <x>905</x> <y>360</y> <tooltip>$(actions)</tooltip> </widget> <widget type="action_button" version="3.0.0"> <name>Stop</name> <actions> <action type="write_pv"> <pv_name>$(P)CAM-Acquire</pv_name> <value>0</value> </action> </actions> <text>Stop</text> <x>1015</x> <y>360</y> <tooltip>$(actions)</tooltip> </widget> </widget> <widget type="group" version="2.0.0"> <name>Fit</name> <x>510</x> <y>510</y> <width>1140</width> <height>780</height> <style>3</style> <widget type="rectangle" version="2.0.0"> <name>Background</name> <class>GROUP</class> <width>1140</width> <height>780</height> <line_width>2</line_width> <line_color use_class="true"> <color name="GROUP-BORDER" red="150" green="155" blue="151"> </color> </line_color> <background_color use_class="true"> <color name="GROUP-BACKGROUND" red="200" green="205" blue="201"> </color> </background_color> <corner_width>10</corner_width> <corner_height>10</corner_height> </widget> <widget type="label" version="2.0.0"> <name>Title</name> <class>GROUP-TITLE</class> <text>Fitting</text> <width>1140</width> <height use_class="true">30</height> <font use_class="true"> <font name="Header 2" family="Source Sans Pro" style="BOLD_ITALIC" size="21.0"> </font> </font> <foreground_color use_class="true"> <color name="GROUP-TEXT" red="25" green="25" blue="25"> </color> </foreground_color> <horizontal_alignment use_class="true">1</horizontal_alignment> <vertical_alignment use_class="true">1</vertical_alignment> <wrap_words use_class="true">false</wrap_words> </widget> <widget type="xyplot" version="2.0.0"> <name>Plot</name> <x>20</x> <y>50</y> <width>1090</width> <show_toolbar>true</show_toolbar> <rules> <rule name="Update trace[0] y_pv" prop_id="traces[0].y_pv" out_exp="true"> <exp bool_exp="true"> <expression>pvStr0+'FIT'+pvStr1+'-Y_RBV'</expression> </exp> <pv_name trigger="false">loc://prefix</pv_name> <pv_name>$(P)NumOfPeaks</pv_name> </rule> <rule name="Update trace[0] y_pv" prop_id="traces[1].y_pv" out_exp="true"> <exp bool_exp="true"> <expression>pvStr0+'FIT'+pvStr1+'-Fit_RBV'</expression> </exp> <pv_name trigger="false">loc://prefix</pv_name> <pv_name>$(P)NumOfPeaks</pv_name> </rule> </rules> <x_axis> <title></title> <autoscale>true</autoscale> <log_scale>false</log_scale> <minimum>0.0</minimum> <maximum>100.0</maximum> <show_grid>true</show_grid> <title_font> <font name="Default Bold" family="Source Sans Pro" style="BOLD" size="16.0"> </font> </title_font> <scale_font> <font name="Default" family="Source Sans Pro" style="REGULAR" size="16.0"> </font> </scale_font> <visible>true</visible> </x_axis> <y_axes> <y_axis> <title></title> <autoscale>true</autoscale> <log_scale>false</log_scale> <minimum>0.0</minimum> <maximum>100.0</maximum> <show_grid>true</show_grid> <title_font> <font name="Default Bold" family="Source Sans Pro" style="BOLD" size="16.0"> </font> </title_font> <scale_font> <font name="Default" family="Source Sans Pro" style="REGULAR" size="16.0"> </font> </scale_font> <visible>true</visible> </y_axis> </y_axes> <traces> <trace> <name>Original</name> <x_pv></x_pv> <y_pv></y_pv> <err_pv></err_pv> <axis>0</axis> <trace_type>1</trace_type> <color> <color red="0" green="0" blue="255"> </color> </color> <line_width>1</line_width> <line_style>0</line_style> <point_type>0</point_type> <point_size>10</point_size> <visible>true</visible> </trace> <trace> <name>Fitted</name> <x_pv></x_pv> <y_pv></y_pv> <err_pv></err_pv> <axis>0</axis> <trace_type>1</trace_type> <color> <color red="255" green="0" blue="0"> </color> </color> <line_width>1</line_width> <line_style>0</line_style> <point_type>0</point_type> <point_size>10</point_size> <visible>true</visible> </trace> </traces> </widget> <widget type="embedded" version="2.0.0"> <name>H1</name> <macros> <R>H1</R> <TITLE>H+</TITLE> </macros> <file>dsm_hydrogen.bob</file> <x>20</x> <y>370</y> <width>360</width> <height>260</height> <resize>2</resize> </widget> <widget type="embedded" version="2.0.0"> <name>H2</name> <macros> <R>H2</R> <TITLE>H2+</TITLE> </macros> <file>dsm_hydrogen.bob</file> <x>385</x> <y>370</y> <width>360</width> <height>260</height> <resize>2</resize> </widget> <widget type="embedded" version="2.0.0"> <name>H3</name> <macros> <R>H3</R> <TITLE>H3+</TITLE> </macros> <file>dsm_hydrogen.bob</file> <x>750</x> <y>370</y> <width>360</width> <height>260</height> <resize>2</resize> </widget> <widget type="label" version="2.0.0"> <name>Energy</name> <text>Energy (keV):</text> <x>40</x> <y>650</y> <height>30</height> <horizontal_alignment>2</horizontal_alignment> </widget> <widget type="textentry" version="3.0.0"> <name>Energy</name> <pv_name>$(P)Energy</pv_name> <x>150</x> <y>650</y> <height>30</height> </widget> <widget type="label" version="2.0.0"> <name>Num of peaks</name> <text>Num of peaks:</text> <x>40</x> <y>690</y> <height>30</height> <horizontal_alignment>2</horizontal_alignment> </widget> <widget type="spinner" version="2.0.0"> <name>Num of peaks</name> <pv_name>$(P)NumOfPeaks</pv_name> <x>150</x> <y>690</y> <height>30</height> </widget> <widget type="textupdate" version="2.0.0"> <name>Num of peaks RB</name> <x>260</x> <y>690</y> <height>30</height> <rules> <rule name="Update pv_name" prop_id="pv_name" out_exp="true"> <exp bool_exp="true"> <expression>pvStr0+'FIT'+pvStr1+'-Peaks_RBV'</expression> </exp> <pv_name trigger="false">loc://prefix</pv_name> <pv_name>$(P)NumOfPeaks</pv_name> </rule> </rules> </widget> <widget type="label" version="2.0.0"> <name>Background</name> <text>Background:</text> <x>405</x> <y>650</y> <height>30</height> <horizontal_alignment>2</horizontal_alignment> </widget> <widget type="textentry" version="3.0.0"> <name>Background</name> <x>515</x> <y>650</y> <height>30</height> <rules> <rule name="Update pv_name" prop_id="pv_name" out_exp="true"> <exp bool_exp="true"> <expression>pvStr0+'FIT'+pvStr1+'-Background'</expression> </exp> <pv_name trigger="false">loc://prefix</pv_name> <pv_name>$(P)NumOfPeaks</pv_name> </rule> </rules> </widget> <widget type="textupdate" version="2.0.0"> <name>Background RB</name> <x>625</x> <y>650</y> <height>30</height> <rules> <rule name="Update pv_name" prop_id="pv_name" out_exp="true"> <exp bool_exp="true"> <expression>pvStr0+'FIT'+pvStr1+'-BackgroundActual'</expression> </exp> <pv_name trigger="false">loc://prefix</pv_name> <pv_name>$(P)NumOfPeaks</pv_name> </rule> </rules> </widget> <widget type="label" version="2.0.0"> <name>Num of iterations</name> <text>Nr. iterations:</text> <x>405</x> <y>690</y> <height>30</height> <horizontal_alignment>2</horizontal_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Num of iterations</name> <x>515</x> <y>690</y> <height>30</height> <rules> <rule name="Update pv_name" prop_id="pv_name" out_exp="true"> <exp bool_exp="true"> <expression>pvStr0+'FIT'+pvStr1+'-NrIterations_RBV'</expression> </exp> <pv_name trigger="false">loc://prefix</pv_name> <pv_name>$(P)NumOfPeaks</pv_name> </rule> </rules> </widget> <widget type="label" version="2.0.0"> <name>Residual</name> <text>Residual vector norm:</text> <x>405</x> <y>730</y> <height>30</height> <horizontal_alignment>2</horizontal_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Residual</name> <x>515</x> <y>730</y> <height>30</height> <rules> <rule name="Update pv_name" prop_id="pv_name" out_exp="true"> <exp bool_exp="true"> <expression>pvStr0+'FIT'+pvStr1+'-ResidVectorNorm_RBV'</expression> </exp> <pv_name trigger="false">loc://prefix</pv_name> <pv_name>$(P)NumOfPeaks</pv_name> </rule> </rules> </widget> <widget type="label" version="2.0.0"> <name>Fit status</name> <text>Fit status:</text> <x>770</x> <y>650</y> <height>30</height> <horizontal_alignment>2</horizontal_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Fit status</name> <x>880</x> <y>650</y> <width>210</width> <height>30</height> <rules> <rule name="Update pv_name" prop_id="pv_name" out_exp="true"> <exp bool_exp="true"> <expression>pvStr0+'FIT'+pvStr1+'-Status_RBV'</expression> </exp> <pv_name trigger="false">loc://prefix</pv_name> <pv_name>$(P)NumOfPeaks</pv_name> </rule> </rules> </widget> <widget type="label" version="2.0.0"> <name>Success counter</name> <text>Successful fits:</text> <x>770</x> <y>690</y> <height>30</height> <horizontal_alignment>2</horizontal_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Success counter</name> <x>880</x> <y>690</y> <height>30</height> <rules> <rule name="Update pv_name" prop_id="pv_name" out_exp="true"> <exp bool_exp="true"> <expression>pvStr0+'FIT'+pvStr1+'-GoodCounter_RBV'</expression> </exp> <pv_name trigger="false">loc://prefix</pv_name> <pv_name>$(P)NumOfPeaks</pv_name> </rule> </rules> </widget> <widget type="label" version="2.0.0"> <name>Fail counter</name> <text>Failed fits:</text> <x>770</x> <y>730</y> <height>30</height> <horizontal_alignment>2</horizontal_alignment> </widget> <widget type="textupdate" version="2.0.0"> <name>Fail counter</name> <x>880</x> <y>730</y> <height>30</height> <rules> <rule name="Update pv_name" prop_id="pv_name" out_exp="true"> <exp bool_exp="true"> <expression>pvStr0+'FIT'+pvStr1+'-BadCounter_RBV'</expression> </exp> <pv_name trigger="false">loc://prefix</pv_name> <pv_name>$(P)NumOfPeaks</pv_name> </rule> </rules> </widget> <widget type="action_button" version="3.0.0"> <name>Parameters feedback</name> <actions execute_as_one="true"> <action type="execute"> <script file="EmbeddedPy"> <text><![CDATA[from org.csstudio.display.builder.runtime.script import PVUtil Timeout = 500 # ms Prefix = widget.getPropertyValue('pv_name') PVUtil.writePV(Prefix+"-BackgroundSync.PROC", 1, Timeout) PVUtil.writePV(Prefix+"-1-PeakAmplitudeSync.PROC", 1, Timeout) PVUtil.writePV(Prefix+"-1-PeakMuSync.PROC", 1, Timeout) PVUtil.writePV(Prefix+"-1-PeakSigmaSync.PROC", 1, Timeout) PVUtil.writePV(Prefix+"-2-PeakAmplitudeSync.PROC", 1, Timeout) PVUtil.writePV(Prefix+"-2-PeakMuSync.PROC", 1, Timeout) PVUtil.writePV(Prefix+"-2-PeakSigmaSync.PROC", 1, Timeout) PVUtil.writePV(Prefix+"-3-PeakAmplitudeSync.PROC", 1, Timeout) PVUtil.writePV(Prefix+"-3-PeakMuSync.PROC", 1, Timeout) PVUtil.writePV(Prefix+"-3-PeakSigmaSync.PROC", 1, Timeout) PVUtil.writePV(Prefix+"-4-PeakAmplitudeSync.PROC", 1, Timeout) PVUtil.writePV(Prefix+"-4-PeakMuSync.PROC", 1, Timeout) PVUtil.writePV(Prefix+"-4-PeakSigmaSync.PROC", 1, Timeout)]]></text> </script> </action> </actions> <text>Sync</text> <x>990</x> <y>690</y> <rules> <rule name="Update pv_name" prop_id="pv_name" out_exp="true"> <exp bool_exp="true"> <expression>pvStr0+'FIT'+pvStr1</expression> </exp> <pv_name trigger="false">loc://prefix</pv_name> <pv_name>$(P)NumOfPeaks</pv_name> </rule> </rules> <tooltip>$(actions)</tooltip> </widget> <widget type="action_button" version="3.0.0"> <name>Reset counters</name> <actions execute_as_one="true"> <action type="execute"> <script file="EmbeddedPy"> <text><![CDATA[from org.csstudio.display.builder.runtime.script import PVUtil Timeout = 500 # ms PvName = widget.getPropertyValue('pv_name') PVUtil.writePV(PvName, 0, Timeout)]]></text> </script> <description>Execute Script</description> </action> </actions> <text>Reset</text> <x>990</x> <y>730</y> <rules> <rule name="Update pv_name" prop_id="pv_name" out_exp="true"> <exp bool_exp="true"> <expression>pvStr0+'FIT'+pvStr1+'-ResetCounters'</expression> </exp> <pv_name trigger="false">loc://prefix</pv_name> <pv_name>$(P)NumOfPeaks</pv_name> </rule> </rules> <tooltip>$(actions)</tooltip> </widget> </widget> </display>