15#define VP1IMPVARNAME m_d
18#include "ui_vp1rawdatacontrollerform.h"
19#include "ui_rawdata_settings_display_form.h"
20#include "ui_rawdata_settings_interactions_form.h"
21#include "ui_rawdata_settings_cuts_form.h"
26#include "GaudiKernel/SystemOfUnits.h"
34 Ui::VP1RawDataControllerForm
ui{};
36 Ui::RawDataSysSettingsInteractionsForm
ui_int{};
55 m_d->ui.setupUi(
this);
64 m_d->ui_display.widget_drawOptions->setLineWidths(1.5);
65 m_d->ui_display.widget_drawOptions->setPointSizes(2.5);
66 m_d->ui_display.widget_drawOptions->setComplexityDisabled();
68 m_d->ui_cuts.etaPhiCutWidget->setEtaCutEnabled(
false);
139 s.save(
m_d->ui_cuts.etaPhiCutWidget);
140 s.save(
m_d->ui_cuts.checkBox_cut_indet_barrelA);
141 s.save(
m_d->ui_cuts.checkBox_cut_indet_barrelC);
142 s.save(
m_d->ui_cuts.checkBox_cut_indet_endcapA);
143 s.save(
m_d->ui_cuts.checkBox_cut_indet_endcapC);
144 s.save(
m_d->ui_cuts.checkbox_cut_trt_needHT);
145 s.save(
m_d->ui_cuts.checkbox_cut_trt_TotMin);
146 s.save(
m_d->ui_cuts.spinBox_cut_trt_ToTMin);
147 s.save(
m_d->ui_cuts.checkbox_cut_trt_TotMax);
148 s.save(
m_d->ui_cuts.spinBox_cut_trt_ToTMax);
149 s.save(
m_d->ui_display.checkBox_showVolumeOutLines);
150 s.save(
m_d->ui_display.widget_drawOptions);
151 s.save(
m_d->ui_display.checkBox_trtHTUseSpecialMat);
152 s.save(
m_d->ui_display.checkBox_bcmHighAttUseSpecialMat);
153 s.save(
m_d->ui_display.matButton_trtht);
154 s.save(
m_d->ui_display.matButton_bcmhighatt);
155 s.save(
m_d->ui_int.checkBox_printinfo);
156 s.save(
m_d->ui_int.checkBox_printinfo_verbose);
157 s.save(
m_d->ui_int.checkBox_zoom);
158 s.save(
m_d->ui_cuts.spinBox_lucid_qdc_min);
164 if (s.version()<0||s.version()>1) {
165 message(
"Warning: State data in .vp1 file has unsupported version ("+
str(s.version())+
")");
168 s.restore(
m_d->ui_cuts.etaPhiCutWidget);
169 s.restore(
m_d->ui_cuts.checkBox_cut_indet_barrelA);
170 s.restore(
m_d->ui_cuts.checkBox_cut_indet_barrelC);
171 s.restore(
m_d->ui_cuts.checkBox_cut_indet_endcapA);
172 s.restore(
m_d->ui_cuts.checkBox_cut_indet_endcapC);
173 s.restore(
m_d->ui_cuts.checkbox_cut_trt_needHT);
174 s.restore(
m_d->ui_cuts.checkbox_cut_trt_TotMin);
175 s.restore(
m_d->ui_cuts.spinBox_cut_trt_ToTMin);
176 s.restore(
m_d->ui_cuts.checkbox_cut_trt_TotMax);
177 s.restore(
m_d->ui_cuts.spinBox_cut_trt_ToTMax);
178 s.restore(
m_d->ui_display.checkBox_showVolumeOutLines);
179 s.restore(
m_d->ui_display.widget_drawOptions);
180 s.restore(
m_d->ui_display.checkBox_trtHTUseSpecialMat);
181 s.restore(
m_d->ui_display.checkBox_bcmHighAttUseSpecialMat);
182 s.restore(
m_d->ui_display.matButton_trtht);
183 s.restore(
m_d->ui_display.matButton_bcmhighatt);
184 s.restore(
m_d->ui_int.checkBox_printinfo);
185 s.restore(
m_d->ui_int.checkBox_printinfo_verbose);
186 s.restore(
m_d->ui_int.checkBox_zoom);
188 s.restore(
m_d->ui_cuts.spinBox_lucid_qdc_min);
194 return m_d->collWidget;
200 return m_d->ui_display.widget_drawOptions->drawOptionsGroup();
211 return m_d->ui_cuts.etaPhiCutWidget->allowedEta();
217 return m_d->ui_cuts.etaPhiCutWidget->allowedPhi();
223 return m_d->ui_display.checkBox_showVolumeOutLines->isChecked();
229 return m_d->ui_display.checkBox_trtHTUseSpecialMat->isChecked();
235 return m_d->ui_display.checkBox_bcmHighAttUseSpecialMat->isChecked();
241 VP1RawDataFlags::InDetPartsFlags f;
242 if (
m_d->ui_cuts.checkBox_cut_indet_barrelA->isChecked())
244 if (
m_d->ui_cuts.checkBox_cut_indet_barrelC->isChecked())
246 if (
m_d->ui_cuts.checkBox_cut_indet_endcapA->isChecked())
248 if (
m_d->ui_cuts.checkBox_cut_indet_endcapC->isChecked())
256 return m_d->ui_cuts.checkbox_cut_trt_needHT->isChecked();
262 VP1Interval i( (
m_d->ui_cuts.checkbox_cut_trt_TotMin->isChecked() ? (
m_d->ui_cuts.spinBox_cut_trt_ToTMin->value()-0.5)*3.125*Gaudi::Units::nanosecond : -
VP1Interval::inf() ),
263 (
m_d->ui_cuts.checkbox_cut_trt_TotMax->isChecked() ? (
m_d->ui_cuts.spinBox_cut_trt_ToTMax->value()+0.5)*3.125*Gaudi::Units::nanosecond :
VP1Interval::inf() ) );
270 return m_d->ui_cuts.spinBox_lucid_qdc_min->value();
288#define VP1CONTROLLERCLASSNAME VP1RawDataSysController
#define POSSIBLECHANGE_IMP(x)
void initDialog(T &theUI, QPushButton *launchbutton, QAbstractButton *enabledButton=0)
SoMaterial * getMaterial(VP1MaterialButton *) const
void connectToLastUpdateSlot(QObject *sender, const char *signal)
void setupCollWidgetInScrollArea(QScrollArea *scrollarea, VP1CollectionWidget *collWidget)
const char * addUpdateSlot(const char *slot)
VP1Controller(IVP1System *sys, const QString &classname)
void message(const QString &) const
bool last_showVolumeOutLines
bool last_useSpecialBCMHighAttMaterial
VP1RawDataFlags::InDetPartsFlags last_enabledInDetParts
QList< VP1Interval > last_cutAllowedPhi
Ui::VP1RawDataControllerForm ui
unsigned last_lucidMinQDC
Ui::RawDataSysSettingsCutsForm ui_cuts
Ui::RawDataSysSettingsDisplayForm ui_display
Ui::RawDataSysSettingsInteractionsForm ui_int
VP1Interval last_trtAllowedToT
VP1Interval last_cutAllowedEta
VP1CollectionWidget * collWidget
bool last_useSpecialTRTHTMaterial
bool printInfoOnClick() const
VP1RawDataSysController(IVP1System *sys)
SoGroup * drawOptions() const
bool showVolumeOutLines() const
VP1Interval trtAllowedToT() const
QList< VP1Interval > cutAllowedPhi() const
unsigned lucidMinQDC() const
void possibleChange_cutAllowedEta()
bool trtRequireHT() const
VP1Interval cutAllowedEta() const
void actualRestoreSettings(VP1Deserialise &)
void possibleChange_trtAllowedToT()
SoMaterial * bcmHighAttMaterial() const
bool printVerboseInfoOnClick() const
bool useSpecialBCMHighAttMaterial() const
void possibleChange_useSpecialTRTHTMaterial()
void possibleChange_cutAllowedPhi()
void possibleChange_trtRequireHT()
virtual ~VP1RawDataSysController()
void possibleChange_useSpecialBCMHighAttMaterial()
void actualSaveSettings(VP1Serialise &) const
void possibleChange_enabledInDetParts()
VP1CollectionWidget * collWidget() const
VP1RawDataFlags::InDetPartsFlags enabledInDetParts() const
bool useSpecialTRTHTMaterial() const
void possibleChange_showVolumeOutLines()
int currentSettingsVersion() const
void possibleChange_lucidMinQDC()
SoMaterial * trtHTMaterial() const