VTK  9.0.1
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 =========================================================================*/
29 #ifndef vtkImageSeparableConvolution_h
30 #define vtkImageSeparableConvolution_h
31 
33 #include "vtkImagingGeneralModule.h" // For export macro
34 
35 class vtkFloatArray;
36 
37 class VTKIMAGINGGENERAL_EXPORT vtkImageSeparableConvolution : public vtkImageDecomposeFilter
38 {
39 public:
42 
43  // Set the X convolution kernel, a null value indicates no convolution to
44  // be done. The kernel must be of odd length
45  virtual void SetXKernel(vtkFloatArray*);
46  vtkGetObjectMacro(XKernel, vtkFloatArray);
47 
48  // Set the Y convolution kernel, a null value indicates no convolution to
49  // be done The kernel must be of odd length
50  virtual void SetYKernel(vtkFloatArray*);
51  vtkGetObjectMacro(YKernel, vtkFloatArray);
52 
53  // Set the Z convolution kernel, a null value indicates no convolution to
54  // be done The kernel must be of odd length
55  virtual void SetZKernel(vtkFloatArray*);
56  vtkGetObjectMacro(ZKernel, vtkFloatArray);
57 
58  void PrintSelf(ostream& os, vtkIndent indent) override;
59 
64  vtkMTimeType GetMTime() override;
65 
66 protected:
68  ~vtkImageSeparableConvolution() override;
69 
73 
75 
78 
79 private:
81  void operator=(const vtkImageSeparableConvolution&) = delete;
82 };
83 
84 #endif
vtkFloatArray
dynamic, self-adjusting array of float
Definition: vtkFloatArray.h:35
vtkInformationVector
Store zero or more vtkInformation instances.
Definition: vtkInformationVector.h:35
vtkImageSeparableConvolution
3 1D convolutions on an image
Definition: vtkImageSeparableConvolution.h:37
vtkImageDecomposeFilter::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkImageIterateFilter::IterativeRequestUpdateExtent
virtual int IterativeRequestUpdateExtent(vtkInformation *in, vtkInformation *out)
vtkObject::GetMTime
virtual vtkMTimeType GetMTime()
Return this object's modified time.
vtkImageSeparableConvolution::XKernel
vtkFloatArray * XKernel
Definition: vtkImageSeparableConvolution.h:70
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:33
vtkImageDecomposeFilter
Filters that execute axes in series.
Definition: vtkImageDecomposeFilter.h:32
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:73
vtkAlgorithm::New
static vtkAlgorithm * New()
vtkImageSeparableConvolution::YKernel
vtkFloatArray * YKernel
Definition: vtkImageSeparableConvolution.h:71
vtkImageIterateFilter::IterativeRequestInformation
virtual int IterativeRequestInformation(vtkInformation *in, vtkInformation *out)
vtkImageIterateFilter::IterativeRequestData
virtual int IterativeRequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
vtkImageDecomposeFilter.h
vtkImageSeparableConvolution::ZKernel
vtkFloatArray * ZKernel
Definition: vtkImageSeparableConvolution.h:72
vtkMTimeType
vtkTypeUInt32 vtkMTimeType
Definition: vtkType.h:293