Medical Imaging Interaction Toolkit  2025.12.02
Medical Imaging Interaction Toolkit
QmitkInitialValuesModel.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 QmitkInitialValuesModel_h
14 #define QmitkInitialValuesModel_h
15 
16 #include <QAbstractTableModel>
17 
20 #include "mitkDataNode.h"
22 
23 #include "MitkModelFitUIExports.h"
24 
25 
30 class MITKMODELFITUI_EXPORT QmitkInitialValuesModel : public QAbstractTableModel
31 {
32  Q_OBJECT
33 
34 public:
35  QmitkInitialValuesModel(QObject* parent = nullptr);
36  ~QmitkInitialValuesModel() override {};
37 
49 
58  void addInitialParameterImage(const mitk::DataNode* node, mitk::ModelTraitsInterface::ParametersType::size_type paramIndex);
59 
60  bool hasValidInitialValues() const;
61 
63 
70 
71 
72  Qt::ItemFlags flags(const QModelIndex& index) const override;
73  QVariant data(const QModelIndex& index, int role) const override;
74  QVariant headerData(int section, Qt::Orientation orientation, int role) const override;
75  int rowCount(const QModelIndex& parent = QModelIndex()) const override;
76  int columnCount(const QModelIndex& parent = QModelIndex()) const override;
77  bool setData(const QModelIndex& index, const QVariant& value, int role = Qt::EditRole) override;
78 
80  bool isModified();
81 
82 private:
83  int valueType(const QModelIndex& index) const;
84 
88 
89  typedef std::map<mitk::ModelTraitsInterface::ParametersType::size_type, mitk::DataNode::ConstPointer> ImageMapType;
90  ImageMapType m_ParameterImageMap;
91 
93  bool m_modified;
94 
95 };
96 
97 #endif
#define MITKMODELFITUI_EXPORT
mitk::InitialParameterizationDelegateBase::Pointer getInitialParametrizationDelegate() const
int rowCount(const QModelIndex &parent=QModelIndex()) const override
QVariant headerData(int section, Qt::Orientation orientation, int role) const override
QmitkInitialValuesModel(QObject *parent=nullptr)
bool hasValidInitialValues() const
void setInitialValues(const mitk::ModelTraitsInterface::ParameterNamesType &names, const mitk::ModelTraitsInterface::ParametersType values, const mitk::ModelTraitsInterface::ParamterUnitMapType units)
mitk::ModelTraitsInterface::ParametersType getInitialValues() const
Qt::ItemFlags flags(const QModelIndex &index) const override
QVariant data(const QModelIndex &index, int role) const override
void setInitialValues(const mitk::ModelTraitsInterface::ParameterNamesType &names)
int columnCount(const QModelIndex &parent=QModelIndex()) const override
void addInitialParameterImage(const mitk::DataNode *node, mitk::ModelTraitsInterface::ParametersType::size_type paramIndex)
bool setData(const QModelIndex &index, const QVariant &value, int role=Qt::EditRole) override
Class for nodes of the DataTree.
Definition: mitkDataNode.h:64
std::map< ParameterNameType, std::string > ParamterUnitMapType
itk::Array< ParameterValueType > ParametersType
std::vector< ParameterNameType > ParameterNamesType