VTK  9.3.20240415
vtkPResampleFilter.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
12 #ifndef vtkPResampleFilter_h
13 #define vtkPResampleFilter_h
14 
15 #include "vtkFiltersParallelModule.h" // For export macro
16 #include "vtkImageAlgorithm.h"
17 
18 VTK_ABI_NAMESPACE_BEGIN
20 
21 class VTKFILTERSPARALLEL_EXPORT vtkPResampleFilter : public vtkImageAlgorithm
22 {
23 public:
25  void PrintSelf(ostream& os, vtkIndent indent) override;
26 
28 
30 
34  vtkGetObjectMacro(Controller, vtkMultiProcessController);
36 
38 
42  vtkSetMacro(UseInputBounds, vtkTypeBool);
43  vtkGetMacro(UseInputBounds, vtkTypeBool);
44  vtkBooleanMacro(UseInputBounds, vtkTypeBool);
46 
48 
52  vtkSetVector6Macro(CustomSamplingBounds, double);
53  vtkGetVector6Macro(CustomSamplingBounds, double);
55 
57 
60  vtkSetVector3Macro(SamplingDimension, int);
61  vtkGetVector3Macro(SamplingDimension, int);
63 
64 protected:
66  ~vtkPResampleFilter() override;
67 
68  // Usual data generation method
73 
74  double* CalculateBounds(vtkDataSet* input);
75 
78  double CustomSamplingBounds[6];
79  int SamplingDimension[3];
80  double Bounds[6];
81 
82 private:
83  vtkPResampleFilter(const vtkPResampleFilter&) = delete;
84  void operator=(const vtkPResampleFilter&) = delete;
85 };
86 
87 VTK_ABI_NAMESPACE_END
88 #endif
abstract class to specify dataset behavior
Definition: vtkDataSet.h:166
Generic algorithm superclass for image algs.
a simple class to control print indentation
Definition: vtkIndent.h:108
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Multiprocessing communication superclass.
probe dataset in parallel using a vtkImageData
static vtkPResampleFilter * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkPResampleFilter() override
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Subclasses can reimplement this method to collect information from their inputs and set information f...
vtkTypeBool UseInputBounds
virtual void SetController(vtkMultiProcessController *)
Set and get the controller.
int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Subclasses can reimplement this method to translate the update extent requests from each output port ...
vtkMultiProcessController * Controller
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
This is called in response to a REQUEST_DATA request from the executive.
int FillInputPortInformation(int port, vtkInformation *info) override
These method should be reimplemented by subclasses that have more than a single input or single outpu...
double * CalculateBounds(vtkDataSet *input)
@ info
Definition: vtkX3D.h:376
@ port
Definition: vtkX3D.h:447
int vtkTypeBool
Definition: vtkABI.h:64