Slicer  5.0
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
vtkImageLabelCombine.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: $RCSfile: vtkImageLabelCombine.h,v $
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or https://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 
16 #ifndef __vtkImageLabelCombine_h
17 #define __vtkImageLabelCombine_h
18 
19 #include <vtkVersion.h>
20 
21 #include "vtkTeemConfigure.h"
22 
23 #include "vtkThreadedImageAlgorithm.h"
24 
30 class VTK_Teem_EXPORT vtkImageLabelCombine : public vtkThreadedImageAlgorithm
31 {
32 public:
33  static vtkImageLabelCombine *New();
34  vtkTypeMacro(vtkImageLabelCombine,vtkThreadedImageAlgorithm);
35  void PrintSelf(ostream& os, vtkIndent indent) override;
36 
39  vtkSetMacro(OverwriteInput,int);
40  vtkGetMacro(OverwriteInput,int);
41 
44  virtual void SetInput1(vtkDataObject *in)
45  {
46  this->SetInputData(0,in);
47  }
48  virtual void SetInput2(vtkDataObject *in)
49  {
50  this->SetInputData(1,in);
51  }
52 
53 protected:
55  ~vtkImageLabelCombine() override = default;
56 
58 
59  int RequestInformation (vtkInformation *,
60  vtkInformationVector **,
61  vtkInformationVector *) override;
62 
63  void ThreadedRequestData(vtkInformation *request,
64  vtkInformationVector **inputVector,
65  vtkInformationVector *outputVector,
66  vtkImageData ***inData,
67  vtkImageData **outData,
68  int extent[6], int threadId) override;
69 
70  int FillInputPortInformation(int port, vtkInformation* info) override;
71 
72 private:
74  void operator=(const vtkImageLabelCombine&) = delete;
75 };
76 
77 #endif
virtual void SetInput2(vtkDataObject *in)
virtual void SetInput1(vtkDataObject *in)
Set the two inputs to this filter
Add, subtract, multiply, divide, invert, sin, cos, exp, log.