diff --git a/slsDetectorGui/forms/form_tab_measurement.ui b/slsDetectorGui/forms/form_tab_measurement.ui
index cf912b679..9290c74c9 100644
--- a/slsDetectorGui/forms/form_tab_measurement.ui
+++ b/slsDetectorGui/forms/form_tab_measurement.ui
@@ -538,6 +538,11 @@ Maximum value is 3. <br>
Gated with Start Trigger
+ -
+
+ Burst Trigger
+
+
-
@@ -862,7 +867,7 @@ Frame period between exposures.
- -1
+ 6
-
diff --git a/slsDetectorGui/include/qTabMeasurement.h b/slsDetectorGui/include/qTabMeasurement.h
index 5f34f978a..76180933a 100644
--- a/slsDetectorGui/include/qTabMeasurement.h
+++ b/slsDetectorGui/include/qTabMeasurement.h
@@ -180,7 +180,7 @@ private:
/** detector type */
slsDetectorDefs::detectorType detType;
/** enum for the timing mode */
- enum{None, Auto, Trigger_Exp_Series, Trigger_Readout, Gated, Gated_Start, NumTimingModes};
+ enum{None, Auto, Trigger_Exp_Series, Trigger_Readout, Gated, Gated_Start, Burst_Trigger, NumTimingModes};
/** timer to update the progress*/
QTimer *progressTimer;
/** tool tip variables*/
diff --git a/slsDetectorGui/slsDetectorGui.pro b/slsDetectorGui/slsDetectorGui.pro
index da52c63f8..641716a66 100644
--- a/slsDetectorGui/slsDetectorGui.pro
+++ b/slsDetectorGui/slsDetectorGui.pro
@@ -23,7 +23,7 @@ QMAKE_LIBS = -L$(QTDIR)/lib
DEFINES += VERBOSE DACS_INT PRINT_LOG #VERYVERBOSE CHECKINFERROR
LIBS = -L$(QWTDIR)/lib -lqwt -L$(QWT3D)/lib
-
+CXXFLAGS += -g
QMAKE_CXXFLAGS_WARN_ON = -w
diff --git a/slsDetectorGui/src/qTabMeasurement.cpp b/slsDetectorGui/src/qTabMeasurement.cpp
index 445ec4bab..cd1893eb8 100644
--- a/slsDetectorGui/src/qTabMeasurement.cpp
+++ b/slsDetectorGui/src/qTabMeasurement.cpp
@@ -137,12 +137,14 @@ void qTabMeasurement::SetupTimingMode(){
item[(int)Trigger_Readout]->setEnabled(true);
item[(int)Gated]->setEnabled(true);
item[(int)Gated_Start]->setEnabled(true);
+ item[(int)Burst_Trigger]->setEnabled(false);
break;
case slsDetectorDefs::EIGER:
item[(int)Trigger_Exp_Series]->setEnabled(true);
- item[(int)Trigger_Readout]->setEnabled(true);
+ item[(int)Trigger_Readout]->setEnabled(false);
item[(int)Gated]->setEnabled(true);
item[(int)Gated_Start]->setEnabled(false);
+ item[(int)Burst_Trigger]->setEnabled(true);
break;
case slsDetectorDefs::MOENCH:
case slsDetectorDefs::PROPIX:
@@ -152,6 +154,7 @@ void qTabMeasurement::SetupTimingMode(){
item[(int)Trigger_Readout]->setEnabled(false);
item[(int)Gated]->setEnabled(false);
item[(int)Gated_Start]->setEnabled(false);
+ item[(int)Burst_Trigger]->setEnabled(false);
break;
default:
cout << "Unknown detector type." << endl;
@@ -175,7 +178,7 @@ void qTabMeasurement::GetModeFromDetector(bool startup){
slsDetectorDefs::externalCommunicationMode mode = myDet->setExternalCommunicationMode();
//Setting the timing mode in gui
- if(model && model->itemFromIndex(model->index(mode,comboTimingMode->modelColumn(), comboTimingMode->rootModelIndex()))->isEnabled()){
+ if(model && model->itemFromIndex(model->index(mode+1,comboTimingMode->modelColumn(), comboTimingMode->rootModelIndex()))->isEnabled()){
//these are things checked in setuptimingmode
@@ -229,7 +232,7 @@ void qTabMeasurement::GetModeFromDetector(bool startup){
cout << "The detector(s) " << offline << " is/are not connected. Exiting GUI." << endl;
exit(-1);
}
-
+ cout << "Unknown Timing Mode " << mode << " detected from detector" << endl;
qDefs::Message(qDefs::WARNING,"Unknown Timing Mode detected from detector."
"\n\nSetting the following defaults:\nTiming Mode \t: None\n"
"Number of Frames \t: 1\nNumber of Triggers \t: 1","qTabMeasurement::GetModeFromDetector");
@@ -655,9 +658,6 @@ void qTabMeasurement::SetTimingMode(int mode){
success = true;
break;
case Trigger_Readout://#Frames, ExpTime, Period, (Delay)
- if(detType != slsDetectorDefs::EIGER){
- lblDelay->setEnabled(true); spinDelay->setEnabled(true); comboDelayUnit->setEnabled(true);
- }
spinNumTriggers->setValue(1);
lblNumFrames->setEnabled(true); spinNumFrames->setEnabled(true);
lblExpTime->setEnabled(true); spinExpTime->setEnabled(true); comboExpUnit->setEnabled(true);
@@ -685,6 +685,17 @@ void qTabMeasurement::SetTimingMode(int mode){
if(myDet->setExternalCommunicationMode(slsDetectorDefs::GATE_WITH_START_TRIGGER)==slsDetectorDefs::GATE_WITH_START_TRIGGER)
success = true;
break;
+ case Burst_Trigger://#Frames, ExpTime, Period, (Delay)
+ spinNumTriggers->setValue(1);
+ if(detType != slsDetectorDefs::EIGER){
+ lblDelay->setEnabled(true); spinDelay->setEnabled(true); comboDelayUnit->setEnabled(true);
+ }
+ lblNumFrames->setEnabled(true); spinNumFrames->setEnabled(true);
+ lblExpTime->setEnabled(true); spinExpTime->setEnabled(true); comboExpUnit->setEnabled(true);
+ lblPeriod->setEnabled(true); spinPeriod->setEnabled(true); comboPeriodUnit->setEnabled(true);
+ if(myDet->setExternalCommunicationMode(slsDetectorDefs::BURST_TRIGGER)==slsDetectorDefs::BURST_TRIGGER)
+ success = true;
+ break;
default:
cout << "Timing mode unknown to GUI" << endl;
//This should never happen