X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmFile.h;h=73590e8651a47fd6f776f9a6fa68d29c9e9cabba;hb=852f9b2a0a83c7c9f5d051536ac6803e37c24a0b;hp=2109cb508936d5a09cfecb178d038226e3dd37f4;hpb=9cd51041e87ba178719523a35ef7ad823924cbf6;p=gdcm.git diff --git a/src/gdcmFile.h b/src/gdcmFile.h index 2109cb50..73590e86 100644 --- a/src/gdcmFile.h +++ b/src/gdcmFile.h @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmFile.h,v $ Language: C++ - Date: $Date: 2005/07/19 15:19:26 $ - Version: $Revision: 1.110 $ + Date: $Date: 2005/10/25 14:52:34 $ + Version: $Revision: 1.118 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -22,8 +22,11 @@ #include "gdcmDebug.h" #include "gdcmDocument.h" + + namespace gdcm { + class RLEFramesInfo; class JPEGFragmentsInfo; @@ -85,7 +88,7 @@ enum ModalityType { * dicom files according to header information e.g. to create a file hierarchy * reflecting the Patient/Study/Serie informations, or extracting a given * SerieId. Accessing the content (image[s] or volume[s]) is beyond the - * functionality of this class and belongs to gdmcFile. + * functionality of this class and belongs to gdcm::FileHelper. * \note The various entries of the explicit value representation (VR) shall * be managed within a dictionary which is shared by all File * instances. @@ -95,10 +98,10 @@ enum ModalityType { */ class GDCM_EXPORT File : public Document { + gdcmTypeMacro(File); + public: - File(); - GDCM_LEGACY(File( std::string const &filename )); - ~File(); + static File *New() {return new File();} // Loading GDCM_LEGACY(bool Load( std::string const &filename )); @@ -122,7 +125,7 @@ public: float GetYOrigin(); float GetZOrigin(); - void GetImageOrientationPatient( float iop[6] ); + bool GetImageOrientationPatient( float iop[6] ); int GetBitsStored(); int GetBitsAllocated(); @@ -164,7 +167,7 @@ public: void AddAnonymizeElement (uint16_t group, uint16_t elem, std::string const &value); /// Clears the list of elements to be anonymized - void ClearAnonymizeList() { AnonymizeList.clear(); } + void ClearAnonymizeList() { UserAnonymizeList.clear(); } void AnonymizeNoLoad(); /// Replace patient's own information by info from the Anonymization list bool AnonymizeFile(); @@ -172,7 +175,9 @@ public: bool Write(std::string fileName, FileType filetype); protected: - + File(); + ~File(); + /// Store the RLE frames info obtained during parsing of pixels. RLEFramesInfo *RLEInfo; /// Store the JPEG fragments info obtained during parsing of pixels. @@ -195,7 +200,8 @@ private: void ComputeJPEGFragmentInfo(); bool ReadTag(uint16_t, uint16_t); uint32_t ReadTagLength(uint16_t, uint16_t); - void ReadAndSkipEncapsulatedBasicOffsetTable(); + void ReadEncapsulatedBasicOffsetTable(); + uint32_t *BasicOffsetTableItemValue; }; } // end namespace gdcm