X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmDocEntry.h;h=11d2b0bf5970469e613e36f2d6234f78ac779c25;hb=45a9005ae5c1975bbe932e43c8080a83c9daf29e;hp=d165fd40b437cb5b5cf0ef26b1ca287fb33a445e;hpb=98b5c3d02083ad65fce19ff79007fcc3f370e7c5;p=gdcm.git diff --git a/src/gdcmDocEntry.h b/src/gdcmDocEntry.h index d165fd40..11d2b0bf 100644 --- a/src/gdcmDocEntry.h +++ b/src/gdcmDocEntry.h @@ -1,5 +1,21 @@ -// gdcmDocEntry.h -//----------------------------------------------------------------------------- +/*========================================================================= + + Program: gdcm + Module: $RCSfile: gdcmDocEntry.h,v $ + Language: C++ + Date: $Date: 2004/06/22 13:47:33 $ + Version: $Revision: 1.10 $ + + Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de + l'Image). All rights reserved. See Doc/License.txt or + http://www.creatis.insa-lyon.fr/Public/Gdcm/License.htm for details. + + This software is distributed WITHOUT ANY WARRANTY; without even + the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR + PURPOSE. See the above copyright notices for more information. + +=========================================================================*/ + #ifndef GDCMDocEntry_H #define GDCMDocEntry_H @@ -7,8 +23,11 @@ #include #include "gdcmDictEntry.h" -//#include "gdcmValEntry.h" + class gdcmHeader; +class gdcmValEntry; +class gdcmBinEntry; +class gdcmSeqEntry; //----------------------------------------------------------------------------- /** @@ -25,7 +44,7 @@ public: /// Returns the Dicom Element number of the current Dicom Header Entry inline guint16 GetElement(void) { return entry->GetElement();}; - + /// Returns the 'key' of the current Dicom Header Entry inline std::string GetKey(void) { return entry->GetKey(); }; @@ -44,7 +63,7 @@ public: inline size_t GetOffset(void) { return Offset; }; /// \brief Returns the actual value length of the current Dicom Header Entry - /// \warning this value is not *allways* the one stored in the Dicom Header + /// \warning this value is not *always* the one stored in the Dicom Header /// in case of well knowned bugs inline guint32 GetLength(void) { return UsableLength; }; @@ -105,11 +124,10 @@ public: int GetPrintLevel(void) { return(printLevel); }; virtual void Print (std::ostream & os = std::cout); + virtual void Write(FILE *fp, FileType filetype); void gdcmDocEntry::PrintCommonPart(std::ostream & os); - - /// Gets the depth level of a Dicom Header Entry embedded in a SeQuence - inline int GetSQDepthLevel(void) { return (SQDepthLevel); }; + void gdcmDocEntry::WriteCommonPart(FILE *fp, FileType filetype); guint32 GetFullLength(void); @@ -118,23 +136,23 @@ public: bool isItemDelimitor(); bool isSequenceDelimitor(); - inline int GetDepthLevel(void) - {return(SQDepthLevel);} - void SetDepthLevel(int depth) - {SQDepthLevel = depth;} + /// \brief Gets the depth level of a Dicom header entry embedded in + /// a SeQuence + inline int GetDepthLevel(void) {return(SQDepthLevel);} + + /// \brief Sets the depth level of a Dicom header entry embedded in + /// a SeQuence + inline void SetDepthLevel(int depth) {SQDepthLevel = depth;} private: // FIXME: In fact we should be more specific and use : // friend gdcmDocEntry * gdcmHeader::ReadNextElement(void); - friend class gdcmHeader; - - /// Sets the depth level of a Dicom Header Entry embedded in a SeQuence - inline void SetSQDepthLevel(int depthLevel) { SQDepthLevel = depthLevel; }; - + friend class gdcmHeader; protected: // Variables + /// \brief pointer to the underlying Dicom dictionary element gdcmDictEntry *entry; /// \brief Updated from ReadLength, by FixFoungLentgh() for fixing a bug