GDCM: vtkGDCMPolyDataReader.h Source File

GDCM 3.2.8

vtkGDCMPolyDataReader.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: GDCM (Grassroots DICOM). A DICOM library
4
5 Copyright (c) 2006-2011 Mathieu Malaterre
6 All rights reserved.
7 See Copyright.txt or http://gdcm.sourceforge.net/Copyright.html 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=========================================================================*/
14// .NAME vtkGDCMPolyDataReader - read DICOM PolyData files (Contour Data...)
15// .SECTION Description
16// For now only support RTSTRUCT (RT Structure Set Storage)
17// .SECTION TODO
18// Need to do the same job for DVH Sequence/DVH Data...
19// .SECTION Warning
20// When using vtkGDCMPolyDataReader in conjunction with vtkGDCMImageReader
21// it is *required* that FileLowerLeft is set to ON as coordinate system
22// would be inconsistent in between the two data structures.
23//
24// .SECTION See Also
25// vtkGDCMImageReader vtkGDCMPolyDataWriter vtkRTStructSetProperties
26
27
28#ifndef VTKGDCMPOLYDATAREADER_H
29#define VTKGDCMPOLYDATAREADER_H
30
31#include "vtkgdcmModule.h"
32#include "vtkPolyDataAlgorithm.h"
33
34class vtkMedicalImageProperties;
35class vtkRTStructSetProperties;
36//BTX
37namespace gdcm { class Reader; }
38//ETX
39 class VTKGDCM_EXPORT vtkGDCMPolyDataReader : public vtkPolyDataAlgorithm
40{
41public:
42 static vtkGDCMPolyDataReader *New();
43 vtkTypeMacro(vtkGDCMPolyDataReader,vtkPolyDataAlgorithm);
44 virtual void PrintSelf(ostream& os, vtkIndent indent);
45
46 // Description:
47 // Set/Get the filename of the file to be read
48 vtkSetStringMacro(FileName);
49 vtkGetStringMacro(FileName);
50
51 // Description:
52 // Get the medical image properties object
53 vtkGetObjectMacro(MedicalImageProperties, vtkMedicalImageProperties);
54
55 vtkGetObjectMacro(RTStructSetProperties, vtkRTStructSetProperties);
56
57protected:
58 vtkGDCMPolyDataReader();
59 ~vtkGDCMPolyDataReader();
60
61 char *FileName;
62 vtkMedicalImageProperties *MedicalImageProperties;
63 vtkRTStructSetProperties *RTStructSetProperties;
64//BTX
65 void FillMedicalImageInformation(const gdcm::Reader &reader);
66//ETX
67
68 int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *);
69 int RequestInformation(
70 vtkInformation *vtkNotUsed(request),
71 vtkInformationVector **vtkNotUsed(inputVector),
72 vtkInformationVector *outputVector);
73//BTX
74 int RequestInformation_RTStructureSetStorage(gdcm::Reader const & reader);
75 int RequestData_RTStructureSetStorage(gdcm::Reader const &reader, vtkInformationVector *outputVector);
76 int RequestInformation_HemodynamicWaveformStorage(gdcm::Reader const & reader);
77 int RequestData_HemodynamicWaveformStorage(gdcm::Reader const &reader, vtkInformationVector *outputVector);
78//ETX
79
80private:
81 vtkGDCMPolyDataReader(const vtkGDCMPolyDataReader&); // Not implemented.
82 void operator=(const vtkGDCMPolyDataReader&); // Not implemented.
83};
84
85#endif
gdcm::Reader
Reader ala DOM (Document Object Model).
Definition gdcmReader.h:54
vtkGDCMPolyDataReader::FillMedicalImageInformation
void FillMedicalImageInformation(const gdcm::Reader &reader)
vtkGDCMPolyDataReader::RTStructSetProperties
vtkRTStructSetProperties * RTStructSetProperties
Definition vtkGDCMPolyDataReader.h:63
vtkGDCMPolyDataReader::RequestData_HemodynamicWaveformStorage
int RequestData_HemodynamicWaveformStorage(gdcm::Reader const &reader, vtkInformationVector *outputVector)
vtkGDCMPolyDataReader::MedicalImageProperties
vtkMedicalImageProperties * MedicalImageProperties
Definition vtkGDCMPolyDataReader.h:62
vtkGDCMPolyDataReader::RequestData
int RequestData(vtkInformation *, vtkInformationVector **, vtkInformationVector *)
vtkGDCMPolyDataReader::RequestInformation
int RequestInformation(vtkInformation *vtkNotUsed(request), vtkInformationVector **vtkNotUsed(inputVector), vtkInformationVector *outputVector)
vtkGDCMPolyDataReader::RequestInformation_HemodynamicWaveformStorage
int RequestInformation_HemodynamicWaveformStorage(gdcm::Reader const &reader)
vtkGDCMPolyDataReader::vtkGetObjectMacro
vtkGetObjectMacro(RTStructSetProperties, vtkRTStructSetProperties)
vtkGDCMPolyDataReader::RequestInformation_RTStructureSetStorage
int RequestInformation_RTStructureSetStorage(gdcm::Reader const &reader)
vtkGDCMPolyDataReader::FileName
char * FileName
Definition vtkGDCMPolyDataReader.h:61
vtkGDCMPolyDataReader::PrintSelf
virtual void PrintSelf(ostream &os, vtkIndent indent)
vtkGDCMPolyDataReader::RequestData_RTStructureSetStorage
int RequestData_RTStructureSetStorage(gdcm::Reader const &reader, vtkInformationVector *outputVector)
vtkGDCMPolyDataReader::New
static vtkGDCMPolyDataReader * New()
vtkGDCMPolyDataReader::~vtkGDCMPolyDataReader
~vtkGDCMPolyDataReader()
vtkGDCMPolyDataReader::vtkGetStringMacro
vtkGetStringMacro(FileName)
vtkGDCMPolyDataReader::vtkGetObjectMacro
vtkGetObjectMacro(MedicalImageProperties, vtkMedicalImageProperties)
vtkGDCMPolyDataReader::vtkSetStringMacro
vtkSetStringMacro(FileName)
vtkGDCMPolyDataReader::vtkTypeMacro
vtkTypeMacro(vtkGDCMPolyDataReader, vtkPolyDataAlgorithm)
vtkGDCMPolyDataReader::vtkGDCMPolyDataReader
vtkGDCMPolyDataReader()
vtkRTStructSetProperties
Definition vtkRTStructSetProperties.h:29
gdcm
Definition gdcmASN1.h:21