CustusX  2023.01.05-dev+develop.0da12
An IGT application
cxReconstructParams.h
Go to the documentation of this file.
1 /*=========================================================================
2 This file is part of CustusX, an Image Guided Therapy Application.
3 
4 Copyright (c) SINTEF Department of Medical Technology.
5 All rights reserved.
6 
7 CustusX is released under a BSD 3-Clause license.
8 
9 See Lisence.txt (https://github.com/SINTEFMedtek/CustusX/blob/master/License.txt) for details.
10 =========================================================================*/
11 #ifndef CXRECONSTRUCTPARAMS_H_
12 #define CXRECONSTRUCTPARAMS_H_
13 
14 #include "org_custusx_usreconstruction_Export.h"
15 
16 #include "cxXmlOptionItem.h"
17 #include "cxForwardDeclarations.h"
18 
19 
20 namespace cx
21 {
22 
34 class org_custusx_usreconstruction_EXPORT ReconstructParams : public QObject
35 {
36  Q_OBJECT
37 
38 public:
40  virtual ~ReconstructParams();
41 
42  PropertyPtr getParameter(QString uid);
43  QStringList getParameterUids() const;
44 
45  StringPropertyPtr getOrientationAdapter() { this->createParameters(); return mOrientationAdapter; }
46  StringPropertyPtr getPresetTFAdapter() { this->createParameters(); return mPresetTFAdapter; }
47  StringPropertyPtr getAlgorithmAdapter() { this->createParameters(); return mAlgorithmAdapter; }
48  StringPropertyPtr getMaskReduce() { this->createParameters(); return mMaskReduce; }
49  StringPropertyPtr getPosFilterStrength() { this->createParameters(); return mPosFilterStrength; }
50  BoolPropertyPtr getAlignTimestamps() { this->createParameters(); return mAlignTimestamps; }
51  BoolPropertyPtr getPositionThinning() { this->createParameters(); return mPositionThinning; }
52  DoublePropertyPtr getTimeCalibration() { this->createParameters(); return mTimeCalibration; }
53  DoublePropertyPtr getMaxVolumeSize() { this->createParameters(); return mMaxVolumeSize; }
54  BoolPropertyPtr getAngioAdapter() { this->createParameters(); return mAngioAdapter; }
55  BoolPropertyPtr getCreateBModeWhenAngio() { this->createParameters(); return mCreateBModeWhenAngio; }
56 
57 signals:
58  void changedInputSettings();
59 // void transferFunctionChanged();
60 
61 private slots:
62  void transferFunctionChangedSlot();
63  void onPatientChanged();
64 
65 private:
66  std::map<QString, PropertyPtr> mParameters;
67  void createParameters();
68 
69  StringPropertyPtr mOrientationAdapter;
70  StringPropertyPtr mPresetTFAdapter;
71  StringPropertyPtr mAlgorithmAdapter;
72  StringPropertyPtr mMaskReduce;//Reduce mask size in % in each direction
73  StringPropertyPtr mPosFilterStrength; //position noise filter strength
74  BoolPropertyPtr mAlignTimestamps;
75  BoolPropertyPtr mPositionThinning;
76  DoublePropertyPtr mTimeCalibration;
77  DoublePropertyPtr mMaxVolumeSize;
78  BoolPropertyPtr mAngioAdapter;
79  BoolPropertyPtr mCreateBModeWhenAngio;
80 
81  PatientModelServicePtr mPatientModelService;
82  XmlOptionFile mSettings;
83  void add(PropertyPtr param);
84 };
85 typedef boost::shared_ptr<class ReconstructParams> ReconstructParamsPtr;
86 
91 }//namespace
92 
93 #endif // CXRECONSTRUCTPARAMS_H_
BoolPropertyPtr getCreateBModeWhenAngio()
BoolPropertyPtr getAlignTimestamps()
BoolPropertyPtr getPositionThinning()
StringPropertyPtr getMaskReduce()
DoublePropertyPtr getMaxVolumeSize()
boost::shared_ptr< class StringProperty > StringPropertyPtr
StringPropertyPtr getOrientationAdapter()
boost::shared_ptr< class ReconstructParams > ReconstructParamsPtr
boost::shared_ptr< class Property > PropertyPtr
Collection of reconstruction parameters.
boost::shared_ptr< class PatientModelService > PatientModelServicePtr
StringPropertyPtr getPresetTFAdapter()
Settings * settings()
Shortcut for accessing the settings instance.
Definition: cxSettings.cpp:21
BoolPropertyPtr getAngioAdapter()
boost::shared_ptr< class DoubleProperty > DoublePropertyPtr
StringPropertyPtr getPosFilterStrength()
StringPropertyPtr getAlgorithmAdapter()
boost::shared_ptr< class BoolProperty > BoolPropertyPtr
Helper class for xml files used to store ssc/cx data.
DoublePropertyPtr getTimeCalibration()
Namespace for all CustusX production code.