added timeout facility for musrfit, musrview, musrt0. Adopted musredit/musrgui accordingly.

This commit is contained in:
2012-04-15 08:39:30 +00:00
parent 3a0715b3ed
commit 7368884482
16 changed files with 333 additions and 134 deletions

View File

@@ -69,7 +69,9 @@ bool PAdminXMLParser::startElement( const QString&, const QString&,
const QString& qName,
const QXmlAttributes& )
{
if (qName == "font_name") {
if (qName == "timeout") {
fKeyWord = eTimeout;
} else if (qName == "font_name") {
fKeyWord = eFontName;
} else if (qName == "font_size") {
fKeyWord = eFontSize;
@@ -171,6 +173,11 @@ bool PAdminXMLParser::characters(const QString& str)
int ival;
switch (fKeyWord) {
case eTimeout:
ival = QString(str.ascii()).stripWhiteSpace().toInt(&ok);
if (ok)
fAdmin->setTimeout(ival);
break;
case eFontName:
fAdmin->setFontName(QString(str.ascii()).stripWhiteSpace());
break;

View File

@@ -59,7 +59,7 @@ class PAdminXMLParser : public QXmlDefaultHandler
virtual ~PAdminXMLParser() {}
private:
enum EAdminKeyWords {eEmpty, eFontName, eFontSize, eExecPath, eDefaultSavePath, eTitleFromDataFile, eEnableMusrT0,
enum EAdminKeyWords {eEmpty, eTimeout, eFontName, eFontSize, eExecPath, eDefaultSavePath, eTitleFromDataFile, eEnableMusrT0,
eBeamline, eInstitute, eFileFormat, eLifetimeCorrection, eMsrDefaultFilePath,
eHelpMain, eTheoFuncPixmapPath, eFunc, eFuncName, eFuncComment, eFuncLabel,
eFuncPixmap, eFuncParams,
@@ -93,6 +93,8 @@ class PAdmin
PAdmin();
virtual ~PAdmin() {}
int getTimeout() { return fTimeout; }
QString getFontName() { return fFontName; }
int getFontSize() { return fFontSize; }
QString getExecPath() { return fExecPath; }
@@ -114,6 +116,7 @@ class PAdmin
void setFontSize(const int ival) { fFontSize = ival; }
protected:
void setTimeout(const int ival) { fTimeout = ival; }
void setExecPath(const QString str) { fExecPath = str; }
void setDefaultSavePath(const QString str) { fDefaultSavePath = str; }
void setTitleFromDataFileFlag(const bool flag) { fTitleFromDataFile = flag; }
@@ -130,6 +133,8 @@ class PAdmin
private:
friend class PAdminXMLParser;
int fTimeout; ///< timeout in seconds
QString fFontName;
int fFontSize;

View File

@@ -1390,6 +1390,12 @@ void PTextEdit::musrFit()
break;
}
// add timeout
cmd.append("--timeout");
QString numStr;
numStr.setNum(fAdmin->getTimeout());
cmd.append(numStr);
PFitOutputHandler fitOutputHandler(QFileInfo(*fFilenames.find( currentEditor() )).dirPath(), cmd);
fitOutputHandler.setModal(true);
fitOutputHandler.exec();
@@ -1775,7 +1781,9 @@ void PTextEdit::musrView()
cmd = str + " \"";
str = *fFilenames.find( currentEditor() );
cmd += str + "\" &";
QString numStr;
numStr.setNum(fAdmin->getTimeout());
cmd += str + "\" --timeout " + numStr + "&";
system(cmd.latin1());
}
@@ -1806,7 +1814,9 @@ void PTextEdit::musrT0()
cmd = str + " \"";
str = *fFilenames.find( currentEditor() );
cmd += str + "\" &";
QString numStr;
numStr.setNum(fAdmin->getTimeout());
cmd += str + "\" --timeout " + numStr + " &";
system(cmd.latin1());

View File

@@ -15,6 +15,7 @@
<font_name>Courier</font_name>
<font_size>12</font_size>
</font_settings>
<timeout>3600</timeout>
<msr_file_defaults>
<beamline>mue4</beamline>
<institute>psi</institute>