VTK  9.3.20240327
vtkImagePadFilter.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
13 #ifndef vtkImagePadFilter_h
14 #define vtkImagePadFilter_h
15 
16 #include "vtkImagingCoreModule.h" // For export macro
18 
19 VTK_ABI_NAMESPACE_BEGIN
20 class VTKIMAGINGCORE_EXPORT vtkImagePadFilter : public vtkThreadedImageAlgorithm
21 {
22 public:
25  void PrintSelf(ostream& os, vtkIndent indent) override;
26 
28 
32  void SetOutputWholeExtent(int minX, int maxX, int minY, int maxY, int minZ, int maxZ);
34  int* GetOutputWholeExtent() VTK_SIZEHINT(6) { return this->OutputWholeExtent; }
36 
38 
41  vtkSetMacro(OutputNumberOfScalarComponents, int);
42  vtkGetMacro(OutputNumberOfScalarComponents, int);
44 
45 protected:
47  ~vtkImagePadFilter() override = default;
48 
49  int OutputWholeExtent[6];
51 
54 
55  virtual void ComputeInputUpdateExtent(int inExt[6], int outExt[6], int wholeExtent[6]);
56 
57 private:
58  vtkImagePadFilter(const vtkImagePadFilter&) = delete;
59  void operator=(const vtkImagePadFilter&) = delete;
60 };
61 
62 VTK_ABI_NAMESPACE_END
63 #endif
Super class for filters that fill in extra pixels.
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Subclasses can reimplement this method to collect information from their inputs and set information f...
virtual void ComputeInputUpdateExtent(int inExt[6], int outExt[6], int wholeExtent[6])
void SetOutputWholeExtent(int minX, int maxX, int minY, int maxY, int minZ, int maxZ)
The image extent of the output has to be set explicitly.
int * GetOutputWholeExtent()
The image extent of the output has to be set explicitly.
~vtkImagePadFilter() override=default
static vtkImagePadFilter * New()
void SetOutputWholeExtent(int extent[6])
The image extent of the output has to be set explicitly.
void GetOutputWholeExtent(int extent[6])
The image extent of the output has to be set explicitly.
int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Subclasses can reimplement this method to translate the update extent requests from each output port ...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
a simple class to control print indentation
Definition: vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Generic filter that has one input.
@ extent
Definition: vtkX3D.h:345
#define VTK_SIZEHINT(...)