VMTK
vtkvmtkCollidingFrontsImageFilter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3 Program: VMTK
4 Module: $RCSfile: vtkvmtkCollidingFrontsImageFilter.h,v $
5 Language: C++
6 
7  Copyright (c) Luca Antiga, David Steinman. All rights reserved.
8  See LICENSE file for details.
9 
10  Portions of this code are covered under the VTK copyright.
11  See VTKCopyright.txt or http://www.kitware.com/VTKCopyright.htm
12  for details.
13 
14  Portions of this code are covered under the ITK copyright.
15  See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm
16  for details.
17 
18  This software is distributed WITHOUT ANY WARRANTY; without even
19  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
20  PURPOSE. See the above copyright notices for more information.
21 
22 =========================================================================*/
23 
33 #ifndef __vtkvmtkCollidingFrontsImageFilter_h
34 #define __vtkvmtkCollidingFrontsImageFilter_h
35 
36 #include "vtkSimpleImageToImageFilter.h"
37 #include "vtkIdList.h"
38 #include "vtkvmtkWin32Header.h"
39 
40 class VTK_VMTK_SEGMENTATION_EXPORT vtkvmtkCollidingFrontsImageFilter : public vtkSimpleImageToImageFilter
41 {
42  public:
44  vtkTypeMacro(vtkvmtkCollidingFrontsImageFilter, vtkSimpleImageToImageFilter);
45 
46  vtkGetMacro(ApplyConnectivity,int);
47  vtkSetMacro(ApplyConnectivity,int);
48  vtkBooleanMacro(ApplyConnectivity,int);
49 
50  vtkGetMacro(NegativeEpsilon,double);
51  vtkSetMacro(NegativeEpsilon,double);
52 
53  vtkGetMacro(StopOnTargets,int);
54  vtkSetMacro(StopOnTargets,int);
55  vtkBooleanMacro(StopOnTargets,int);
56 
57  vtkSetObjectMacro(Seeds1,vtkIdList);
58  vtkGetObjectMacro(Seeds1,vtkIdList);
59 
60  vtkSetObjectMacro(Seeds2,vtkIdList);
61  vtkGetObjectMacro(Seeds2,vtkIdList);
62 
63 protected:
64 
67 
68  virtual void SimpleExecute(vtkImageData* input, vtkImageData* output) VTK_OVERRIDE;
69 
70 private:
72  void operator=(const vtkvmtkCollidingFrontsImageFilter&); // Not implemented.
73 
74  vtkIdList* Seeds1;
75  vtkIdList* Seeds2;
76 
77  int ApplyConnectivity;
78  double NegativeEpsilon;
79  int StopOnTargets;
80 };
81 
82 #endif
Wrapper class around itk::CollidingFrontsImageFilter.