NorMIT-nav  2023.01.05-dev+develop.0da12
An IGT application
cxToolMetricWrapper.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 CXTOOLMETRICWRAPPER_H
12 #define CXTOOLMETRICWRAPPER_H
13 
14 #include "cxGuiExport.h"
15 
16 #include "cxToolMetric.h"
17 #include "cxDataMetricWrappers.h"
18 #include "cxTransform3DWidget.h"
19 
20 namespace cx {
21 
28 class cxGui_EXPORT ToolMetricWrapper : public MetricBase
29 {
30  Q_OBJECT
31 public:
32  explicit ToolMetricWrapper(VisServicesPtr services, cx::ToolMetricPtr data);
33  virtual ~ToolMetricWrapper();
34  virtual QWidget* createWidget();
35  virtual QString getValue() const;
36  virtual DataMetricPtr getData() const;
37  virtual QString getArguments() const;
38  virtual QString getType() const;
39  virtual void update();
40 
41 private slots:
42  void resampleMetric();
43  void spaceSelected();
44  void toolNameSet();
45  void toolOffsetSet();
46 // void dataChangedSlot();
47  void frameWidgetChangedSlot();
48 private:
49  cx::ToolMetricPtr mData;
50  SpacePropertyPtr mSpaceSelector;
51  StringPropertyPtr mToolNameSelector;
52  DoublePropertyPtr mToolOffsetSelector;
53  bool mInternalUpdate;
54  Transform3DWidget* mFrameWidget;
55  void initializeProperties();
56 };
57 
58 } //namespace cx
59 
60 #endif // CXTOOLMETRICWRAPPER_H
cx::Transform3DWidget
Widget for displaying and manipulating an affine matrix, i.e. a rotation+translation matrix.
Definition: cxTransform3DWidget.h:38
cx
Namespace for all CustusX production code.
Definition: cx_dev_group_definitions.h:13
cx::MetricBase
Definition: cxDataMetricWrappers.h:53
cx::DataMetricPtr
boost::shared_ptr< DataMetric > DataMetricPtr
Definition: cxDataMetric.h:73
cx::ToolMetricPtr
boost::shared_ptr< class ToolMetric > ToolMetricPtr
Definition: cxToolMetric.h:24
cx::VisServicesPtr
boost::shared_ptr< class VisServices > VisServicesPtr
Definition: cxMainWindow.h:40
cx::StringPropertyPtr
boost::shared_ptr< class StringProperty > StringPropertyPtr
Definition: cxVideoConnectionWidget.h:42
cxToolMetric.h
cxTransform3DWidget.h
cx::DoublePropertyPtr
boost::shared_ptr< class DoubleProperty > DoublePropertyPtr
Definition: cxReconstructionMethodService.h:33
cx::ToolMetricWrapper
Definition: cxToolMetricWrapper.h:28
cx::SpacePropertyPtr
boost::shared_ptr< class SpaceProperty > SpacePropertyPtr
Definition: cxSpaceProperty.h:25
cxDataMetricWrappers.h