VTK  9.3.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(vtkImageData* inData, vtkImageData* outData, int ext[6], int id) override;
62 
63 private:
65  void operator=(const vtkImageExtractComponents&) = delete;
66 };
67 
68 VTK_ABI_NAMESPACE_END
69 #endif
virtual void ThreadedExecute(vtkImageData *inData, vtkImageData *outData, int extent[6], int threadId)
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:42
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.
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.