VTK  9.2.6
vtkImageCast.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkImageCast.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://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=========================================================================*/
33#ifndef vtkImageCast_h
34#define vtkImageCast_h
35
36#include "vtkImagingCoreModule.h" // For export macro
38
39class VTKIMAGINGCORE_EXPORT vtkImageCast : public vtkThreadedImageAlgorithm
40{
41public:
42 static vtkImageCast* New();
44 void PrintSelf(ostream& os, vtkIndent indent) override;
45
47
50 vtkSetMacro(OutputScalarType, int);
51 vtkGetMacro(OutputScalarType, int);
52 void SetOutputScalarTypeToFloat() { this->SetOutputScalarType(VTK_FLOAT); }
53 void SetOutputScalarTypeToDouble() { this->SetOutputScalarType(VTK_DOUBLE); }
54 void SetOutputScalarTypeToInt() { this->SetOutputScalarType(VTK_INT); }
55 void SetOutputScalarTypeToUnsignedInt() { this->SetOutputScalarType(VTK_UNSIGNED_INT); }
56 void SetOutputScalarTypeToLong() { this->SetOutputScalarType(VTK_LONG); }
57 void SetOutputScalarTypeToUnsignedLong() { this->SetOutputScalarType(VTK_UNSIGNED_LONG); }
58 void SetOutputScalarTypeToShort() { this->SetOutputScalarType(VTK_SHORT); }
59 void SetOutputScalarTypeToUnsignedShort() { this->SetOutputScalarType(VTK_UNSIGNED_SHORT); }
60 void SetOutputScalarTypeToUnsignedChar() { this->SetOutputScalarType(VTK_UNSIGNED_CHAR); }
61 void SetOutputScalarTypeToChar() { this->SetOutputScalarType(VTK_CHAR); }
63
65
73 vtkSetMacro(ClampOverflow, vtkTypeBool);
74 vtkGetMacro(ClampOverflow, vtkTypeBool);
75 vtkBooleanMacro(ClampOverflow, vtkTypeBool);
77
78protected:
80 ~vtkImageCast() override = default;
81
85
86 void ThreadedExecute(vtkImageData* inData, vtkImageData* outData, int ext[6], int id) override;
87
88private:
89 vtkImageCast(const vtkImageCast&) = delete;
90 void operator=(const vtkImageCast&) = delete;
91};
92
93#endif
Image Data type Casting Filter.
void ThreadedExecute(vtkImageData *inData, vtkImageData *outData, int ext[6], int id) override
vtkTypeBool ClampOverflow
void SetOutputScalarTypeToLong()
Set the desired output scalar type to cast to.
void SetOutputScalarTypeToFloat()
Set the desired output scalar type to cast to.
void SetOutputScalarTypeToUnsignedLong()
Set the desired output scalar type to cast to.
int RequestInformation(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
Subclasses can reimplement this method to collect information from their inputs and set information f...
void SetOutputScalarTypeToDouble()
Set the desired output scalar type to cast to.
void SetOutputScalarTypeToShort()
Set the desired output scalar type to cast to.
static vtkImageCast * New()
~vtkImageCast() override=default
void SetOutputScalarTypeToChar()
Set the desired output scalar type to cast to.
void SetOutputScalarTypeToUnsignedChar()
Set the desired output scalar type to cast to.
void SetOutputScalarTypeToInt()
Set the desired output scalar type to cast to.
void SetOutputScalarTypeToUnsignedShort()
Set the desired output scalar type to cast to.
void SetOutputScalarTypeToUnsignedInt()
Set the desired output scalar type to cast to.
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
topologically and geometrically regular array of data
a simple class to control print indentation
Definition vtkIndent.h:34
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
Generic filter that has one input.
int vtkTypeBool
Definition vtkABI.h:69
#define VTK_SHORT
Definition vtkType.h:48
#define VTK_UNSIGNED_INT
Definition vtkType.h:51
#define VTK_DOUBLE
Definition vtkType.h:55
#define VTK_UNSIGNED_CHAR
Definition vtkType.h:47
#define VTK_UNSIGNED_SHORT
Definition vtkType.h:49
#define VTK_INT
Definition vtkType.h:50
#define VTK_FLOAT
Definition vtkType.h:54
#define VTK_CHAR
Definition vtkType.h:45
#define VTK_UNSIGNED_LONG
Definition vtkType.h:53
#define VTK_LONG
Definition vtkType.h:52