Skip to content
Snippets Groups Projects
Commit f607b32e authored by Mikhail Svechnikov's avatar Mikhail Svechnikov
Browse files

JobModel: JobQueueData to unique pointer

parent a149b575
No related branches found
No related tags found
1 merge request!1062GUI: JobModel is refactored
......@@ -13,22 +13,14 @@
// ************************************************************************************************
#include "GUI/Model/Model/JobModel.h"
#include "GUI/Model/Data/IntensityDataItem.h"
#include "GUI/Model/Data/RealItem.h"
#include "GUI/Model/Data/SpecularDataItem.h"
#include "GUI/Model/Device/InstrumentItems.h"
#include "GUI/Model/Device/PointwiseAxisItem.h"
#include "GUI/Model/Job/FitSuiteItem.h"
#include "GUI/Model/Job/JobItem.h"
#include "GUI/Model/Model/JobQueueData.h"
#include "GUI/Model/Model/ParameterTreeUtils.h"
#include "GUI/Model/Model/SessionXML.h"
#include "GUI/Model/Sample/ItemWithMaterial.h"
#include "GUI/Model/Sample/MultiLayerItem.h"
#include "GUI/Support/Data/SessionFlags.h"
#include "GUI/Support/XML/UtilXML.h"
#include "GUI/Util/Error.h"
namespace {
......@@ -46,19 +38,13 @@ const QString JobNameAttribute("name");
JobModel::JobModel(QObject* parent)
: SessionModel(GUI::Session::XML::JobModelTag, parent)
, m_queue_data(nullptr)
{
m_queue_data = new JobQueueData(this);
connect(m_queue_data, &JobQueueData::focusRequest, this, &JobModel::focusRequest);
connect(m_queue_data, &JobQueueData::globalProgress, this, &JobModel::globalProgress);
m_queue_data = std::make_unique<JobQueueData>(this);
connect(m_queue_data.get(), &JobQueueData::focusRequest, this, &JobModel::focusRequest);
connect(m_queue_data.get(), &JobQueueData::globalProgress, this, &JobModel::globalProgress);
setObjectName(GUI::Session::XML::JobModelTag);
}
JobModel::~JobModel()
{
delete m_queue_data;
}
JobItem* JobModel::getJobItemForIdentifier(const QString& identifier)
{
for (auto* jobItem : jobItems())
......
......@@ -16,10 +16,10 @@
#define BORNAGAIN_GUI_MODEL_MODEL_JOBMODEL_H
#include "GUI/Model/Model/SessionModel.h"
#include "GUI/Model/Model/JobQueueData.h"
#include "GUI/Model/Job/JobItem.h"
class InstrumentItem;
class JobItem;
class JobQueueData;
class MultiLayerItem;
class RealItem;
class DataItem;
......@@ -32,7 +32,6 @@ class JobModel : public SessionModel {
public:
explicit JobModel(QObject* parent = nullptr);
~JobModel() override;
JobItem* getJobItemForIdentifier(const QString& identifier);
......@@ -66,7 +65,7 @@ signals:
private:
//! generates numbered job name with new/unused number
QString generateJobName();
JobQueueData* m_queue_data;
std::unique_ptr<JobQueueData> m_queue_data;
#ifdef NEW_JOB_MODEL
std::vector<std::unique_ptr<JobItem>> m_jobItems;
#endif
......
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