VTK  9.7.1
vtkImageExtractComponents.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
20 #ifndef vtkImageExtractComponents_h
21 #define vtkImageExtractComponents_h
22 
23 #include "vtkImagingCoreModule.h" // For export macro
25 
26 VTK_ABI_NAMESPACE_BEGIN
27 class VTKIMAGINGCORE_EXPORT vtkImageExtractComponents : public vtkThreadedImageAlgorithm
28 {
29 public:
32  void PrintSelf(ostream& os, vtkIndent indent) override;
33 
35 
38  void SetComponents(int c1);
39  void SetComponents(int c1, int c2);
40  void SetComponents(int c1, int c2, int c3);
41  vtkGetVector3Macro(Components, int);
43 
45 
49  vtkGetMacro(NumberOfComponents, int);
51 
52 protected:
54  ~vtkImageExtractComponents() override = default;
55 
57  int Components[3];
58 
60 
61  void ThreadedExecute(
62  vtkImageData* inData, vtkImageData* outData, VTK_FUTURE_CONST int ext[6], int id) override;
63 
64 private:
66  void operator=(const vtkImageExtractComponents&) = delete;
67 };
68 
69 VTK_ABI_NAMESPACE_END
70 #endif
Store vtkAlgorithm input/output information.
Generic filter that has one input.
a simple class to control print indentation
Definition: vtkIndent.h:28
topologically and geometrically regular array of data
Definition: vtkImageData.h:45
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
Subclasses can reimplement this method to collect information from their inputs and set information f...
Outputs a single component.
virtual void ThreadedExecute(vtkImageData *inData, vtkImageData *outData, VTK_FUTURE_CONST int extent[6], int threadId)
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.