Fraxinus  18.10
An IGT application
cxReconstructOutputValueParamsInterfaces.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 CXRECONSTRUCTOUTPUTVALUEPARAMSINTERFACES_H_
12 #define CXRECONSTRUCTOUTPUTVALUEPARAMSINTERFACES_H_
13 
14 #include "org_custusx_usreconstruction_Export.h"
15 
16 #include "cxDoublePropertyBase.h"
17 
18 namespace cx
19 {
20 //typedef boost::shared_ptr<class ReconstructionManager> ReconstructManagerPtr;
21 typedef boost::shared_ptr<class UsReconstructionService> UsReconstructionServicePtr;
22 class OutputVolumeParams;
23 
34 class org_custusx_usreconstruction_EXPORT DoublePropertyOutputValueParams : public DoublePropertyBase
35 {
36  Q_OBJECT
37 public:
38  DoublePropertyOutputValueParams(UsReconstructionServicePtr reconstructer);
40  virtual double getValue() const;
41  virtual bool setValue(double val);
42  virtual void connectValueSignals(bool on) {}
43 
44 private slots:
45 
46 protected:
47  virtual double getValue(OutputVolumeParams* params) const = 0;
48  virtual void setValue(OutputVolumeParams* params, double val) = 0;
49 
50  UsReconstructionServicePtr mReconstructer;
51 };
52 
55 class org_custusx_usreconstruction_EXPORT DoublePropertySpacing : public DoublePropertyOutputValueParams
56 {
57  Q_OBJECT
58 public:
59  DoublePropertySpacing(UsReconstructionServicePtr reconstructer) : DoublePropertyOutputValueParams(reconstructer) {}
61  virtual QString getDisplayName() const { return "Spacing Out"; }
62  virtual QString getHelp() const { return "Output Volume Spacing (mm)"; }
63  DoubleRange getValueRange() const { return DoubleRange(0.001,10,0.001); }
64  virtual int getValueDecimals() const { return 3; }
65 
66 protected:
67  virtual double getValue(OutputVolumeParams* params) const;
68  virtual void setValue(OutputVolumeParams* params, double val);
69 };
70 
73 class org_custusx_usreconstruction_EXPORT DoublePropertyXDim : public DoublePropertyOutputValueParams
74 {
75  Q_OBJECT
76 public:
77  DoublePropertyXDim(UsReconstructionServicePtr reconstructer) : DoublePropertyOutputValueParams(reconstructer) {}
78  virtual ~DoublePropertyXDim() {}
79  virtual QString getDisplayName() const { return "X"; }
80  virtual QString getHelp() const { return "X dimension"; }
81  DoubleRange getValueRange() const { return DoubleRange(1,1000,1); }
82 protected:
83  virtual double getValue(OutputVolumeParams* params) const;
84  virtual void setValue(OutputVolumeParams* params, double val);
85 };
88 class org_custusx_usreconstruction_EXPORT DoublePropertyYDim : public DoublePropertyOutputValueParams
89 {
90  Q_OBJECT
91 public:
92  DoublePropertyYDim(UsReconstructionServicePtr reconstructer) : DoublePropertyOutputValueParams(reconstructer) {}
93  virtual ~DoublePropertyYDim() {}
94  virtual QString getDisplayName() const { return "Y"; }
95  virtual QString getHelp() const { return "Y dimension"; }
96  DoubleRange getValueRange() const { return DoubleRange(1,1000,1); }
97 protected:
98  virtual double getValue(OutputVolumeParams* params) const;
99  virtual void setValue(OutputVolumeParams* params, double val);
100 };
103 class org_custusx_usreconstruction_EXPORT DoublePropertyZDim : public DoublePropertyOutputValueParams
104 {
105  Q_OBJECT
106 public:
107  DoublePropertyZDim(UsReconstructionServicePtr reconstructer) : DoublePropertyOutputValueParams(reconstructer) {}
108  virtual ~DoublePropertyZDim() {}
109  virtual QString getDisplayName() const { return "Z"; }
110  virtual QString getHelp() const { return "Z dimension"; }
111  DoubleRange getValueRange() const { return DoubleRange(1,1000,1); }
112 protected:
113  virtual double getValue(OutputVolumeParams* params) const;
114  virtual void setValue(OutputVolumeParams* params, double val);
115 };
116 
120 } // namespace cx
121 
122 #endif /* CXRECONSTRUCTOUTPUTVALUEPARAMSINTERFACES_H_ */
boost::shared_ptr< class UsReconstructionService > UsReconstructionServicePtr
virtual QString getDisplayName() const
name of data entity. Used for display to user.
virtual QString getDisplayName() const
name of data entity. Used for display to user.
virtual QString getHelp() const
return a descriptive help string for the data, used for example as a tool tip.
Utility class for describing a bounded numeric range.
Definition: cxDoubleRange.h:32
virtual QString getDisplayName() const
name of data entity. Used for display to user.
Helper struct for sending and controlling output volume properties.
virtual QString getHelp() const
return a descriptive help string for the data, used for example as a tool tip.
DoublePropertyXDim(UsReconstructionServicePtr reconstructer)
DoublePropertyZDim(UsReconstructionServicePtr reconstructer)
virtual QString getHelp() const
return a descriptive help string for the data, used for example as a tool tip.
virtual QString getDisplayName() const
name of data entity. Used for display to user.
DoublePropertySpacing(UsReconstructionServicePtr reconstructer)
virtual QString getHelp() const
return a descriptive help string for the data, used for example as a tool tip.
DoublePropertyYDim(UsReconstructionServicePtr reconstructer)
virtual int getValueDecimals() const
number of relevant decimals in value
Namespace for all CustusX production code.