VTK  9.1.0
vtkImageSeparableConvolution.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkImageSeparableConvolution.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
48 #ifndef vtkImageSeparableConvolution_h
49 #define vtkImageSeparableConvolution_h
50 
52 #include "vtkImagingGeneralModule.h" // For export macro
53 
54 class vtkFloatArray;
55 
56 class VTKIMAGINGGENERAL_EXPORT vtkImageSeparableConvolution : public vtkImageDecomposeFilter
57 {
58 public:
61 
62  // Set the X convolution kernel, a null value indicates no convolution to
63  // be done. The kernel must be of odd length
64  virtual void SetXKernel(vtkFloatArray*);
65  vtkGetObjectMacro(XKernel, vtkFloatArray);
66 
67  // Set the Y convolution kernel, a null value indicates no convolution to
68  // be done The kernel must be of odd length
69  virtual void SetYKernel(vtkFloatArray*);
70  vtkGetObjectMacro(YKernel, vtkFloatArray);
71 
72  // Set the Z convolution kernel, a null value indicates no convolution to
73  // be done The kernel must be of odd length
74  virtual void SetZKernel(vtkFloatArray*);
75  vtkGetObjectMacro(ZKernel, vtkFloatArray);
76 
77  void PrintSelf(ostream& os, vtkIndent indent) override;
78 
83  vtkMTimeType GetMTime() override;
84 
85 protected:
88 
92 
94 
97 
98 private:
100  void operator=(const vtkImageSeparableConvolution&) = delete;
101 };
102 
103 #endif
dynamic, self-adjusting array of float
Filters that execute axes in series.
3 1D convolutions on an image
virtual void SetZKernel(vtkFloatArray *)
static vtkImageSeparableConvolution * New()
virtual void SetXKernel(vtkFloatArray *)
void PrintSelf(ostream &os, vtkIndent indent) override
Construct an instance of vtkImageDecomposeFilter filter with default dimensionality 3.
virtual void SetYKernel(vtkFloatArray *)
~vtkImageSeparableConvolution() override
int IterativeRequestUpdateExtent(vtkInformation *in, vtkInformation *out) override
int IterativeRequestInformation(vtkInformation *in, vtkInformation *out) override
int IterativeRequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
vtkMTimeType GetMTime() override
Overload standard modified time function.
a simple class to control print indentation
Definition: vtkIndent.h:113
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:287