Skip to content
Snippets Groups Projects
Commit 5dd0cbeb authored by Raquel Alvarez's avatar Raquel Alvarez
Browse files

Merge pull request #13774 from mantidproject/13771_single_spectrum_in_multi_data_fitting

Display output from fit of single spectrum.
parents 1167ea54 bcf0f679
No related merge requests found
......@@ -56,7 +56,7 @@ public:
/// Destructor
~MultiDatasetFit();
/// Get the name of the output workspace
QString getOutputWorkspaceName() const {return QString::fromStdString(m_outputWorkspaceName);}
QString getOutputWorkspaceName() const;
/// Workspace name for the i-th spectrum
std::string getWorkspaceName(int i) const;
/// Workspace index of the i-th spectrum
......@@ -90,6 +90,7 @@ private slots:
void enableRange();
void checkFittingType();
void setLogNames();
void invalidateOutput();
protected:
virtual void initLayout();
......
......@@ -76,6 +76,7 @@ void MultiDatasetFit::initLayout()
connect(m_dataController,SIGNAL(dataTableUpdated()),m_plotController,SLOT(tableUpdated()));
connect(m_dataController,SIGNAL(dataSetUpdated(int)),m_plotController,SLOT(updateRange(int)));
connect(m_dataController,SIGNAL(dataTableUpdated()),this,SLOT(setLogNames()));
connect(m_dataController,SIGNAL(dataTableUpdated()),this,SLOT(invalidateOutput()));
connect(m_plotController,SIGNAL(fittingRangeChanged(int, double, double)),m_dataController,SLOT(setFittingRange(int, double, double)));
connect(m_uiForm.cbShowDataErrors,SIGNAL(toggled(bool)),m_plotController,SLOT(showDataErrors(bool)));
connect(m_uiForm.btnToVisibleRange,SIGNAL(clicked()),m_plotController,SLOT(resetRange()));
......@@ -150,6 +151,12 @@ void MultiDatasetFit::createPlotToolbar()
}
/// Get the name of the output workspace
QString MultiDatasetFit::getOutputWorkspaceName() const
{
return QString::fromStdString(m_outputWorkspaceName);
}
/// Create a multi-domain function to fit all the spectra in the data table.
boost::shared_ptr<Mantid::API::IFunction> MultiDatasetFit::createFunction() const
{
......@@ -236,7 +243,14 @@ void MultiDatasetFit::fitSimultaneous()
fit->setPropertyValue("Output",m_outputWorkspaceName);
m_fitOptionsBrowser->setProperty("Output","out");
}
m_outputWorkspaceName += "_Workspaces";
if (n == 1)
{
m_outputWorkspaceName += "_Workspace";
}
else
{
m_outputWorkspaceName += "_Workspaces";
}
m_fitRunner.reset( new API::AlgorithmRunner() );
connect( m_fitRunner.get(),SIGNAL(algorithmComplete(bool)), this, SLOT(finishFit(bool)), Qt::QueuedConnection );
......@@ -599,5 +613,13 @@ void MultiDatasetFit::setLogNames()
}
}
/// Invalidate the previous fit output
void MultiDatasetFit::invalidateOutput()
{
m_outputWorkspaceName = "";
m_plotController->clear();
m_plotController->update();
}
} // CustomInterfaces
} // MantidQt
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