NorMIT-nav  18.04
An IGT application
cxLandmarkImage2ImageRegistrationWidget.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 CXLANDMARKIMAGE2IMAGEREGISTRATIONWIDGET_H_
12 #define CXLANDMARKIMAGE2IMAGEREGISTRATIONWIDGET_H_
13 
15 
16 class QVBoxLayout;
17 class QComboBox;
18 class QTableWidget;
19 class QPushButton;
20 class QLabel;
21 class QSlider;
22 
23 namespace cx
24 {
25 typedef boost::shared_ptr<class ImageLandmarksSource> ImageLandmarksSourcePtr;
26 typedef boost::shared_ptr<class StringPropertyRegistrationFixedImage> StringPropertyRegistrationFixedImagePtr;
27 typedef boost::shared_ptr<class StringPropertyRegistrationMovingImage> StringPropertyRegistrationMovingImagePtr;
28 
40 {
41 Q_OBJECT
42 
43 public:
44 
45  LandmarkImage2ImageRegistrationWidget(RegServicesPtr services, QWidget* parent, QString objectName,
46  QString windowTitle);
48  virtual QString defaultWhatsThis() const;
49 
50 protected slots:
51  void registerSlot();
53 
54 protected:
55  virtual void showEvent(QShowEvent* event);
56  virtual void hideEvent(QHideEvent* event);
57  virtual LandmarkMap getTargetLandmarks() const;
58  virtual void performRegistration();
59  virtual void prePaintEvent();
60  virtual Transform3D getTargetTransform() const;
61  virtual void setTargetLandmark(QString uid, Vector3D p_target);
62  virtual QString getTargetName() const;
63 
64  //gui
65  StringPropertyRegistrationFixedImagePtr mFixedProperty;
66  StringPropertyRegistrationMovingImagePtr mMovingProperty;
67 
68  QPushButton* mRegisterButton;
70 
71 private:
73 };
74 
78 }//namespace cx
79 
80 #endif /* CXLANDMARKIMAGE2IMAGEREGISTRATIONWIDGET_H_ */
virtual void setTargetLandmark(QString uid, Vector3D p_target)
Transform3D Transform3D
Transform3D is a representation of an affine 3D transform.
boost::shared_ptr< class StringPropertyRegistrationMovingImage > StringPropertyRegistrationMovingImagePtr
boost::shared_ptr< class StringPropertyRegistrationFixedImage > StringPropertyRegistrationFixedImagePtr
virtual void showEvent(QShowEvent *event)
updates internal info before showing the widget
boost::shared_ptr< class RegServices > RegServicesPtr
Definition: cxRegServices.h:20
Eigen::Vector3d Vector3D
Vector3D is a representation of a point or vector in 3D.
Definition: cxVector3D.h:42
std::map< QString, class Landmark > LandmarkMap
StringPropertyRegistrationMovingImagePtr mMovingProperty
boost::shared_ptr< class ImageLandmarksSource > ImageLandmarksSourcePtr
Namespace for all CustusX production code.