68#ifndef VTKGDCMIMAGEREADER2_H
69#define VTKGDCMIMAGEREADER2_H
71#include "vtkgdcmModule.h"
72#include "vtkMedicalImageReader2.h"
73#include "vtkImageData.h"
82#ifndef VTK_INVERSE_LUMINANCE
83#define VTK_INVERSE_LUMINANCE 5
85#ifndef VTK_LOOKUP_TABLE
86#define VTK_LOOKUP_TABLE 6
96namespace gdcm {
class ImageReader; }
130 vtkGetObjectMacro(DirectionCosines, vtkMatrix4x4);
140 vtkGetMacro(LoadOverlays,
int);
141 vtkSetMacro(LoadOverlays,
int);
142 vtkBooleanMacro(LoadOverlays,
int);
149 vtkGetMacro(LoadIconImage,
int);
150 vtkSetMacro(LoadIconImage,
int);
151 vtkBooleanMacro(LoadIconImage,
int);
158 vtkGetMacro(LossyFlag,
int);
159 vtkSetMacro(LossyFlag,
int);
160 vtkBooleanMacro(LossyFlag,
int);
168 vtkGetMacro(NumberOfOverlays,
int);
176 vtkGetMacro(NumberOfIconImages,
int);
195 vtkGetMacro(ApplyLookupTable,
int);
196 vtkSetMacro(ApplyLookupTable,
int);
197 vtkBooleanMacro(ApplyLookupTable,
int);
204 vtkGetMacro(ApplyYBRToRGB,
int)
205 vtkSetMacro(ApplyYBRToRGB,
int)
206 vtkBooleanMacro(ApplyYBRToRGB,
int);
215 vtkGetMacro(ImageFormat,
int);
224 vtkGetMacro(PlanarConfiguration,
int);
236 vtkGetVector3Macro(ImagePositionPatient,
double);
237 vtkGetVector6Macro(ImageOrientationPatient,
double);
244 vtkGetObjectMacro(Curve,vtkPolyData);
245 virtual
void SetCurve(vtkPolyData *pd);
256 vtkGetMacro(Shift,
double);
257 vtkGetMacro(Scale,
double);
264 vtkSetVector6Macro(ImageOrientationPatient,
double);
267 void FillMedicalImageInformation(const
gdcm::ImageReader &reader);
269 int RequestInformationCompat();
270 int RequestDataCompat();
272 int ProcessRequest(vtkInformation* request,
273 vtkInformationVector** inputVector,
274 vtkInformationVector* outputVector);
275 int RequestInformation(vtkInformation *request,
276 vtkInformationVector **inputVector,
277 vtkInformationVector *outputVector);
278 int RequestData(vtkInformation *request,
279 vtkInformationVector **inputVector,
280 vtkInformationVector *outputVector);
283 vtkMatrix4x4 *DirectionCosines;
285 int NumberOfOverlays;
287 int NumberOfIconImages;
288 int IconImageDataExtent[6];
289 double ImagePositionPatient[3];
290 double ImageOrientationPatient[6];
295 int ApplyInverseVideo;
296 int ApplyLookupTable;
299 int ApplyPlanarConfiguration;
302 int LoadSingleFile(const
char *filename,
char *pointer,
unsigned long &outlen);
306 int IconDataScalarType;
307 int IconNumberOfScalarComponents;
308 int PlanarConfiguration;
314 void SetFilePrefix(const
char *) {}
315 vtkGetStringMacro(FilePrefix);
317 vtkGetStringMacro(FilePattern);
read DICOM Image files (Pixel Data)
virtual void PrintSelf(ostream &os, vtkIndent indent)
virtual int CanReadFile(const char *fname)
virtual void SetMedicalImageProperties(vtkMedicalImageProperties *pd)
static vtkGDCMImageReader2 * New()
virtual const char * GetFileExtensions()
Valid extensions.
vtkImageData * GetOverlay(int i)
void SetFilePattern(const char *)
virtual const char * GetDescriptiveName()
A descriptive name for this format.
vtkAlgorithmOutput * GetOverlayPort(int index)
Get Overlay/IconImage Remember to ALWAYS use those methods in your code, as the internal number for t...
vtkImageData * GetIconImage()
vtkAlgorithmOutput * GetIconImagePort()