X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmBinEntry.h;h=cff1942ba83eaa04fa6e06e484e6932905bbd29b;hb=fa8fa610de8d935491343df2d8a543ff6fdb6e69;hp=5381b4c5a8e49ff1f08c1b42a61d062efc100946;hpb=43d88e7ca1386013ee755c4eee3dc0519d335ec3;p=gdcm.git diff --git a/src/gdcmBinEntry.h b/src/gdcmBinEntry.h index 5381b4c5..cff1942b 100644 --- a/src/gdcmBinEntry.h +++ b/src/gdcmBinEntry.h @@ -3,12 +3,12 @@ Program: gdcm Module: $RCSfile: gdcmBinEntry.h,v $ Language: C++ - Date: $Date: 2004/09/23 10:17:26 $ - Version: $Revision: 1.19 $ + 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 - http://www.creatis.insa-lyon.fr/Public/Gdcm/License.htm for details. + http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details. This software is distributed WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR @@ -19,47 +19,53 @@ #ifndef GDCMBINENTRY_H #define GDCMBINENTRY_H +#include "gdcmContentEntry.h" #include -#include -#include "gdcmValEntry.h" +namespace gdcm +{ //----------------------------------------------------------------------------- /** - * \ingroup gdcmBinEntry - * \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 gdcmBinEntry : public gdcmValEntry + +class GDCM_EXPORT BinEntry : public ContentEntry { public: + BinEntry( DictEntry *e ); + BinEntry( DocEntry *d ); - gdcmBinEntry(gdcmDictEntry* e); - gdcmBinEntry(gdcmDocEntry* d); - - ~gdcmBinEntry(); + ~BinEntry(); - void Print(std::ostream &os = std::cout); - void Write(FILE*, FileType); + void Print( std::ostream &os = std::cout, std::string const &indent = "" ); - /// \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 ); - -protected: + void WriteContent( std::ofstream *fp, FileType ft); -private: + /// \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 ); -// Variables - - /// \brief unsecure memory area to hold 'non string' values - /// (ie : Lookup Tables, overlays, icons) - uint8_t* BinArea; + /// \brief Sets SelfArea + void SetSelfArea(bool area) { SelfArea = area; } + /// \brief Returns SelfArea + bool IsSelfArea() { return SelfArea; } +private: + /// \brief memory area to hold 'non std::string' representable values + /// (ie : Lookup Tables, overlays, icons) + uint8_t *BinArea; + /// \brief Whether BinEntry has its own BinArea or not + bool SelfArea; }; +} // end namespace gdcm //----------------------------------------------------------------------------- #endif