Skip to content

Commit

Permalink
Added new flags and connected them to the main GUI. This refs #4303
Browse files Browse the repository at this point in the history
  • Loading branch information
JeanBilheux committed Feb 10, 2012
1 parent 7d19433 commit 63b782c
Show file tree
Hide file tree
Showing 4 changed files with 33 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -39,12 +39,15 @@ def PyExec(self):
from reduction.instruments.reflectometer import wks_utility

run_numbers = self.getProperty("RunNumbers")

mtd.sendLogMessage("RefLReduction: processing %s" % run_numbers)
allow_multiple = False
if len(run_numbers)>1 and not allow_multiple:
raise RuntimeError("Not ready for multiple runs yet, please specify only one run number")


#run with normalization or not
NormFlag = self.getProperty("NormFlag")

normalization_run = self.getProperty("NormalizationRunNumber")

data_peak = self.getProperty("SignalPeakPixelRange")
Expand Down Expand Up @@ -82,7 +85,7 @@ def PyExec(self):
subtract_data_bck = self.getProperty("SubtractSignalBackground")
subtract_norm_bck = self.getProperty("SubtractNormBackground")



########################################################################
# Find full path to event NeXus data file
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ class DataSets(BaseScriptElement):
norm_x_min = 115
norm_x_max = 210

NormFlag = True
NormPeakPixels = [120, 130]
NormBackgroundFlag = False
NormBackgroundRoi = [115, 137]
Expand Down Expand Up @@ -55,6 +56,7 @@ def to_script(self, for_automated_reduction=False):
script += " SignalPeakPixelRange=%s,\n" % str(self.DataPeakPixels)
script += " SubtractSignalBackground=%s,\n" % str(self.DataBackgroundFlag)
script += " SignalBackgroundPixelRange=%s,\n" % str(self.DataBackgroundRoi[:2])
script += " NormFlag=%s,\n" % str(self.NormFlag)
script += " NormPeakPixelRange=%s,\n" % str(self.NormPeakPixels)
script += " NormBackgroundPixelRange=%s,\n" % str(self.NormBackgroundRoi)
script += " SubtractNormBackground=%s,\n" % str(self.NormBackgroundFlag)
Expand Down Expand Up @@ -103,6 +105,8 @@ def to_xml(self):
xml += "<data_sets>%s</data_sets>\n" % ','.join([str(i) for i in self.data_files])
xml += "<x_min_pixel>%s</x_min_pixel>\n" % str(self.x_range[0])
xml += "<x_max_pixel>%s</x_max_pixel>\n" % str(self.x_range[1])

xml += "<norm_flag>%s</norm_flag>\n" % str(self.NormFlag)
xml += "<norm_x_max>%s</norm_x_max>\n" % str(self.norm_x_max)
xml += "<norm_x_min>%s</norm_x_min>\n" % str(self.norm_x_min)

Expand Down Expand Up @@ -174,6 +178,10 @@ def from_xml_element(self, instrument_dom):

self.data_files = BaseScriptElement.getIntList(instrument_dom, "data_sets")

#with or without norm
self.NormFlag = BaseScriptElement.getBoolElement(instrument_dom, "norm_flag",
default=DataSets.NormFlag)

#Peak from/to pixels
self.NormPeakPixels = [BaseScriptElement.getIntElement(instrument_dom, "norm_from_peak_pixels"),
BaseScriptElement.getIntElement(instrument_dom, "norm_to_peak_pixels")]
Expand Down Expand Up @@ -210,6 +218,7 @@ def reset(self):
self.DataTofRange = DataSets.DataTofRange
self.data_files = DataSets.data_files

self.NormFlag = DataSets.NormFlag
self.NormBackgroundFlag = DataSets.NormBackgroundFlag
self.NormBackgroundRoi = DataSets.NormBackgroundRoi
self.NormPeakPixels = DataSets.NormPeakPixels
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -392,6 +392,9 @@ def set_editing_state(self, state):

self._summary.data_run_number_edit.setText(str(','.join([str(i) for i in state.data_files])))

#normalization flag
self._summary.norm_switch.setChecked(state.NormFlag)

# Normalization options
self._summary.norm_run_number_edit.setText(str(state.norm_file))
self._summary.norm_peak_from_pixel.setText(str(state.NormPeakPixels[0]))
Expand Down Expand Up @@ -425,7 +428,7 @@ def get_state(self):
# Angle offset
angle_offset = float(self._summary.angle_offset_edit.text())
angle_offset_error = float(self._summary.angle_offset_error_edit.text())

for i in range(self._summary.angle_list.count()):
data = self._summary.angle_list.item(i).data(QtCore.Qt.UserRole).toPyObject()
# Over-write Q binning with common binning
Expand All @@ -435,6 +438,10 @@ def get_state(self):
# Over-write angle offset
data.angle_offset = angle_offset
data.angle_offset_error = angle_offset_error

##
# Add here states that are relevant to the interface (all the runs)
##

state_list.append(data)
state.data_sets = state_list
Expand Down Expand Up @@ -468,7 +475,10 @@ def get_editing_state(self):

datafiles = str(self._summary.data_run_number_edit.text()).split(',')
m.data_files = [int(i) for i in datafiles]


# Normalization flag
m.NormFlag = self._summary.norm_switch.isChecked()

# Normalization options
m.norm_file = int(self._summary.norm_run_number_edit.text())
m.NormPeakPixels = [int(self._summary.norm_peak_from_pixel.text()),
Expand All @@ -486,5 +496,9 @@ def get_editing_state(self):
#m.q_step = float(self._summary.q_step_edit.text())
#if self._summary.log_scale_chk.isChecked():
# m.q_step = -m.q_step


##
# Add here states that are data file dependent
##

return m
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

# Form implementation generated from reading ui file 'data_refl_simple.ui'
#
# Created: Thu Feb 9 14:50:47 2012
# Created: Fri Feb 10 10:04:59 2012
# by: PyQt4 UI code generator 4.7.2
#
# WARNING! All changes made in this file will be lost!
Expand Down

0 comments on commit 63b782c

Please sign in to comment.