open after fitting feature implemented
This commit is contained in:
@ -87,6 +87,7 @@ PMsr2DataDialog::PMsr2DataDialog(PMsr2DataParam *msr2DataParam) : fMsr2DataParam
|
|||||||
fWriteColumnData_checkBox->setChecked(fMsr2DataParam->writeColumnData);
|
fWriteColumnData_checkBox->setChecked(fMsr2DataParam->writeColumnData);
|
||||||
fRecreateDbFile_checkBox->setChecked(fMsr2DataParam->recreateDbFile);
|
fRecreateDbFile_checkBox->setChecked(fMsr2DataParam->recreateDbFile);
|
||||||
fChainFit_checkBox->setChecked(fMsr2DataParam->chainFit);
|
fChainFit_checkBox->setChecked(fMsr2DataParam->chainFit);
|
||||||
|
fOpenAfterFitting_checkBox->setChecked(fMsr2DataParam->openFilesAfterFitting);
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------------------------------
|
//----------------------------------------------------------------------------------------------------
|
||||||
@ -120,6 +121,7 @@ PMsr2DataParam* PMsr2DataDialog::getMsr2DataParam()
|
|||||||
fMsr2DataParam->writeColumnData = fWriteColumnData_checkBox->isChecked();
|
fMsr2DataParam->writeColumnData = fWriteColumnData_checkBox->isChecked();
|
||||||
fMsr2DataParam->recreateDbFile = fRecreateDbFile_checkBox->isChecked();
|
fMsr2DataParam->recreateDbFile = fRecreateDbFile_checkBox->isChecked();
|
||||||
fMsr2DataParam->chainFit = fChainFit_checkBox->isChecked();
|
fMsr2DataParam->chainFit = fChainFit_checkBox->isChecked();
|
||||||
|
fMsr2DataParam->openFilesAfterFitting = fOpenAfterFitting_checkBox->isChecked();
|
||||||
|
|
||||||
return fMsr2DataParam;
|
return fMsr2DataParam;
|
||||||
}
|
}
|
||||||
|
@ -1373,6 +1373,7 @@ void PTextEdit::musrMsr2Data()
|
|||||||
fMsr2DataParam->writeColumnData = false;
|
fMsr2DataParam->writeColumnData = false;
|
||||||
fMsr2DataParam->recreateDbFile = false;
|
fMsr2DataParam->recreateDbFile = false;
|
||||||
fMsr2DataParam->chainFit = true;
|
fMsr2DataParam->chainFit = true;
|
||||||
|
fMsr2DataParam->openFilesAfterFitting = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
PMsr2DataDialog *dlg = new PMsr2DataDialog(fMsr2DataParam);
|
PMsr2DataDialog *dlg = new PMsr2DataDialog(fMsr2DataParam);
|
||||||
@ -1535,6 +1536,74 @@ cout << endl;
|
|||||||
PFitOutputHandler fitOutputHandler(QFileInfo(fFilenames[currentEditor()]).dirPath(), cmd);
|
PFitOutputHandler fitOutputHandler(QFileInfo(fFilenames[currentEditor()]).dirPath(), cmd);
|
||||||
fitOutputHandler.setModal(true);
|
fitOutputHandler.setModal(true);
|
||||||
fitOutputHandler.exec();
|
fitOutputHandler.exec();
|
||||||
|
|
||||||
|
// check if it is necessary to load msr-files
|
||||||
|
if (fMsr2DataParam->openFilesAfterFitting) {
|
||||||
|
QString fln;
|
||||||
|
QFile *file;
|
||||||
|
QTextStream *stream;
|
||||||
|
|
||||||
|
switch(dlg->getRunTag()) {
|
||||||
|
case 0: // first run / last run list
|
||||||
|
if (fMsr2DataParam->firstRun != -1) {
|
||||||
|
for (int i=fMsr2DataParam->firstRun; i<=fMsr2DataParam->lastRun; i++) {
|
||||||
|
if (fMsr2DataParam->msrFileExtension.isEmpty())
|
||||||
|
fln = QString("%1").arg(i) + ".msr";
|
||||||
|
else
|
||||||
|
fln = QString("%1").arg(i) + fMsr2DataParam->msrFileExtension + ".msr";
|
||||||
|
|
||||||
|
load(fln);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 1: // run list
|
||||||
|
end = 0;
|
||||||
|
while (!runList.section(' ', end, end).isEmpty()) {
|
||||||
|
end++;
|
||||||
|
}
|
||||||
|
for (int i=0; i<end; i++) {
|
||||||
|
fln = runList.section(' ', i, i);
|
||||||
|
if (fMsr2DataParam->msrFileExtension.isEmpty())
|
||||||
|
fln += ".msr";
|
||||||
|
else
|
||||||
|
fln += fMsr2DataParam->msrFileExtension + ".msr";
|
||||||
|
|
||||||
|
load(fln);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case 2: // run list file
|
||||||
|
file = new QFile(fMsr2DataParam->runListFileName);
|
||||||
|
if (!file->open(IO_ReadOnly)) {
|
||||||
|
str = QString("Couldn't open run list file %1, sorry.").arg(fMsr2DataParam->runListFileName);
|
||||||
|
QMessageBox::critical(this, "**ERROR**", str.latin1(), QMessageBox::Ok, QMessageBox::NoButton);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
stream = new QTextStream(file);
|
||||||
|
while ( !stream->atEnd() ) {
|
||||||
|
str = stream->readLine(); // line of text excluding '\n'
|
||||||
|
str.stripWhiteSpace();
|
||||||
|
if (!str.isEmpty() && !str.startsWith("#")) {
|
||||||
|
fln = str.section(' ', 0, 0);
|
||||||
|
if (fMsr2DataParam->msrFileExtension.isEmpty())
|
||||||
|
fln += ".msr";
|
||||||
|
else
|
||||||
|
fln += fMsr2DataParam->msrFileExtension + ".msr";
|
||||||
|
|
||||||
|
load(fln);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
file->close();
|
||||||
|
|
||||||
|
// clean up
|
||||||
|
delete stream;
|
||||||
|
delete file;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -48,6 +48,7 @@ typedef struct {
|
|||||||
bool writeColumnData;
|
bool writeColumnData;
|
||||||
bool recreateDbFile;
|
bool recreateDbFile;
|
||||||
bool chainFit;
|
bool chainFit;
|
||||||
|
bool openFilesAfterFitting;
|
||||||
} PMsr2DataParam;
|
} PMsr2DataParam;
|
||||||
|
|
||||||
typedef struct {
|
typedef struct {
|
||||||
|
Reference in New Issue
Block a user