X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmBinEntry.h;h=cff1942ba83eaa04fa6e06e484e6932905bbd29b;hb=fa8fa610de8d935491343df2d8a543ff6fdb6e69;hp=5191670a54b6872916e1d5ebf6f9d70c86edeace;hpb=e28b183ba68aa3cc84a44a779a31f9d906a1ad2f;p=gdcm.git diff --git a/src/gdcmBinEntry.h b/src/gdcmBinEntry.h index 5191670a..cff1942b 100644 --- a/src/gdcmBinEntry.h +++ b/src/gdcmBinEntry.h @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmBinEntry.h,v $ Language: C++ - Date: $Date: 2004/10/18 12:49:22 $ - Version: $Revision: 1.23 $ + Date: $Date: 2005/09/02 07:10:03 $ + Version: $Revision: 1.38 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -19,8 +19,7 @@ #ifndef GDCMBINENTRY_H #define GDCMBINENTRY_H -#include "gdcmValEntry.h" - +#include "gdcmContentEntry.h" #include namespace gdcm @@ -28,32 +27,44 @@ namespace gdcm //----------------------------------------------------------------------------- /** - * \ingroup BinEntry - * \brief The dicom header of a Dicom file contains a set of such entries - * (when successfuly parsed against a given Dicom dictionary) - * This one contains a 'string value'. + * \brief Any Dicom Document (File or DicomDir) contains + * a set of DocEntry - Dicom entries - + * BinEntry is an elementary DocEntry (i.e. a ContentEntry, + * as opposed to SeqEntry) whose content is non std::string + * representable + * BinEntry is a specialisation of ContentEntry */ -class GDCM_EXPORT BinEntry : public ValEntry + +class GDCM_EXPORT BinEntry : public ContentEntry { public: - BinEntry( DictEntry* e ); - BinEntry( DocEntry* d ); + BinEntry( DictEntry *e ); + BinEntry( DocEntry *d ); ~BinEntry(); - void Print( std::ostream &os = std::cout ); - void Write( FILE*, FileType ); - - /// \brief Returns the area value of the current Dicom Header Entry - /// when it's not string-translatable (e.g : a LUT table) - uint8_t* GetBinArea() { return BinArea; } - void SetBinArea( uint8_t* area ); - + void Print( std::ostream &os = std::cout, std::string const &indent = "" ); + + void WriteContent( std::ofstream *fp, FileType ft); + + /// \brief Returns the area value of the current Dicom Entry + /// when it's not string-translatable (e.g : LUT table, overlay, icon) + uint8_t *GetBinArea() { return BinArea; } + void SetBinArea( uint8_t *area, bool self = true ); + + /// \brief Sets SelfArea + void SetSelfArea(bool area) { SelfArea = area; } + /// \brief Returns SelfArea + bool IsSelfArea() { return SelfArea; } + private: - /// \brief unsecure memory area to hold 'non string' values + /// \brief memory area to hold 'non std::string' representable values /// (ie : Lookup Tables, overlays, icons) - uint8_t* BinArea; + uint8_t *BinArea; + /// \brief Whether BinEntry has its own BinArea or not + bool SelfArea; }; + } // end namespace gdcm //----------------------------------------------------------------------------- #endif