mirror of
https://github.com/slsdetectorgroup/slsDetectorPackage.git
synced 2025-06-06 18:10:40 +02:00
added error mask properly inherited by base; mask exist only for cannot connect to detector, receiver and could not configure mac
git-svn-id: file:///afs/psi.ch/project/sls_det_software/svn/slsDetectorGui@143 af1100a4-978c-4157-bff7-07162d2ba061
This commit is contained in:
parent
1d1e5e1202
commit
aec136cf21
@ -9,7 +9,6 @@
|
|||||||
#define QDEFS_H
|
#define QDEFS_H
|
||||||
|
|
||||||
#include "sls_detector_defs.h"
|
#include "sls_detector_defs.h"
|
||||||
#include "error_defs.h"
|
|
||||||
#include "slsDetector.h"
|
#include "slsDetector.h"
|
||||||
#include "multiSlsDetector.h"
|
#include "multiSlsDetector.h"
|
||||||
#include <string>
|
#include <string>
|
||||||
@ -179,55 +178,36 @@ static const int64_t GUI_VERSION=0x20121213;
|
|||||||
|
|
||||||
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
/**checks error mask and displays the message if it exists
|
/**gets error mask and displays the message if it exists
|
||||||
* @param myDet is the multidetector object
|
* @param myDet is the multidetector object
|
||||||
/returns error message else an empty string
|
/returns error message else an empty string
|
||||||
* */
|
* */
|
||||||
static string checkErrorMessage(multiSlsDetector*& myDet){
|
static string checkErrorMessage(multiSlsDetector*& myDet){
|
||||||
|
|
||||||
int multiMask,slsMask=0;
|
|
||||||
MessageIndex errorLevel= WARNING;
|
int errorLevel= (int)WARNING;
|
||||||
slsDetector *det;
|
|
||||||
string retval="";
|
string retval="";
|
||||||
char sNumber[100];
|
|
||||||
size_t pos;
|
size_t pos;
|
||||||
|
|
||||||
//multidetector error mask
|
|
||||||
multiMask = myDet->getErrorMask();
|
retval = myDet->getErrorMessage(errorLevel);
|
||||||
if(multiMask){
|
|
||||||
retval.append("<nobr>");
|
if(!retval.empty()){
|
||||||
//check every sls detector
|
|
||||||
for(int i=0;i<myDet->getNumberOfDetectors();i++){
|
//replace all \n with <br>
|
||||||
slsMask=0;
|
pos = 0;
|
||||||
//if the detector has error
|
while((pos = retval.find("\n", pos)) != string::npos){
|
||||||
if(multiMask&(1<<i)){
|
retval.replace(pos, 1, "<br>");
|
||||||
//append detector id
|
pos += 1;
|
||||||
sprintf(sNumber,"%d",i);
|
|
||||||
retval.append("Detector " + string(sNumber)+string(":<br>"));
|
|
||||||
//get sls det error mask
|
|
||||||
det = myDet->getSlsDetector(i);
|
|
||||||
slsMask=det->getErrorMask();
|
|
||||||
#ifdef VERYVERBOSE
|
|
||||||
//append sls det error mask
|
|
||||||
sprintf(sNumber,"0x%x",slsMask);
|
|
||||||
retval.append("Error Mask " + string(sNumber)+string("\n"));
|
|
||||||
#endif
|
|
||||||
//get the error critical level
|
|
||||||
if((slsMask>0xFFFF)|errorLevel)
|
|
||||||
errorLevel = CRITICAL;
|
|
||||||
//append error message
|
|
||||||
retval.append(string("<font color=\"darkBlue\">") + errorDefs::getErrorMessage(slsMask)+string("</font>"));
|
|
||||||
//replace all \n with <br>
|
|
||||||
pos = 0;
|
|
||||||
while((pos = retval.find("\n", pos)) != string::npos){
|
|
||||||
retval.replace(pos, 1, "<br>");
|
|
||||||
pos += 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
retval.append("</nobr>");
|
|
||||||
qDefs::Message(errorLevel,retval,"Main");
|
retval.insert(0,"<font color=\"darkBlue\">");
|
||||||
|
retval.append("</font></nobr>");
|
||||||
|
|
||||||
|
//display message
|
||||||
|
qDefs::Message((MessageIndex)errorLevel,retval,"Main");
|
||||||
}
|
}
|
||||||
|
|
||||||
return retval;
|
return retval;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -19,7 +19,6 @@
|
|||||||
#include "multiSlsDetector.h"
|
#include "multiSlsDetector.h"
|
||||||
#include "sls_detector_defs.h"
|
#include "sls_detector_defs.h"
|
||||||
#include "svnInfoGui.h"
|
#include "svnInfoGui.h"
|
||||||
#include "error_defs.h"
|
|
||||||
// Qt Include Headers
|
// Qt Include Headers
|
||||||
#include <QSizePolicy>
|
#include <QSizePolicy>
|
||||||
#include <QFileDialog>
|
#include <QFileDialog>
|
||||||
@ -234,9 +233,9 @@ void qDetectorMain::SetUpDetector(const string fName){
|
|||||||
}
|
}
|
||||||
setWindowTitle("SLS Detector GUI : "+
|
setWindowTitle("SLS Detector GUI : "+
|
||||||
QString(slsDetectorBase::getDetectorType(detType).c_str())+ " - "+QString(host.c_str()));
|
QString(slsDetectorBase::getDetectorType(detType).c_str())+ " - "+QString(host.c_str()));
|
||||||
#ifdef VERBOSE
|
//#ifdef VERBOSE
|
||||||
cout << endl << "Type : " << slsDetectorBase::getDetectorType(detType) << "\nDetector : " << host << endl;
|
cout << endl << "Type : " << slsDetectorBase::getDetectorType(detType) << "\nDetector : " << host << endl;
|
||||||
#endif
|
//#endif
|
||||||
myDet->setOnline(slsDetectorDefs::ONLINE_FLAG);
|
myDet->setOnline(slsDetectorDefs::ONLINE_FLAG);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user