From 440b244b6623cf32bbd78a336f9d55fc281a75b8 Mon Sep 17 00:00:00 2001 From: l_maliakal_d Date: Mon, 12 Aug 2013 10:28:42 +0000 Subject: [PATCH] checking conditions before trimming and settings include low noise now, so a few changes git-svn-id: file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorGui@224 af1100a4-978c-4157-bff7-07162d2ba061 --- slsDetectorGui/forms/form_tab_plot.ui | 8 ++-- slsDetectorGui/forms/form_tab_settings.ui | 5 ++ slsDetectorGui/include/qTabSettings.h | 2 +- slsDetectorGui/src/qTabAdvanced.cpp | 57 +++++++++++++---------- slsDetectorGui/src/qTabSettings.cpp | 7 ++- 5 files changed, 48 insertions(+), 31 deletions(-) diff --git a/slsDetectorGui/forms/form_tab_plot.ui b/slsDetectorGui/forms/form_tab_plot.ui index 29893eb4b..c6848218c 100644 --- a/slsDetectorGui/forms/form_tab_plot.ui +++ b/slsDetectorGui/forms/form_tab_plot.ui @@ -1250,7 +1250,7 @@ 10 20 - 348 + 346 26 @@ -1284,7 +1284,7 @@ - 9 + 7 10 @@ -1313,7 +1313,7 @@ - 9 + 7 10 @@ -1342,7 +1342,7 @@ - 9 + 7 10 diff --git a/slsDetectorGui/forms/form_tab_settings.ui b/slsDetectorGui/forms/form_tab_settings.ui index a9dcf980c..404dfcfba 100644 --- a/slsDetectorGui/forms/form_tab_settings.ui +++ b/slsDetectorGui/forms/form_tab_settings.ui @@ -95,6 +95,11 @@ Very High Gain + + + Low Noise + + Undefined diff --git a/slsDetectorGui/include/qTabSettings.h b/slsDetectorGui/include/qTabSettings.h index 90c901910..e397c606f 100644 --- a/slsDetectorGui/include/qTabSettings.h +++ b/slsDetectorGui/include/qTabSettings.h @@ -57,7 +57,7 @@ private: /** expert mode */ bool expertMode; - enum{Standard,Fast,HighGain,DynamicGain,LowGain,MediumGain,VeryHighGain,Undefined,Uninitialized,NumSettings}; + enum{Standard,Fast,HighGain,DynamicGain,LowGain,MediumGain,VeryHighGain,LowNoise,Undefined,Uninitialized,NumSettings}; /** To be able to index items on a combo box */ QStandardItemModel* model; diff --git a/slsDetectorGui/src/qTabAdvanced.cpp b/slsDetectorGui/src/qTabAdvanced.cpp index 71bb545d9..16231733d 100644 --- a/slsDetectorGui/src/qTabAdvanced.cpp +++ b/slsDetectorGui/src/qTabAdvanced.cpp @@ -97,7 +97,7 @@ void qTabAdvanced::SetupWidgetWindow(){ } - //logs + //logs and trimming if(!isAngular && !isEnergy) boxLogs->setEnabled(false); else{ if(!isAngular) chkAngularLog->setEnabled(false); @@ -114,7 +114,7 @@ void qTabAdvanced::SetupWidgetWindow(){ btnGroup->addButton(btnGetTrimbits,1); } } - + trimmingMode = slsDetectorDefs::NOISE_TRIMMING; //network @@ -302,12 +302,12 @@ void qTabAdvanced::SetThreshold(){ void qTabAdvanced::SetOutputFile(){ #ifdef VERBOSE - cout << "Setting Output File for Trimming" << endl; + cout << "Setting Output File for Trimming:" << endl; #endif QString dirPath = dispFile->text().section('/',0,-2,QString::SectionIncludeLeadingSep); - cout<<"directory:"<text().section('/',-1); - cout<<"file name:"<text(); //dialog @@ -441,6 +441,7 @@ int qTabAdvanced::validateBeforeTrimming(){ cout << "Validating conditions before Trimming" << endl; #endif char temp[100]; + string message = "All conditions satisfied for Trimming.
"; switch(detType){ case slsDetectorDefs::MYTHEN: @@ -451,45 +452,49 @@ int qTabAdvanced::validateBeforeTrimming(){ qDefs::Message(qDefs::WARNING, string("Trimming Pre-condition not satisfied:
" "Could not set dynamic range to ") + string(temp)+string(".
" - "Trimming Aborted."),"qTabAdvanced::validateBeforeTrimming"); + "Trimming Aborted."),"qTabAdvanced::validateBeforeTrimming"); return slsDetectorDefs::FAIL; - } + }else + message.append(string("Dynamic Range has been changed to ") + string(temp) + string(".
")); } //frames if((int)myDet->setTimer(slsDetectorDefs::FRAME_NUMBER,-1) != TRIMMING_FRAME_NUMBER){ + sprintf(temp,"%d",TRIMMING_FRAME_NUMBER); if((int)myDet->setTimer(slsDetectorDefs::FRAME_NUMBER,TRIMMING_FRAME_NUMBER) != TRIMMING_FRAME_NUMBER){ - sprintf(temp,"%d",TRIMMING_FRAME_NUMBER); qDefs::Message(qDefs::WARNING, string("
Trimming Pre-condition not satisfied:
" "Could not set Number of Frames to ") + string(temp)+string(".
" - "Trimming Aborted."),"qTabAdvanced::validateBeforeTrimming"); + "Trimming Aborted."),"qTabAdvanced::validateBeforeTrimming"); return slsDetectorDefs::FAIL; - } + }else + message.append(string("Number of Frames has been changed to ") + string(temp) + string(".
")); } //trigger if((int)myDet->setTimer(slsDetectorDefs::CYCLES_NUMBER,-1) != TRIMMING_TRIGGER_NUMBER){ + sprintf(temp,"%d",TRIMMING_TRIGGER_NUMBER); if((int)myDet->setTimer(slsDetectorDefs::CYCLES_NUMBER,TRIMMING_TRIGGER_NUMBER) != TRIMMING_TRIGGER_NUMBER){ - sprintf(temp,"%d",TRIMMING_TRIGGER_NUMBER); qDefs::Message(qDefs::WARNING, string("
Trimming Pre-condition not satisfied:
" "Could not set Number of Triggers to ") + string(temp)+string(".
" - "Trimming Aborted."),"qTabAdvanced::validateBeforeTrimming"); + "Trimming Aborted."),"qTabAdvanced::validateBeforeTrimming"); return slsDetectorDefs::FAIL; - } + }else + message.append(string("Number of Triggers has been changed to ") + string(temp) + string(".
")); } //probes if((int)myDet->setTimer(slsDetectorDefs::PROBES_NUMBER,-1) != TRIMMING_PROBE_NUMBER){ + sprintf(temp,"%d",TRIMMING_PROBE_NUMBER); if((int)myDet->setTimer(slsDetectorDefs::PROBES_NUMBER,TRIMMING_PROBE_NUMBER) != TRIMMING_PROBE_NUMBER){ - sprintf(temp,"%d",TRIMMING_PROBE_NUMBER); qDefs::Message(qDefs::WARNING, string("
Trimming Pre-condition not satisfied:
" "Could not set Number of Probes to ") + string(temp)+string(".
" - "Trimming Aborted."),"qTabAdvanced::validateBeforeTrimming"); + "Trimming Aborted."),"qTabAdvanced::validateBeforeTrimming"); return slsDetectorDefs::FAIL; - } + }else + message.append(string("Number of Probes has been changed to ") + string(temp) + string(".
")); } //Setting - if((int)myDet->getSettings() == slsDetectorDefs::UNINITIALIZED){ + if(myDet->getSettings() == slsDetectorDefs::UNINITIALIZED){ if(qDefs::Message(qDefs::QUESTION, string("
Trimming Pre-condition not satisfied:
")+ string("Settings cannot be Uninitialized to start Trimming.
" @@ -507,16 +512,20 @@ int qTabAdvanced::validateBeforeTrimming(){ "Could not change Settings to Standard
" "Trimming Aborted."),"qTabAdvanced::validateBeforeTrimming"); return slsDetectorDefs::FAIL; - } + }else + message.append(string("Settings has been changed to Standard.
")); } } - - qDefs::Message(qDefs::INFORMATION,"
All conditions satisfied for Trimming.
" - "Initiating Trimming...","qTabAdvanced::validateBeforeTrimming"); - return slsDetectorDefs::OK; + break; default: return slsDetectorDefs::FAIL; + } + + message.append("Initiating Trimming..."); + qDefs::Message(qDefs::INFORMATION,message,"qTabAdvanced::validateBeforeTrimming"); + return slsDetectorDefs::OK; + } @@ -565,7 +574,7 @@ void qTabAdvanced::StartTrimming(){ if(!optimize) parameter2 = 0; break; default: - cout << "Should never come here. Start Trimming will have only 2 methods." << endl; + cout << "Should never come here. Start Trimming will have only 2 methods. Trimming Method:" << trimmingMode << endl; break; } diff --git a/slsDetectorGui/src/qTabSettings.cpp b/slsDetectorGui/src/qTabSettings.cpp index 2989be257..4415aa333 100644 --- a/slsDetectorGui/src/qTabSettings.cpp +++ b/slsDetectorGui/src/qTabSettings.cpp @@ -93,15 +93,17 @@ void qTabSettings::SetupDetectorSettings(){ item[(int)LowGain]->setEnabled(false); item[(int)MediumGain]->setEnabled(false); item[(int)VeryHighGain]->setEnabled(false); + item[(int)LowNoise]->setEnabled(false); break; case slsDetectorDefs::EIGER: - item[(int)Standard]->setEnabled(false); + item[(int)Standard]->setEnabled(true); item[(int)Fast]->setEnabled(false); - item[(int)HighGain]->setEnabled(false); + item[(int)HighGain]->setEnabled(true); item[(int)DynamicGain]->setEnabled(false); item[(int)LowGain]->setEnabled(false); item[(int)MediumGain]->setEnabled(false); item[(int)VeryHighGain]->setEnabled(false); + item[(int)LowNoise]->setEnabled(true); break; case slsDetectorDefs::MOENCH: case slsDetectorDefs::GOTTHARD: @@ -112,6 +114,7 @@ void qTabSettings::SetupDetectorSettings(){ item[(int)LowGain]->setEnabled(true); item[(int)MediumGain]->setEnabled(true); item[(int)VeryHighGain]->setEnabled(true); + item[(int)LowNoise]->setEnabled(false); break; default: qDefs::Message(qDefs::CRITICAL,"Unknown detector type. Exiting GUI.","qTabSettings::SetupDetectorSettings");