CustusX  2023.01.05-dev+develop.0da12
An IGT application
cxImageMapperMonitor.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 CXIMAGEMAPPERMONITOR_H
12 #define CXIMAGEMAPPERMONITOR_H
13 
14 #include "cxResourceVisualizationExport.h"
15 
16 #include <set>
17 #include <vector>
18 #include <boost/shared_ptr.hpp>
19 #include <vtkSmartPointer.h>
20 #include <QObject>
21 #include "cxForwardDeclarations.h"
22 #include "cxVector3D.h"
23 #include "vtkForwardDeclarations.h"
24 
25 namespace cx
26 {
27 typedef boost::shared_ptr<class ImageMapperMonitor> ImageMapperMonitorPtr;
28 
36 class cxResourceVisualization_EXPORT ImageMapperMonitor : public QObject
37 {
38  Q_OBJECT
39 public:
40  static ImageMapperMonitorPtr create(vtkVolumePtr volume, ImagePtr image);
42 
43 protected slots:
44  virtual void applyCropping();
45  virtual void clearClipping();
46  virtual void applyClipping();
47 
48 protected:
52  void init();
53 
54 private:
55  std::vector<vtkPlanePtr> mPlanes;
56  vtkVolumeMapperPtr getMapper();
57  void clipPlanesChangedSlot();
58 
59 };
60 
61 } // namespace cx
62 #endif // CXIMAGEMAPPERMONITOR_H
vtkSmartPointer< class vtkVolume > vtkVolumePtr
boost::shared_ptr< class Image > ImagePtr
Definition: cxDicomWidget.h:27
boost::shared_ptr< class ImageMapperMonitor > ImageMapperMonitorPtr
vtkSmartPointer< class vtkVolumeMapper > vtkVolumeMapperPtr
Namespace for all CustusX production code.