vtk-dicom  0.8.17
vtkDICOMApplyRescale.h
1 /*=========================================================================
2 
3  Program: DICOM for VTK
4 
5  Copyright (c) 2012-2024 David Gobbi
6  All rights reserved.
7  See Copyright.txt or http://dgobbi.github.io/bsd3.txt for details.
8 
9  This software is distributed WITHOUT ANY WARRANTY; without even
10  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
11  PURPOSE. See the above copyright notice for more information.
12 
13 =========================================================================*/
28 #ifndef vtkDICOMApplyRescale_h
29 #define vtkDICOMApplyRescale_h
30 
31 #include "vtkDICOMAlgorithm.h"
32 #include "vtkDICOMModule.h" // For export macro
33 
34 class vtkDICOMRealWorldMapping;
35 
36 class VTKDICOM_EXPORT vtkDICOMApplyRescale :
37  public vtkDICOMAlgorithm
38 {
39 public:
41 
44 
46  void PrintSelf(ostream& os, vtkIndent indent) VTK_DICOM_OVERRIDE;
47 
49  void SetOutputScalarType(int t);
51  void SetOutputScalarTypeToFloat() {
52  this->SetOutputScalarType(VTK_FLOAT); }
53  void SetOutputScalarTypeToDouble() {
54  this->SetOutputScalarType(VTK_DOUBLE); }
55  int GetOutputScalarType() {
56  return this->OutputScalarType; }
58 
59 protected:
61  ~vtkDICOMApplyRescale() VTK_DICOM_OVERRIDE;
62 
63  int RequestInformation(
64  vtkInformation* request, vtkInformationVector** inputVector,
65  vtkInformationVector* outputVector) VTK_DICOM_OVERRIDE;
66 
67  int RequestData(
68  vtkInformation* request, vtkInformationVector** inputVector,
69  vtkInformationVector* outputVector) VTK_DICOM_OVERRIDE;
70 
71  void ThreadedRequestData(
72  vtkInformation *request, vtkInformationVector **inputVector,
73  vtkInformationVector *outputVector, vtkImageData ***inData,
74  vtkImageData **outData, int ext[6], int id) VTK_DICOM_OVERRIDE;
75 
76  vtkDICOMRealWorldMapping *Mapping;
77  int OutputScalarType;
78 
79 private:
80 #ifdef VTK_DICOM_DELETE
81  vtkDICOMApplyRescale(const vtkDICOMApplyRescale&) VTK_DICOM_DELETE;
82  void operator=(const vtkDICOMApplyRescale&) VTK_DICOM_DELETE;
83 #else
85  void operator=(const vtkDICOMApplyRescale&) = delete;
86 #endif
87 };
88 
89 #endif // vtkDICOMApplyRescale_h
Superclass for DICOM image filters.
Definition: vtkDICOMAlgorithm.h:49
Convert pixels to real-world values.
Definition: vtkDICOMApplyRescale.h:38
static vtkDICOMApplyRescale * New()
Static method for construction.
void PrintSelf(ostream &os, vtkIndent indent) VTK_DICOM_OVERRIDE
Print information about this object.