VTK  9.3.0
vtkImageOpenClose3D.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
24 #ifndef vtkImageOpenClose3D_h
25 #define vtkImageOpenClose3D_h
26 
27 #include "vtkImageAlgorithm.h"
28 #include "vtkImagingMorphologicalModule.h" // For export macro
29 
30 VTK_ABI_NAMESPACE_BEGIN
32 
33 class VTKIMAGINGMORPHOLOGICAL_EXPORT vtkImageOpenClose3D : public vtkImageAlgorithm
34 {
35 public:
37 
42  void PrintSelf(ostream& os, vtkIndent indent) override;
44 
49  vtkMTimeType GetMTime() override;
50 
52 
55  void DebugOn() override;
56  void DebugOff() override;
58 
62  void Modified() override;
63 
64  // Forward Source messages to filter1
65 
69  void SetKernelSize(int size0, int size1, int size2);
70 
72 
76  void SetOpenValue(double value);
77  double GetOpenValue();
79 
81 
85  void SetCloseValue(double value);
86  double GetCloseValue();
88 
90 
93  vtkGetObjectMacro(Filter0, vtkImageDilateErode3D);
94  vtkGetObjectMacro(Filter1, vtkImageDilateErode3D);
96 
102 
107  vtkInformationVector* outInfoVec, int requestFromOutputPort, vtkMTimeType* mtime) override;
108 
109 protected:
112 
115 
117 
118 private:
119  vtkImageOpenClose3D(const vtkImageOpenClose3D&) = delete;
120  void operator=(const vtkImageOpenClose3D&) = delete;
121 };
122 
123 VTK_ABI_NAMESPACE_END
124 #endif
Detect and break reference loops.
Generic algorithm superclass for image algs.
Dilates one value and erodes another.
Will perform opening or closing.
vtkMTimeType GetMTime() override
This method considers the sub filters MTimes when computing this objects modified time.
vtkImageDilateErode3D * Filter0
void PrintSelf(ostream &os, vtkIndent indent) override
Default open value is 0, and default close value is 255.
void DebugOff() override
Turn debugging output on.
void ReportReferences(vtkGarbageCollector *) override
void SetOpenValue(double value)
Determines the value that will opened.
void DebugOn() override
Turn debugging output on.
void SetCloseValue(double value)
Determines the value that will closed.
int ComputePipelineMTime(vtkInformation *request, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec, int requestFromOutputPort, vtkMTimeType *mtime) override
Override to send the request to internal pipeline.
static vtkImageOpenClose3D * New()
Default open value is 0, and default close value is 255.
~vtkImageOpenClose3D() override
double GetOpenValue()
Determines the value that will opened.
void SetKernelSize(int size0, int size1, int size2)
Selects the size of gaps or objects removed.
double GetCloseValue()
Determines the value that will closed.
vtkTypeBool ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
see vtkAlgorithm for details
void Modified() override
Pass modified message to sub filters.
vtkImageDilateErode3D * Filter1
a simple class to control print indentation
Definition: vtkIndent.h:29
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
@ value
Definition: vtkX3D.h:220
int vtkTypeBool
Definition: vtkABI.h:64
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:270