CustusX  2023.01.05-dev+develop.0da12
An IGT application
cxAirwaysFromCenterlineFilterService.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 CXAIRWAYSFROMCENTERLINEFILTER_H
12 #define CXAIRWAYSFROMCENTERLINEFILTER_H
13 
14 #include "org_custusx_filter_airwaysfromcenterline_Export.h"
15 
16 #include "cxPatientModelService.h"
17 #include "cxFilterImpl.h"
18 
19 class ctkPluginContext;
20 
21 namespace cx
22 {
23 
32 typedef boost::shared_ptr<class AirwaysFromCenterline> AirwaysFromCenterlinePtr;
33 
34 class org_custusx_filter_airwaysfromcenterline_EXPORT AirwaysFromCenterlineFilter : public FilterImpl
35 {
36  Q_OBJECT
37  Q_INTERFACES(cx::Filter)
38 
39 public:
42 
43  virtual QString getType() const;
44  virtual QString getName() const;
45  virtual QString getHelp() const;
46  static QString getNameSuffix();
47  static QString getNameSuffixCenterline();
48 
49 
50  virtual bool execute();
51  virtual bool postProcess();
52 
53 protected:
54  virtual void createOptions();
55  virtual void createInputTypes();
56  virtual void createOutputTypes();
57 
58 private slots:
59 
60 private:
61  AirwaysFromCenterlinePtr mAirwaysFromCenterline;
62  vtkPolyDataPtr mOutputAirwayMesh;
63  vtkPolyDataPtr mOutputSmoothedCenterline;
64 };
65 typedef boost::shared_ptr<class AirwaysFromCenterlineFilter> AirwaysFromCenterlineFilterPtr;
66 
67 
68 } // namespace cx
69 
70 
71 
72 #endif // CXAIRWAYSFROMCENTERLINEFILTER_H
boost::shared_ptr< AirwaysFromCenterline > AirwaysFromCenterlinePtr
boost::shared_ptr< class VisServices > VisServicesPtr
Definition: cxMainWindow.h:40
boost::shared_ptr< class AirwaysFromCenterlineFilter > AirwaysFromCenterlineFilterPtr
vtkSmartPointer< vtkPolyData > vtkPolyDataPtr
Namespace for all CustusX production code.