From db5412e599b6d34a1229cda982e4787546d14900 Mon Sep 17 00:00:00 2001 From: Dhanya Maliakal Date: Wed, 22 Jul 2015 10:06:38 +0200 Subject: [PATCH] propix integrated into gui --- slsDetectorGui/src/qDetectorMain.cpp | 9 +++++---- slsDetectorGui/src/qDrawPlot.cpp | 1 + slsDetectorGui/src/qTabActions.cpp | 5 ++++- slsDetectorGui/src/qTabAdvanced.cpp | 10 ++++++++-- slsDetectorGui/src/qTabDebugging.cpp | 27 +++++++++++++++++++++++++- slsDetectorGui/src/qTabDeveloper.cpp | 20 ++++++++++++++----- slsDetectorGui/src/qTabMeasurement.cpp | 1 + slsDetectorGui/src/qTabPlot.cpp | 5 ++++- slsDetectorGui/src/qTabSettings.cpp | 1 + 9 files changed, 65 insertions(+), 14 deletions(-) diff --git a/slsDetectorGui/src/qDetectorMain.cpp b/slsDetectorGui/src/qDetectorMain.cpp index 527b68540..b46fb6532 100644 --- a/slsDetectorGui/src/qDetectorMain.cpp +++ b/slsDetectorGui/src/qDetectorMain.cpp @@ -230,8 +230,9 @@ void qDetectorMain::SetUpDetector(const string fName){ switch(detType){ case slsDetectorDefs::MYTHEN: break; case slsDetectorDefs::EIGER: break; - case slsDetectorDefs::GOTTHARD: actionLoadTrimbits->setText("Load Settings"); actionSaveTrimbits->setText("Save Settings"); break; - case slsDetectorDefs::AGIPD: actionLoadTrimbits->setText("Load Settings"); actionSaveTrimbits->setText("Save Settings"); break; + case slsDetectorDefs::GOTTHARD: + case slsDetectorDefs::AGIPD: + case slsDetectorDefs::PROPIX: case slsDetectorDefs::MOENCH: actionLoadTrimbits->setText("Load Settings"); actionSaveTrimbits->setText("Save Settings"); break; default: string detName = myDet->slsDetectorBase::getDetectorType(detType); @@ -603,7 +604,7 @@ void qDetectorMain::ExecuteUtilities(QAction *action){ void qDetectorMain::ExecuteHelp(QAction *action){ if(action==actionAbout){ #ifdef VERBOSE - cout << "About: Common GUI for Mythen, Eiger, Gotthard and Agipd detectors" << endl; + cout << "About: Common GUI for Mythen, Eiger, Gotthard and Propix detectors" << endl; #endif char version[200]; int64_t retval= SVNREV; @@ -620,7 +621,7 @@ void qDetectorMain::ExecuteHelp(QAction *action){ "SLS Detector GUI version:   " + thisGUIVersion+"
" "SLS Detector Client version: "+thisClientVersion+"

" "Common GUI to control the SLS Detectors: " - "Mythen, Eiger, Gotthard and Agipd.

" + "Mythen, Eiger, Gotthard and Propix.

" "It can be operated in parallel with the command line interface:
" "sls_detector_put,
sls_detector_get,
sls_detector_acquire and
sls_detector_help.

" "The GUI Software is still in progress. " diff --git a/slsDetectorGui/src/qDrawPlot.cpp b/slsDetectorGui/src/qDrawPlot.cpp index 97aa90ed8..1638f4a08 100644 --- a/slsDetectorGui/src/qDrawPlot.cpp +++ b/slsDetectorGui/src/qDrawPlot.cpp @@ -67,6 +67,7 @@ void qDrawPlot::SetupWidgetWindow(){ case slsDetectorDefs::MYTHEN: originally2D = false; break; case slsDetectorDefs::EIGER: originally2D = true; break; case slsDetectorDefs::GOTTHARD: originally2D = false; break; + case slsDetectorDefs::PROPIX: originally2D = true; break; case slsDetectorDefs::MOENCH: originally2D = true; break; default: cout << "ERROR: Detector Type is Generic" << endl; diff --git a/slsDetectorGui/src/qTabActions.cpp b/slsDetectorGui/src/qTabActions.cpp index f6044683a..ad450dbed 100644 --- a/slsDetectorGui/src/qTabActions.cpp +++ b/slsDetectorGui/src/qTabActions.cpp @@ -181,7 +181,10 @@ void qTabActions::SetupWidgetWindow(){ //Number of positions is only for mythen or gotthard detType = myDet->getDetectorsType(); - if((detType == slsDetectorDefs::EIGER) || (detType == slsDetectorDefs::AGIPD) || (detType == slsDetectorDefs::MOENCH)) { + if((detType == slsDetectorDefs::EIGER) || + (detType == slsDetectorDefs::AGIPD) || + (detType == slsDetectorDefs::PROPIX) || + (detType == slsDetectorDefs::MOENCH)) { lblName[NumPositions]->setEnabled(false); btnExpand[NumPositions]->setEnabled(false); }else{ diff --git a/slsDetectorGui/src/qTabAdvanced.cpp b/slsDetectorGui/src/qTabAdvanced.cpp index 4a60b237a..b1dfed070 100644 --- a/slsDetectorGui/src/qTabAdvanced.cpp +++ b/slsDetectorGui/src/qTabAdvanced.cpp @@ -238,7 +238,10 @@ void qTabAdvanced::Initialization(){ connect(spinStopPort, SIGNAL(valueChanged(int)), this, SLOT(SetStopPort(int))); connect(comboOnline, SIGNAL(currentIndexChanged(int)), this, SLOT(SetOnline(int))); - if((detType==slsDetectorDefs::GOTTHARD) || (detType==slsDetectorDefs::MOENCH) || (detType==slsDetectorDefs::EIGER)){ + if((detType==slsDetectorDefs::GOTTHARD) || + (detType==slsDetectorDefs::MOENCH) || + (detType==slsDetectorDefs::PROPIX) || + (detType==slsDetectorDefs::EIGER)){ //network connect(spinTCPPort, SIGNAL(valueChanged(int)), this, SLOT(SetRxrTCPPort(int))); @@ -1185,7 +1188,10 @@ void qTabAdvanced::Refresh(){ #ifdef VERBOSE cout << "Getting Receiver Network Information" << endl; #endif - if ((detType==slsDetectorDefs::GOTTHARD) || (detType==slsDetectorDefs::MOENCH)|| (detType==slsDetectorDefs::EIGER)){ + if ((detType==slsDetectorDefs::GOTTHARD) || + (detType==slsDetectorDefs::MOENCH)|| + (detType==slsDetectorDefs::PROPIX)|| + (detType==slsDetectorDefs::EIGER)){ //disconnect disconnect(spinTCPPort, SIGNAL(valueChanged(int)), this, SLOT(SetRxrTCPPort(int))); disconnect(spinUDPPort, SIGNAL(valueChanged(int)), this, SLOT(SetRxrUDPPort(int))); diff --git a/slsDetectorGui/src/qTabDebugging.cpp b/slsDetectorGui/src/qTabDebugging.cpp index 6b3beee2d..80c0125e0 100644 --- a/slsDetectorGui/src/qTabDebugging.cpp +++ b/slsDetectorGui/src/qTabDebugging.cpp @@ -73,6 +73,7 @@ void qTabDebugging::SetupWidgetWindow(){ chkChip->setEnabled(false); chkModuleFirmware->setEnabled(false); break; + case slsDetectorDefs::PROPIX: case slsDetectorDefs::GOTTHARD: lblDetector->setText("Module:"); chkDetectorFirmware->setText("Module Firmware:"); @@ -295,6 +296,29 @@ void qTabDebugging::GetInfo(){ + case slsDetectorDefs::PROPIX: + + //display widget + formLayout->addWidget(new QLabel("Module:"),0,0); + formLayout->addItem(new QSpacerItem(15,20,QSizePolicy::Fixed,QSizePolicy::Fixed),0,1); + formLayout->addWidget(lblDetectorId,0,2); + formLayout->addWidget(new QLabel("Module MAC Address:"),1,0); + formLayout->addWidget(lblDetectorSerial,1,2); + formLayout->addWidget(new QLabel("Module Firmware Version:"),2,0); + formLayout->addWidget(lblDetectorFirmware,2,2); + formLayout->addWidget(new QLabel("Module Software Version:"),3,0); + formLayout->addWidget(lblDetectorSoftware,3,2); + //tree widget + treeDet->setHeaderLabel("Propix Detector"); + //gets det names + for (int i=0;icount();i++) + items.append(new QTreeWidgetItem((QTreeWidget*)0, QStringList(QString("Module (%1)").arg(comboDetector->itemText(i))))); + treeDet->insertTopLevelItems(0, items); + + break; + + + case slsDetectorDefs::GOTTHARD: //display widget @@ -425,7 +449,7 @@ void qTabDebugging::SetParameters(QTreeWidgetItem *item){ - + case slsDetectorDefs::PROPIX: case slsDetectorDefs::MOENCH: case slsDetectorDefs::GOTTHARD: //find index @@ -474,6 +498,7 @@ void qTabDebugging::TestDetector(){ break; case slsDetectorDefs::EIGER: Detector = "Half Module"; break; case slsDetectorDefs::MOENCH: + case slsDetectorDefs::PROPIX: case slsDetectorDefs::GOTTHARD: Detector = "Module"; break; default: break; } diff --git a/slsDetectorGui/src/qTabDeveloper.cpp b/slsDetectorGui/src/qTabDeveloper.cpp index 01844bb6d..5c17c04ed 100644 --- a/slsDetectorGui/src/qTabDeveloper.cpp +++ b/slsDetectorGui/src/qTabDeveloper.cpp @@ -104,6 +104,7 @@ void qTabDeveloper::SetupWidgetWindow(){ break; + case slsDetectorDefs::PROPIX: case slsDetectorDefs::GOTTHARD: NUM_DAC_WIDGETS = 8; NUM_ADC_WIDGETS = 2; @@ -174,7 +175,9 @@ void qTabDeveloper::SetupWidgetWindow(){ CreateDACWidgets(); //HV for gotthard - if ((detType==slsDetectorDefs::GOTTHARD) || (detType==slsDetectorDefs::MOENCH)){ + if ((detType==slsDetectorDefs::GOTTHARD) || + (detType==slsDetectorDefs::PROPIX) || + (detType==slsDetectorDefs::MOENCH)){ boxDacs->setFixedHeight(boxDacs->height()+35); lblHV = new QLabel("High Voltage",boxDacs); @@ -198,7 +201,9 @@ void qTabDeveloper::SetupWidgetWindow(){ //adcs - if((detType==slsDetectorDefs::GOTTHARD) || (detType==slsDetectorDefs::MOENCH)){ + if((detType==slsDetectorDefs::GOTTHARD) || + (detType==slsDetectorDefs::PROPIX) || + (detType==slsDetectorDefs::MOENCH)){ setFixedHeight(20+(50+(NUM_DAC_WIDGETS/2)*35)+(50+(NUM_ADC_WIDGETS/2)*35)); boxAdcs = new QGroupBox("ADCs",this); boxAdcs->setFixedHeight(25+(NUM_ADC_WIDGETS/2)*35); @@ -265,7 +270,10 @@ void qTabDeveloper::CreateADCWidgets(){ lblAdcs[i] = new QLabel(QString(adcNames[i].c_str()),boxAdcs); spinAdcs[i] = new QDoubleSpinBox(boxAdcs); spinAdcs[i]->setMaximum(10000); - if((detType==slsDetectorDefs::GOTTHARD) || (detType==slsDetectorDefs::MOENCH)) spinAdcs[i]->setSuffix(0x00b0+QString("C")); + if((detType==slsDetectorDefs::GOTTHARD) || + (detType==slsDetectorDefs::PROPIX) || + (detType==slsDetectorDefs::MOENCH)) + spinAdcs[i]->setSuffix(0x00b0+QString("C")); adcLayout->addWidget(lblAdcs[i],(int)(i/2),((i%2)==0)?1:4); adcLayout->addWidget(spinAdcs[i],(int)(i/2),((i%2)==0)?2:5); @@ -416,7 +424,7 @@ slsDetectorDefs::dacIndex qTabDeveloper::getSLSIndex(int index){ break; } break; - + case slsDetectorDefs::PROPIX: case slsDetectorDefs::GOTTHARD: switch(index){ case 0: return slsDetectorDefs::G_VREF_DS; @@ -510,7 +518,9 @@ void qTabDeveloper::Refresh(){ if(NUM_ADC_WIDGETS) RefreshAdcs(); //gotthard -high voltage - if((detType == slsDetectorDefs::GOTTHARD) || (detType == slsDetectorDefs::MOENCH)){ + if((detType == slsDetectorDefs::GOTTHARD) || + (detType == slsDetectorDefs::PROPIX) || + (detType == slsDetectorDefs::MOENCH)){ disconnect(comboHV, SIGNAL(currentIndexChanged(int)), this, SLOT(SetHighVoltage())); //default should be correct diff --git a/slsDetectorGui/src/qTabMeasurement.cpp b/slsDetectorGui/src/qTabMeasurement.cpp index eb0eb3095..5d417b3ba 100644 --- a/slsDetectorGui/src/qTabMeasurement.cpp +++ b/slsDetectorGui/src/qTabMeasurement.cpp @@ -145,6 +145,7 @@ void qTabMeasurement::SetupTimingMode(){ item[(int)Gated_Start]->setEnabled(false); break; case slsDetectorDefs::MOENCH: + case slsDetectorDefs::PROPIX: case slsDetectorDefs::GOTTHARD: item[(int)Trigger_Exp_Series]->setEnabled(true); item[(int)Trigger_Readout]->setEnabled(false); diff --git a/slsDetectorGui/src/qTabPlot.cpp b/slsDetectorGui/src/qTabPlot.cpp index 50c5b4bc7..336358f48 100644 --- a/slsDetectorGui/src/qTabPlot.cpp +++ b/slsDetectorGui/src/qTabPlot.cpp @@ -175,6 +175,7 @@ void qTabPlot::SetupWidgetWindow(){ case slsDetectorDefs::GOTTHARD: isOriginallyOneD = true; break; + case slsDetectorDefs::PROPIX: case slsDetectorDefs::MOENCH: isOriginallyOneD = false; break; @@ -761,7 +762,9 @@ void qTabPlot::EnableScanBox(){ chkSuperimpose->setEnabled(true); pageAccumulate->setEnabled(true); pageAccumulate_2->setEnabled(true); - if((myDet->getDetectorsType() == slsDetectorDefs::GOTTHARD) || (myDet->getDetectorsType() == slsDetectorDefs::MOENCH)){ + if((myDet->getDetectorsType() == slsDetectorDefs::GOTTHARD) || + (myDet->getDetectorsType() == slsDetectorDefs::PROPIX) || + (myDet->getDetectorsType() == slsDetectorDefs::MOENCH)){ pagePedestal->setEnabled(true); pagePedestal_2->setEnabled(true); chkBinary->setEnabled(true); diff --git a/slsDetectorGui/src/qTabSettings.cpp b/slsDetectorGui/src/qTabSettings.cpp index 91d76cdb7..413c4c123 100644 --- a/slsDetectorGui/src/qTabSettings.cpp +++ b/slsDetectorGui/src/qTabSettings.cpp @@ -133,6 +133,7 @@ void qTabSettings::SetupDetectorSettings(){ item[(int)LowNoise]->setEnabled(true); break; case slsDetectorDefs::MOENCH: + case slsDetectorDefs::PROPIX: case slsDetectorDefs::GOTTHARD: item[(int)Standard]->setEnabled(false); item[(int)Fast]->setEnabled(false);