From 6b311f931b68fa63ae4e35b177b9ef3eeff0aa19 Mon Sep 17 00:00:00 2001 From: l_maliakal_d Date: Thu, 31 Jan 2013 15:34:31 +0000 Subject: [PATCH] included shortframe in gui for time being its just adc selection git-svn-id: file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorGui@141 af1100a4-978c-4157-bff7-07162d2ba061 --- slsDetectorGui/forms/form_tab_advanced.ui | 1411 +++++++++++---------- slsDetectorGui/include/qTabAdvanced.h | 9 + slsDetectorGui/src/qTabAdvanced.cpp | 30 +- 3 files changed, 789 insertions(+), 661 deletions(-) diff --git a/slsDetectorGui/forms/form_tab_advanced.ui b/slsDetectorGui/forms/form_tab_advanced.ui index 26b6b7045..402ebe43a 100644 --- a/slsDetectorGui/forms/form_tab_advanced.ui +++ b/slsDetectorGui/forms/form_tab_advanced.ui @@ -7,7 +7,7 @@ 0 0 775 - 345 + 351 @@ -35,680 +35,773 @@ :/icons/images/refresh.png:/icons/images/refresh.png - - - true - + - 25 - 100 - 726 - 226 + 5 + 5 + 761 + 341 - - Trimming + + 2 - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - false - - - true - - - true - - - - - 15 - 25 - 696 - 195 - - - - - 12 + + + Trimming + + + + + 5 + 10 + 746 + 66 + - - - - - 0 - 0 - - - - Trimming Method: - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 20 - 20 - - - - - - - - - 0 - 0 - - - - Exposure Time: - - - - - - - true - - - - 0 - 0 - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - Exposure time of each frame. - #exptime# - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - false - - - 5 - - - 0.000000000000000 - - - 2000000000.000000000000000 - - - 1.000000000000000 - - - - - - - true - - - - 0 - 0 - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - Qt::LeftToRight - - - 2 - - - - hr - - - - - min - - - - - s - - - - - ms - - - - - us - - - - - ns - - - - - - - - Qt::Horizontal - - - QSizePolicy::Fixed - - - - 20 - 20 - - - - - - - - Qt::Horizontal - - - QSizePolicy::Expanding - - - - 50 - 20 - - - - - - - - - 0 - 0 - - - - <nobr> -Trimfile to which the resulting trimbits will be written. -</nobr><br><nobr> -An extension given by the modules serial number will be attached. -</nobr> - - - Output Trim File: - - - - - - - <nobr> -Trimfile to which the resulting trimbits will be written. -</nobr><br><nobr> -An extension given by the modules serial number will be attached. -</nobr> - - - - - - - - 0 - 0 - - - - <nobr> -Trimfile to which the resulting trimbits will be written. -</nobr><br><nobr> -An extension given by the modules serial number will be attached. -</nobr> - - - Browse - - - - :/icons/images/browse.png:/icons/images/browse.png - - - - - + + Trimbits Plot + + + true + + + false + + + + + 510 + 15 + 211 + 44 + + + - 0 - - - - - - - - 0 - 0 - - - - Start Trimming - - - - :/icons/images/start.png:/icons/images/start.png - - - - - - - true - - - - 0 - 0 - - - - - 0 - 0 - - - - - 16777215 - 16777215 - - - - Exposure time of each frame. - #exptime# - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - false - - - 3 - - - 0.000000000000000 - - - 10000.000000000000000 - - - 560.000000000000000 - - - - - - - - 0 - 0 - - - - Sets the Threshold DAC - - - Threshold (DACu): - - - - - - - true - - - - 0 - 0 - - - - - 0 - 0 - - - - Optimize Settings - - - - - - - - 0 - 0 - - - - Resolution (a.u.): - - - - - - - - 0 - 0 - - - - Number of measurements (not in real time) that will be acquired. - #frames# - - - - - - - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - false - - - - - - 1 - - - 9 - - - 4 - - - - - - - - 0 - 0 - - - - - 0 - 0 - + 17 - - Adjust to Fix Count Level - - - - - Equalize to Median - - - - - - - - - 0 - 0 - - - - Counts/ Channel: - - - - - - - - 0 - 0 - - - - Number of measurements (not in real time) that will be acquired. - #frames# - - - - - - - - - Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter - - - false - - - - - - 0 - - - 16000000 - - - 500 - - - - - - - - - - 25 - 10 - 341 - 76 - - - - Trimbits Plot - - - true - - - false - - - - - 120 - 22 - 211 - 44 - - - - - 17 - - - - - <nobr> + + + <nobr> Updates plot with Trimbits from Shared Memory, not from Detector. </nobr> - - - false - - - Refresh - - - - :/icons/images/refresh.png:/icons/images/refresh.png - - - - 16 - 16 - - - - - - - - <nobr> + + + false + + + Refresh + + + + :/icons/images/refresh.png:/icons/images/refresh.png + + + + 16 + 16 + + + + + + + + <nobr> Plots Trimbits from Detector. This will take time. </nobr> - - - Get Trimbits - - - - :/icons/images/download.png:/icons/images/download.png - - - - - - - - - 15 - 20 - 101 - 46 - - - - - - - Histogram - - - - - - - Data Graph - - - true - - - - - - - - - - 405 - 10 - 346 - 76 - - - - Calibration Logs - - - - - - 420 - 37 - 313 - 31 - - - - - 42 - - - - - - 0 - 0 - - - - Energy Calibration - + + + Get Trimbits + + + + :/icons/images/download.png:/icons/images/download.png + + + + - - - - - - 0 - 0 - - - - Angular Calibration + + + + 25 + 20 + 187 + 31 + + + + + + Data Graph + + + true + + + + + + + Histogram + + + + - - + + + + true + + + + 5 + 85 + 746 + 226 + + + + Trimming + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + false + + + true + + + true + + + + + 25 + 25 + 696 + 195 + + + + + 12 + + + + + + 0 + 0 + + + + Trimming Method: + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 20 + 20 + + + + + + + + + 0 + 0 + + + + Exposure Time: + + + + + + + true + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Exposure time of each frame. + #exptime# + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + false + + + 5 + + + 0.000000000000000 + + + 2000000000.000000000000000 + + + 1.000000000000000 + + + + + + + true + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Qt::LeftToRight + + + 2 + + + + hr + + + + + min + + + + + s + + + + + ms + + + + + us + + + + + ns + + + + + + + + Qt::Horizontal + + + QSizePolicy::Fixed + + + + 20 + 20 + + + + + + + + Qt::Horizontal + + + QSizePolicy::Expanding + + + + 50 + 20 + + + + + + + + + 0 + 0 + + + + <nobr> +Trimfile to which the resulting trimbits will be written. +</nobr><br><nobr> +An extension given by the modules serial number will be attached. +</nobr> + + + Output Trim File: + + + + + + + <nobr> +Trimfile to which the resulting trimbits will be written. +</nobr><br><nobr> +An extension given by the modules serial number will be attached. +</nobr> + + + + + + + + 0 + 0 + + + + <nobr> +Trimfile to which the resulting trimbits will be written. +</nobr><br><nobr> +An extension given by the modules serial number will be attached. +</nobr> + + + Browse + + + + :/icons/images/browse.png:/icons/images/browse.png + + + + + + + 0 + + + + + + + + 0 + 0 + + + + Start Trimming + + + + :/icons/images/start.png:/icons/images/start.png + + + + + + + true + + + + 0 + 0 + + + + + 0 + 0 + + + + + 16777215 + 16777215 + + + + Exposure time of each frame. + #exptime# + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + false + + + 3 + + + 0.000000000000000 + + + 10000.000000000000000 + + + 560.000000000000000 + + + + + + + + 0 + 0 + + + + Sets the Threshold DAC + + + Threshold (DACu): + + + + + + + true + + + + 0 + 0 + + + + + 0 + 0 + + + + Optimize Settings + + + + + + + + 0 + 0 + + + + Resolution (a.u.): + + + + + + + + 0 + 0 + + + + Number of measurements (not in real time) that will be acquired. + #frames# + + + + + + + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + false + + + + + + 1 + + + 9 + + + 4 + + + + + + + + 0 + 0 + + + + + 0 + 0 + + + + + Adjust to Fix Count Level + + + + + Equalize to Median + + + + + + + + + 0 + 0 + + + + Counts/ Channel: + + + + + + + + 0 + 0 + + + + Number of measurements (not in real time) that will be acquired. + #frames# + + + + + + + + + Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter + + + false + + + + + + 0 + + + 16000000 + + + 500 + + + + + + + + + + Logs + + + + + 5 + 10 + 746 + 66 + + + + Calibration Logs + + + + + 25 + 20 + 313 + 31 + + + + + 42 + + + + + + 0 + 0 + + + + Energy Calibration + + + + + + + + 0 + 0 + + + + Angular Calibration + + + + + + + + + + Readout + + + + + 10 + 10 + 136 + 31 + + + + + 42 + + + + + ADC: + + + + + + + + 0 + 0 + + + + 5 + + + + 0 + + + + + 1 + + + + + 2 + + + + + 3 + + + + + 4 + + + + + All + + + + + + + diff --git a/slsDetectorGui/include/qTabAdvanced.h b/slsDetectorGui/include/qTabAdvanced.h index 2d9705640..ec4dc68b2 100644 --- a/slsDetectorGui/include/qTabAdvanced.h +++ b/slsDetectorGui/include/qTabAdvanced.h @@ -56,6 +56,11 @@ private: private slots: + + /** Set ADC Readout + */ + void SetADCReadout(int i); + /** Enable/Disable Energy and Calibration Logs */ void SetLogs(); @@ -102,6 +107,10 @@ private slots: private: /** The sls detector object */ multiSlsDetector *myDet; + + /** detector type */ + slsDetectorDefs::detectorType detType; + /** The Plot widget */ qDrawPlot *myPlot; diff --git a/slsDetectorGui/src/qTabAdvanced.cpp b/slsDetectorGui/src/qTabAdvanced.cpp index 7f6e9f5a2..dd587d343 100644 --- a/slsDetectorGui/src/qTabAdvanced.cpp +++ b/slsDetectorGui/src/qTabAdvanced.cpp @@ -40,11 +40,22 @@ qTabAdvanced::~qTabAdvanced(){ void qTabAdvanced::SetupWidgetWindow(){ //executed even for non digital, so make sure its necessary - slsDetectorDefs::detectorType detType = myDet->getDetectorsType(); + + //readout adc + lblADC->setEnabled(false); + comboADC->setEnabled(false); + + detType = myDet->getDetectorsType(); switch(detType){ case slsDetectorDefs::MYTHEN: isEnergy = true; isAngular = true; break; case slsDetectorDefs::EIGER: isEnergy = true; isAngular = false; break; - case slsDetectorDefs::GOTTHARD: isEnergy = false; isAngular = true; break; + + case slsDetectorDefs::GOTTHARD: + isEnergy = false; + isAngular = true; + lblADC->setEnabled(true); + comboADC->setEnabled(true); + break; default: break; } @@ -118,6 +129,21 @@ void qTabAdvanced::Initialization(){ connect(btnGroup, SIGNAL(buttonClicked(int)), this, SLOT(UpdateTrimbitPlot(int))); } + if(detType==slsDetectorDefs::GOTTHARD) + connect(comboADC, SIGNAL(currentIndexChanged(int)), this, SLOT(SetADCReadout(int))); + +} + +//------------------------------------------------------------------------------------------------------------------------------------------------- + + +void qTabAdvanced::SetADCReadout(int i){ + + if(i==6) i=-1; + if(myDet->configureMAC(i)==slsDetectorDefs::FAIL) + qDefs::Message(qDefs::WARNING,"Could not configure mac","Advanced"); + else + qDefs::Message(qDefs::WARNING,"ADC Readout successfully set up","Advanced"); }