NorMIT-nav  2023.01.05-dev+develop.0da12
An IGT application
cxRMPCFromPointerWidget.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 CXRMPCFROMPOINTERWIDGET_H
12 #define CXRMPCFROMPOINTERWIDGET_H
13 
14 #include <QPushButton>
15 #include <QDomElement>
17 #include "cxForwardDeclarations.h"
18 #include "cxXmlOptionItem.h"
21 
22 namespace cx
23 {
24 class WidgetObscuredListener;
25 class RecordTrackingWidget;
26 class ICPWidget;
27 typedef boost::shared_ptr<class Acquisition> AcquisitionPtr;
28 typedef boost::shared_ptr<class StringPropertySelectMesh> StringPropertySelectMeshPtr;
29 typedef boost::shared_ptr<class ToolRep3D> ToolRep3DPtr;
30 typedef boost::shared_ptr<class RecordSessionWidget> RecordSessionWidgetPtr;
31 typedef boost::shared_ptr<class AcquisitionData> AcquisitionDataPtr;
32 //typedef boost::shared_ptr<class BronchoscopyRegistration> BronchoscopyRegistrationPtr;
33 typedef std::map<QString, ToolPtr> ToolMap;
34 typedef boost::shared_ptr<class StringPropertySelectTool> StringPropertySelectToolPtr;
35 typedef boost::shared_ptr<class SeansVesselReg> SeansVesselRegPtr;
36 typedef boost::shared_ptr<class MeshInView> MeshInViewPtr;
37 typedef boost::shared_ptr<class SpaceListener> SpaceListenerPtr;
38 
47 {
48  Q_OBJECT
49 
50 public:
51  RMPCFromPointerWidget(RegServicesPtr services, QWidget *parent);
53  virtual QString defaultWhatsThis() const;
54 
55 protected:
56  virtual void initializeRegistrator();
57  virtual void inputChanged();
58  virtual void applyRegistration(Transform3D delta);
59  virtual void onShown();
60  virtual void setup();
61 
62  virtual double getDefaultAutoLTS() const { return false; }
63 
64 private:
65  void queuedAutoRegistration();
66  void connectAutoRegistration();
67  MeshPtr getTrackerDataAsMesh();
68  QVBoxLayout* createVBoxInGroupBox(QVBoxLayout* parent, QString header);
69 
71  RecordTrackingWidget* mRecordTrackingWidget;
72 
73  SpaceListenerPtr mSpaceListenerMoving;
74  SpaceListenerPtr mSpaceListenerFixed;
75 };
76 
77 } //namespace cx
78 
79 #endif // CXRMPCFROMPOINTERWIDGET_H
cx::RMPCFromPointerWidget::getDefaultAutoLTS
virtual double getDefaultAutoLTS() const
Definition: cxRMPCFromPointerWidget.h:62
cx::ToolMap
std::map< QString, ToolPtr > ToolMap
Definition: cxRecordSessionSelector.h:32
cx::SpaceListenerPtr
boost::shared_ptr< class SpaceListener > SpaceListenerPtr
Definition: cxAxisConnector.h:23
cx::RecordSessionWidgetPtr
boost::shared_ptr< class RecordSessionWidget > RecordSessionWidgetPtr
Definition: cxRecordSessionWidget.h:33
cx::RMPCFromPointerWidget::defaultWhatsThis
virtual QString defaultWhatsThis() const
Definition: cxRMPCFromPointerWidget.cpp:104
cx
Namespace for all CustusX production code.
Definition: cx_dev_group_definitions.h:13
cxICPRegistrationBaseWidget.h
cxForwardDeclarations.h
cx::RMPCFromPointerWidget::RMPCFromPointerWidget
RMPCFromPointerWidget(RegServicesPtr services, QWidget *parent)
Definition: cxRMPCFromPointerWidget.cpp:34
cx::RecordTrackingWidget
Definition: cxRecordTrackingWidget.h:42
cxXmlOptionItem.h
cx::RMPCFromPointerWidget::initializeRegistrator
virtual void initializeRegistrator()
Definition: cxRMPCFromPointerWidget.cpp:109
cx::ICPRegistrationBaseWidget
Definition: cxICPRegistrationBaseWidget.h:49
cx::RMPCFromPointerWidget::onShown
virtual void onShown()
Definition: cxRMPCFromPointerWidget.cpp:160
cx::StringPropertySelectMeshPtr
boost::shared_ptr< class StringPropertySelectMesh > StringPropertySelectMeshPtr
Definition: cxRecordSessionSelector.h:26
cx::ToolRep3DPtr
boost::shared_ptr< class ToolRep3D > ToolRep3DPtr
Definition: cxRecordSessionSelector.h:27
cx::StringPropertyRegistrationFixedImagePtr
boost::shared_ptr< class StringPropertyRegistrationFixedImage > StringPropertyRegistrationFixedImagePtr
Definition: cxRegistrationProperties.h:28
cx::RMPCFromPointerWidget::inputChanged
virtual void inputChanged()
Definition: cxRMPCFromPointerWidget.cpp:130
cx::SeansVesselRegPtr
boost::shared_ptr< class SeansVesselReg > SeansVesselRegPtr
Definition: cxRMPCFromPointerWidget.h:35
cx::MeshPtr
boost::shared_ptr< class Mesh > MeshPtr
Definition: cxForwardDeclarations.h:48
cx::Transform3D
Transform3D Transform3D
Transform3D is a representation of an affine 3D transform.
Definition: cxLandmarkPatientRegistrationWidget.h:33
cx::RMPCFromPointerWidget::applyRegistration
virtual void applyRegistration(Transform3D delta)
Definition: cxRMPCFromPointerWidget.cpp:150
cxRegistrationBaseWidget.h
cx::RegServicesPtr
boost::shared_ptr< class RegServices > RegServicesPtr
Definition: cxRegServices.h:20
cxRegistrationProperties.h
cx::AcquisitionPtr
boost::shared_ptr< class Acquisition > AcquisitionPtr
Definition: cxAcquisitionImplService.h:21
cx::MeshInViewPtr
boost::shared_ptr< class MeshInView > MeshInViewPtr
Definition: cxRMPCFromPointerWidget.h:36
cx::RMPCFromPointerWidget::setup
virtual void setup()
Definition: cxRMPCFromPointerWidget.cpp:40
cx::RMPCFromPointerWidget::~RMPCFromPointerWidget
virtual ~RMPCFromPointerWidget()
Definition: cxRMPCFromPointerWidget.h:52
cx::StringPropertySelectToolPtr
boost::shared_ptr< class StringPropertySelectTool > StringPropertySelectToolPtr
Definition: cxClipperWidget.h:27
cx::AcquisitionDataPtr
boost::shared_ptr< class AcquisitionData > AcquisitionDataPtr
Definition: cxAcquisitionImplService.h:22
cx::RMPCFromPointerWidget
Register a point cloud to a surface.
Definition: cxRMPCFromPointerWidget.h:46