VTK  9.3.1
vtkImageButterworthHighPass.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
22 #ifndef vtkImageButterworthHighPass_h
23 #define vtkImageButterworthHighPass_h
24 
25 #include "vtkImagingFourierModule.h" // For export macro
27 
28 VTK_ABI_NAMESPACE_BEGIN
29 class VTKIMAGINGFOURIER_EXPORT vtkImageButterworthHighPass : public vtkThreadedImageAlgorithm
30 {
31 public:
34  void PrintSelf(ostream& os, vtkIndent indent) override;
35 
37 
42  vtkSetVector3Macro(CutOff, double);
43  void SetCutOff(double v) { this->SetCutOff(v, v, v); }
44  void SetXCutOff(double cutOff);
45  void SetYCutOff(double cutOff);
46  void SetZCutOff(double cutOff);
47  vtkGetVector3Macro(CutOff, double);
48  double GetXCutOff() { return this->CutOff[0]; }
49  double GetYCutOff() { return this->CutOff[1]; }
50  double GetZCutOff() { return this->CutOff[2]; }
52 
54 
57  vtkSetMacro(Order, int);
58  vtkGetMacro(Order, int);
60 
61 protected:
63  ~vtkImageButterworthHighPass() override = default;
64 
65  int Order;
66  double CutOff[3];
67 
68  void ThreadedRequestData(vtkInformation* request, vtkInformationVector** inputVector,
69  vtkInformationVector* outputVector, vtkImageData*** inData, vtkImageData** outData,
70  int outExt[6], int id) override;
71 
72 private:
74  void operator=(const vtkImageButterworthHighPass&) = delete;
75 };
76 
77 VTK_ABI_NAMESPACE_END
78 #endif
Store vtkAlgorithm input/output information.
Generic filter that has one input.
Frequency domain high pass.
a simple class to control print indentation
Definition: vtkIndent.h:28
topologically and geometrically regular array of data
Definition: vtkImageData.h:42
double GetYCutOff()
Set/Get the cutoff frequency for each axis.
double GetZCutOff()
Set/Get the cutoff frequency for each axis.
virtual void ThreadedRequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector, vtkImageData ***inData, vtkImageData **outData, int extent[6], int threadId)
If the subclass does not define an Execute method, then the task will be broken up, multiple threads will be spawned, and each thread will call this method.
void SetCutOff(double v)
Set/Get the cutoff frequency for each axis.
double GetXCutOff()
Set/Get the cutoff frequency for each axis.
Store zero or more vtkInformation instances.
static vtkAlgorithm * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.