Program: gdcm
Module: $RCSfile: vtkGdcmReader.h,v $
Language: C++
- Date: $Date: 2005/08/22 12:43:11 $
- Version: $Revision: 1.27 $
+ Date: $Date: 2005/08/31 15:54:51 $
+ Version: $Revision: 1.29 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
CoherentFileList = cfl; }
//ETX
- vtkSetMacro(AllowLightChecking, int);
- vtkGetMacro(AllowLightChecking, int);
- vtkBooleanMacro(AllowLightChecking, int);
+ vtkSetMacro(AllowLightChecking, bool);
+ vtkGetMacro(AllowLightChecking, bool);
+ vtkBooleanMacro(AllowLightChecking, bool);
//BTX
void SetUserFunction (VOID_FUNCTION_PUINT8_PFILE_POINTER userFunc )
// If this flag is set and the DICOM reader encounters a dicom file with
// lookup table the data will be kept as unsigned chars and a lookuptable
// will be exported and accessible through GetLookupTable()
- vtkSetMacro(AllowLookupTable, int);
- vtkGetMacro(AllowLookupTable, int);
- vtkBooleanMacro(AllowLookupTable, int);
+ vtkSetMacro(AllowLookupTable, bool);
+ vtkGetMacro(AllowLookupTable, bool);
+ vtkBooleanMacro(AllowLookupTable, bool);
vtkGetObjectMacro(LookupTable, vtkLookupTable);
-/**
- * \brief Sets the LoadMode as a boolean string.
- * NO_SEQ, NO_SHADOW, NO_SHADOWSEQ... (nothing more, right now)
+// FIXME : HOW to doxygen a VTM macro?
+/*
+ * \ brief Sets the LoadMode as a boolean string.
+ * gdcm.LD_NOSEQ, gdcm.LD_NOSHADOW, gdcm.LD_NOSHADOWSEQ...
+ * (nothing more, right now)
* WARNING : before using NO_SHADOW, be sure *all* your files
* contain accurate values in the 0x0000 element (if any)
* of *each* Shadow Group. The parser will fail if the size is wrong !
virtual void ExecuteInformation();
virtual void ExecuteData(vtkDataObject *output);
+
+ virtual void BuildData(vtkDataObject *output);
virtual void BuildFileListFromPattern();
- virtual int CheckFileCoherence();
- virtual int CheckFileCoherenceLight();
- virtual int CheckFileCoherenceAlreadyDone();
+ virtual void LoadFileInformation();
+ virtual void UpdateFileInformation();
+ //BTX
+ virtual void GetFileInformation(gdcm::File *file);
+ virtual bool TestFileInformation(gdcm::File *file);
+ //ETX
+
private:
void RemoveAllInternalFileName(void);
- void AddInternalFileName(const char* name);
+ void AddInternalFileName(const char *name);
+ void RemoveAllInternalFile(void);
//BTX
- size_t LoadImageInMemory(std::string fileName, unsigned char *dest,
- const unsigned long updateProgressTarget,
- unsigned long &updateProgressCount);
-
- size_t LoadImageInMemory(gdcm::File *f, unsigned char *dest,
- const unsigned long updateProgressTarget,
- unsigned long &updateProgressCount);
-
- size_t DoTheLoadingJob (gdcm::File *f,
- unsigned char *dest,
- const unsigned long updateProgressTarget,
- unsigned long &updateProgressCount);
+ void IncrementProgress(const unsigned long updateProgressTarget,
+ unsigned long &updateProgressCount);
+ /*void LoadImageInMemory(std::string fileName, unsigned char *dest,
+ const unsigned long updateProgressTarget,
+ unsigned long &updateProgressCount);*/
+
+ void LoadImageInMemory(gdcm::File *f, unsigned char *dest,
+ const unsigned long updateProgressTarget,
+ unsigned long &updateProgressCount);
//ETX
// Variables
+ //BTX
+ typedef std::vector<gdcm::File *> gdcmFileList;
+ //ETX
+
vtkLookupTable *LookupTable;
vtkTimeStamp fileTime;
- int AllowLookupTable;
- int AllowLightChecking;
+ bool AllowLookupTable;
+ bool AllowLightChecking;
//BTX
// Number of columns of the image/volume to be loaded
int NumColumns;
// Number of lines of the image/volume to be loaded
int NumLines;
+ // Number of lines of the image/volume to be loaded
+ int NumPlanes;
// Total number of planes (or images) of the stack to be build.
int TotalNumberOfPlanes;
// Number of scalar components of the image to be loaded (1=monochrome 3=rgb)
// List of filenames to be read in order to build a stack of images
// or volume. The order in the list shall be the order of the images.
std::list<std::string> FileNameList;
+ gdcmFileList *CoherentFileList;
+ bool OwnFile;
// List of filenames created in ExecuteInformation and used in
// ExecuteData.
// Otherwise, InternalFileNameList correspond to the list of
// files patterned
std::list<std::string> InternalFileNameList;
- std::vector<gdcm::File* > *CoherentFileList;
+ gdcmFileList InternalFileList;
+ bool Execution;
//ETX