NorMIT-nav  18.04
An IGT application
cxVBWidget.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 
12 #ifndef CXVBWIDGET_H_
13 #define CXVBWIDGET_H_
14 
15 #include <QWidget>
16 
17 #include "ctkPluginContext.h"
18 
20 #include "cxMesh.h"
21 #include "cxVBcameraPath.h"
22 #include "org_custusx_virtualbronchoscopy_Export.h"
23 
24 
25 class QVBoxLayout;
26 class QDial;
27 class QSlider;
28 class QPushButton;
29 
30 namespace cx
31 {
32 
33 typedef boost::shared_ptr<class StringPropertySelectMesh> StringPropertySelectMeshPtr;
34 typedef boost::shared_ptr<class PatientStorage> PatientStoragePtr;
35 
44 class org_custusx_virtualbronchoscopy_EXPORT VBWidget : public QWidget
45 {
46  Q_OBJECT
47 public:
48  VBWidget(VisServicesPtr services, QWidget *parent = 0);
49  virtual ~VBWidget();
50  void setRouteToTarget(QString uid);
51 
52 protected:
53  QString defaultWhatsThis() const;
54  QVBoxLayout* mVerticalLayout;
55  QSlider* mPlaybackSlider;
56  QDial* mRotateDial;
57  QDial* mViewDial;
58  QPushButton* mResetEndoscopeButton;
59 
60  StringPropertySelectMeshPtr mRouteToTarget;
63 
64  void enableControls(bool enable);
65 
66  PatientStoragePtr mStorage;
67 
68 signals:
69  void cameraPathChanged(MeshPtr pathMesh);
70 
71 private slots:
72  void inputChangedSlot();
73  void resetEndoscopeSlot();
74 protected slots:
75  virtual void keyPressEvent(QKeyEvent* event);
76 };
77 
78 } /* namespace cx */
79 
80 #endif /* CXVBWIDGET_H_ */
boost::shared_ptr< class VisServices > VisServicesPtr
Definition: cxMainWindow.h:40
QDial * mViewDial
Definition: cxVBWidget.h:57
PatientStoragePtr mStorage
Definition: cxVBWidget.h:66
StringPropertySelectMeshPtr mRouteToTarget
Definition: cxVBWidget.h:60
QDial * mRotateDial
Definition: cxVBWidget.h:56
bool mControlsEnabled
Definition: cxVBWidget.h:62
QSlider * mPlaybackSlider
Definition: cxVBWidget.h:55
boost::shared_ptr< class PatientStorage > PatientStoragePtr
Definition: cxVBWidget.h:34
QVBoxLayout * mVerticalLayout
Definition: cxVBWidget.h:54
CXVBcameraPath * mCameraPath
Definition: cxVBWidget.h:61
QPushButton * mResetEndoscopeButton
Definition: cxVBWidget.h:58
boost::shared_ptr< class Mesh > MeshPtr
boost::shared_ptr< class StringPropertySelectMesh > StringPropertySelectMeshPtr
Namespace for all CustusX production code.