Skip to content
Snippets Groups Projects
Commit e181dd50 authored by Olivier Langella's avatar Olivier Langella
Browse files

write tandem parameter file should be ok, overwriting number of threads

parent 668ea79a
No related branches found
No related tags found
No related merge requests found
...@@ -32,6 +32,8 @@ ...@@ -32,6 +32,8 @@
#include <pappsomspp/pappsoexception.h> #include <pappsomspp/pappsoexception.h>
#include <QFileInfo> #include <QFileInfo>
#include <QDebug> #include <QDebug>
#include <QTemporaryDir>
#include "../../files/tandemparametersfile.h"
TandemBatchProcess::TandemBatchProcess(MainWindow * p_main_window, WorkMonitorInterface * p_monitor, const TandemRunBatch & tandem_run_batch) { TandemBatchProcess::TandemBatchProcess(MainWindow * p_main_window, WorkMonitorInterface * p_monitor, const TandemRunBatch & tandem_run_batch) {
_p_main_window = p_main_window; _p_main_window = p_main_window;
...@@ -95,7 +97,20 @@ void TandemBatchProcess::prepareXmlDatabaseFile() { ...@@ -95,7 +97,20 @@ void TandemBatchProcess::prepareXmlDatabaseFile() {
void TandemBatchProcess::run() { void TandemBatchProcess::run() {
qDebug() << "TandemBatchProcess::run begin " << _tandem_run_batch._preset_file; qDebug() << "TandemBatchProcess::run begin " << _tandem_run_batch._preset_file;
_preset_file = _tandem_run_batch._preset_file; QTemporaryDir tmp_dir;
if (!tmp_dir.isValid()) {
// dir.path() returns the unique directory path
throw pappso::PappsoException(QObject::tr("problem creating temporary directory in %1\n").arg(tmp_dir.path()));
}
TandemParametersFile orig_parameter_file(_tandem_run_batch._preset_file);
_preset_file = QString("%1/%2").arg(tmp_dir.path()).arg(orig_parameter_file.getFilename());
TandemParametersFile new_parameter_file(_preset_file);
TandemParameters new_param = orig_parameter_file.getTandemParameters();
// <note type="input" label="spectrum, threads">1</note>
new_param.setParamLabelValue("spectrum, threads",QString("%1").arg(_tandem_run_batch._number_of_threads));
new_parameter_file.setTandemParameters(new_param);
prepareXmlDatabaseFile(); prepareXmlDatabaseFile();
......
...@@ -105,7 +105,7 @@ void TandemCondorProcess::run() { ...@@ -105,7 +105,7 @@ void TandemCondorProcess::run() {
TandemParametersFile new_parameter_file(_preset_file); TandemParametersFile new_parameter_file(_preset_file);
TandemParameters new_param = orig_parameter_file.getTandemParameters(); TandemParameters new_param = orig_parameter_file.getTandemParameters();
// <note type="input" label="spectrum, threads">1</note> // <note type="input" label="spectrum, threads">1</note>
new_param.setParamLabel("spectrum, threads",QString("%1").arg(_tandem_run_batch._number_of_threads)); new_param.setParamLabelValue("spectrum, threads",QString("%1").arg(_tandem_run_batch._number_of_threads));
new_parameter_file.setTandemParameters(new_param); new_parameter_file.setTandemParameters(new_param);
prepareXmlDatabaseFile(); prepareXmlDatabaseFile();
......
...@@ -28,6 +28,7 @@ ...@@ -28,6 +28,7 @@
******************************************************************************/ ******************************************************************************/
#include "tandemparameters.h" #include "tandemparameters.h"
#include <QDebug>
TandemParameters::TandemParameters() { TandemParameters::TandemParameters() {
} }
...@@ -35,17 +36,33 @@ TandemParameters::~TandemParameters() { ...@@ -35,17 +36,33 @@ TandemParameters::~TandemParameters() {
} }
TandemParameters::TandemParameters(const TandemParameters & other) { TandemParameters::TandemParameters(const TandemParameters & other) {
qDebug() << "TandemParameters::TandemParameters copy begin";
//_map_label_value = other._map_label_value; //_map_label_value = other._map_label_value;
_method_name = other._method_name; _method_name = other._method_name;
QMap<QString, QString>::const_iterator i = other._map_label_value.constBegin(); QMap<QString, QString>::const_iterator i = other._map_label_value.constBegin();
while (i != other._map_label_value.constEnd()) { while (i != other._map_label_value.constEnd()) {
qDebug() << "TandemParameters::TandemParameters copy " << i.key() << " " << i.value();
_map_label_value.insert(i.key(), i.value()); _map_label_value.insert(i.key(), i.value());
i++; // added i++; // added
} }
qDebug() << "TandemParameters::TandemParameters copy end";
} }
const QString TandemParameters::getLabelCategory(const QString & value) const {
return value.split(", ").at(0);
}
void TandemParameters::setParamLabelValue(const QString & label, const QString & value) {
//list path
//<note type="input" label="list path, default parameters">/gorgone/pappso/tmp/temp_condor_job24872841484824316495370334631825647/QExactive_analysis_FDR_nosemi.xml</note>
//<note type="input" label="list path, taxonomy information">/gorgone/pappso/tmp/temp_condor_job24872841484824316495370334631825647/database.xml</note>
if (getLabelCategory(label) == "list path") {
return;
}
if (label == "spectrum, path") {
return;
}
void TandemParameters::setParamLabel(const QString & label, const QString & value) {
_map_label_value.insert(label, value); _map_label_value.insert(label, value);
} }
void TandemParameters::setMethodName(const QString & method) { void TandemParameters::setMethodName(const QString & method) {
......
...@@ -41,8 +41,10 @@ public: ...@@ -41,8 +41,10 @@ public:
virtual ~TandemParameters(); virtual ~TandemParameters();
void setMethodName(const QString & method); void setMethodName(const QString & method);
void setParamLabel(const QString & label, const QString & value); void setParamLabelValue(const QString & label, const QString & value);
const QMap<QString, QString> & getMapLabelValue() const; const QMap<QString, QString> & getMapLabelValue() const;
private:
const QString getLabelCategory(const QString & value) const;
private: private:
QString _method_name; QString _method_name;
QMap<QString, QString> _map_label_value; QMap<QString, QString> _map_label_value;
......
...@@ -115,4 +115,7 @@ void WaitingMessageDialog::hideEvent( QHideEvent* event ) { ...@@ -115,4 +115,7 @@ void WaitingMessageDialog::hideEvent( QHideEvent* event ) {
void WaitingMessageDialog::showEvent( QShowEvent* event ) { void WaitingMessageDialog::showEvent( QShowEvent* event ) {
QWidget::showEvent( event ); QWidget::showEvent( event );
_p_movie->start(); _p_movie->start();
ui->stop_push_button->setChecked(false);
ui->stop_push_button->setVisible(false);
_asked_to_stop = false;
} }
...@@ -48,7 +48,7 @@ bool XtandemParamSaxHandler::startElement(const QString & namespaceURI, const QS ...@@ -48,7 +48,7 @@ bool XtandemParamSaxHandler::startElement(const QString & namespaceURI, const QS
try { try {
//startElement_group //startElement_group
if (qName == "c") { if (qName == "note") {
is_ok = startElement_note(attributes); is_ok = startElement_note(attributes);
} }
_current_text.clear(); _current_text.clear();
...@@ -134,19 +134,22 @@ bool XtandemParamSaxHandler::characters(const QString &str) { ...@@ -134,19 +134,22 @@ bool XtandemParamSaxHandler::characters(const QString &str) {
} }
bool XtandemParamSaxHandler::startElement_note(QXmlAttributes attributes) { bool XtandemParamSaxHandler::startElement_note(QXmlAttributes attributes) {
// logger.debug("startElementgroup begin"); qDebug() << "XtandemParamSaxHandler::startElement_note begin " << attributes.value("type");
_current_label = ""; _current_label = "";
if (attributes.value("type") == "input") { if (attributes.value("type") == "input") {
_current_label = attributes.value("label"); _current_label = attributes.value("label");
} }
qDebug() << "XtandemParamSaxHandler::startElement_note _current_label " << _current_label;
return true; return true;
} }
bool XtandemParamSaxHandler::endElement_note() { bool XtandemParamSaxHandler::endElement_note() {
qDebug() << "XtandemParamSaxHandler::endElement_note begin " << _current_label << " " << _current_text.simplified();
if (!_current_label.isEmpty()) { if (!_current_label.isEmpty()) {
_p_tandem_parameters->setParamLabel( _current_label, _current_text.simplified()); _p_tandem_parameters->setParamLabelValue( _current_label, _current_text.simplified());
} }
return true; return true;
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment