1 // $Header: /cvs/public/gdcm/vtk/vtkGdcmReader.h,v 1.10 2003/10/03 14:48:31 malaterre Exp $
3 #ifndef __vtkGdcmReader_h
4 #define __vtkGdcmReader_h
8 #include "vtkImageReader.h"
10 class VTK_EXPORT vtkGdcmReader : public vtkImageReader
13 static vtkGdcmReader *New() {return new vtkGdcmReader;};
14 vtkTypeMacro(vtkGdcmReader, vtkImageReader);
15 void PrintSelf(ostream& os, vtkIndent indent);
17 void RemoveAllFileName(void);
18 void AddFileName(const char* name);
19 void SetFileName(const char *name);
24 virtual void ExecuteInformation();
25 void ExecuteData(vtkDataObject *output);
26 void BuildFileListFromPattern();
27 int CheckFileCoherence();
30 void RemoveAllInternalFileName(void);
31 void AddInternalFileName(const char* name);
34 // Number of columns of the image/volume to be loaded
36 // Number of lines of the image/volume to be loaded
38 // Total number of planes (or images) of the stack to be build.
39 int TotalNumberOfPlanes;
40 // Number of scalar components of the image to be loaded (1=monochrome 3=rgb)
42 // Type of the image[s]: 8/16/32 bits, signed/unsigned:
43 std::string ImageType;
44 // Pixel size (in number of bytes):
46 // List of filenames to be read in order to build a stack of images
47 // or volume. The order in the list shall be the order of the images.
48 std::list<std::string> FileNameList;
50 // List of filenames created in ExecuteInformation and used in
52 // If FileNameList isn't empty, InternalFileNameList is a copy of
54 // Otherwise, InternalFileNameList correspond to the list of
56 std::list<std::string> InternalFileNameList;
58 size_t LoadImageInMemory(std::string FileName, unsigned char * Dest,
59 const unsigned long UpdateProgressTarget,
60 unsigned long & UpdateProgressCount);