Medical Imaging Interaction Toolkit  2026.06.00
Medical Imaging Interaction Toolkit
QmitkParameterFitBackgroundJob.h
Go to the documentation of this file.
1 /*============================================================================
2 
3 The Medical Imaging Interaction Toolkit (MITK)
4 
5 Copyright (c) German Cancer Research Center (DKFZ)
6 All rights reserved.
7 
8 Use of this source code is governed by a 3-clause BSD license that can be
9 found in the LICENSE file.
10 
11 ============================================================================*/
12 
13 #ifndef QmitkParameterFitBackgroundJob_h
14 #define QmitkParameterFitBackgroundJob_h
15 
16 
17 //QT
18 #include <QRunnable>
19 #include <QObject>
20 
21 //MITK
22 #include <mitkDataNode.h>
23 
26 #include <mitkModelFitInfo.h>
27 
28 // ITK
29 #include <itkCommand.h>
30 
31 #include <MitkModelFitUIExports.h>
32 
47 class MITKMODELFITUI_EXPORT ParameterFitBackgroundJob : public QObject, public QRunnable
48 {
49  Q_OBJECT
50 
51 public:
62 
75 
78 
86  void run() override;
87 
93 
99 
100 signals:
102  void Finished();
103 
106  void Error(QString err);
107 
114 
119  void JobProgress(double progress);
120 
125  void JobStatusChanged(QString info);
126 
127 protected:
128  //Inputs
129  mitk::ParameterFitImageGeneratorBase::Pointer m_Generator;
130  mitk::modelFit::ModelFitInfo::ConstPointer m_ModelFitInfo;
131  mitk::DataNode::Pointer m_ParentNode;
133 
134  // Results
136 
137  ::itk::MemberCommand<ParameterFitBackgroundJob>::Pointer m_spCommand;
138  unsigned long m_ObserverID;
139 
140  void OnFitEvent(::itk::Object *, const itk::EventObject &event);
141 };
142 
143 #endif
#define MITKMODELFITUI_EXPORT
QRunnable-based background job for executing a parameter fit image generation.
ParameterFitBackgroundJob(mitk::ParameterFitImageGeneratorBase *generator, const mitk::modelFit::ModelFitInfo *fitInfo, mitk::DataNode *parentNode, mitk::modelFit::ModelFitResultNodeVectorType additionalRelevantNodes)
Constructs a ParameterFitBackgroundJob with additional relevant nodes.
void JobProgress(double progress)
Emitted to report the progress of the fitting process.
void ResultsAreAvailable(mitk::modelFit::ModelFitResultNodeVectorType resultMap, const ParameterFitBackgroundJob *pJob)
Emitted when the fit results are available.
mitk::modelFit::ModelFitResultNodeVectorType m_AdditionalRelevantNodes
void OnFitEvent(::itk::Object *, const itk::EventObject &event)
::itk::MemberCommand< ParameterFitBackgroundJob >::Pointer m_spCommand
~ParameterFitBackgroundJob() override
Destructor. Removes the ITK observer from the generator.
void run() override
Executes the fitting process.
void Finished()
Emitted when the job has completed (regardless of success or failure).
mitk::modelFit::ModelFitResultNodeVectorType GetAdditionalRelevantNodes() const
Returns the additional relevant data nodes.
mitk::modelFit::ModelFitResultNodeVectorType m_Results
mitk::DataNode * GetParentNode() const
Returns the parent data node for result storage.
mitk::ParameterFitImageGeneratorBase::Pointer m_Generator
void JobStatusChanged(QString info)
Emitted to report status changes during the fitting process.
mitk::modelFit::ModelFitInfo::ConstPointer m_ModelFitInfo
void Error(QString err)
Emitted when an error occurs during fitting.
ParameterFitBackgroundJob(mitk::ParameterFitImageGeneratorBase *generator, const mitk::modelFit::ModelFitInfo *fitInfo, mitk::DataNode *parentNode=nullptr)
Constructs a ParameterFitBackgroundJob.
Central node class of the MITK data tree, associating a data object with properties and mappers.
Definition: mitkDataNode.h:72
Data class that stores all information about a model fit relevant to visualization.
std::vector< DataNode::Pointer > ModelFitResultNodeVectorType