propix integrated into gui

This commit is contained in:
Dhanya Maliakal 2015-07-22 10:06:38 +02:00
parent a5e18833de
commit db5412e599
9 changed files with 65 additions and 14 deletions

View File

@ -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:&nbsp;&nbsp;&nbsp;" + thisGUIVersion+"<br>"
"SLS Detector Client version: "+thisClientVersion+"<br><br>"
"Common GUI to control the SLS Detectors: "
"Mythen, Eiger, Gotthard and Agipd.<br><br>"
"Mythen, Eiger, Gotthard and Propix.<br><br>"
"It can be operated in parallel with the command line interface:<br>"
"sls_detector_put,<br>sls_detector_get,<br>sls_detector_acquire and<br>sls_detector_help.<br><br>"
"The GUI Software is still in progress. "

View File

@ -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;

View File

@ -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{

View File

@ -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)));

View File

@ -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;i<comboDetector->count();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;
}

View File

@ -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

View File

@ -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);

View File

@ -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);

View File

@ -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);