X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmValEntry.h;h=aeca4b40d0af067bede9f5f8828f07e13befa117;hb=09eb38b5b2fe392e64390b7c2eadf822541f92ba;hp=ddf3a73171bcc2388d198f3962aa233752338b14;hpb=fd37aa842b5d31ca266b6bda8a77f3201d02338d;p=gdcm.git diff --git a/src/gdcmValEntry.h b/src/gdcmValEntry.h index ddf3a731..aeca4b40 100644 --- a/src/gdcmValEntry.h +++ b/src/gdcmValEntry.h @@ -3,8 +3,8 @@ Program: gdcm Module: $RCSfile: gdcmValEntry.h,v $ Language: C++ - Date: $Date: 2004/09/27 08:39:08 $ - Version: $Revision: 1.23 $ + Date: $Date: 2005/03/22 11:39:04 $ + Version: $Revision: 1.41 $ Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de l'Image). All rights reserved. See Doc/License.txt or @@ -19,46 +19,63 @@ #ifndef GDCMVALENTRY_H #define GDCMVALENTRY_H -#include -#include - #include "gdcmDocEntry.h" +#include "gdcmContentEntry.h" + +#include +namespace gdcm +{ //----------------------------------------------------------------------------- /** - * \ingroup gdcmValEntry - * \brief The dicom header of a Dicom file contains a set of such entries - * (when successfuly parsed against a given Dicom dictionary) + * \brief Any Dicom Document (File or DicomDir) contains + * a set of DocEntry - Dicom entries - + * ValEntry is an elementary DocEntry (i.e. a ContentEntry, + * as opposed to SeqEntry) + * whose content is 'std::string representable' : characters, + * or integers (loaded in memory as a std::string) + * ValEntry is a specialisation of ContentEntry */ -class GDCM_EXPORT gdcmValEntry : public gdcmDocEntry +class GDCM_EXPORT ValEntry : public ContentEntry { public: - gdcmValEntry(gdcmDictEntry* e); - gdcmValEntry(gdcmDocEntry* d); - virtual ~gdcmValEntry(); - /// \brief Returns the 'Value' (e.g. "Dupond Marcel") converted into a - /// 'string', if it's stored as an integer in the header of the - /// current Dicom Document Entry - std::string GetValue() { return Value; }; - - /// Sets the value (string) of the current Dicom Document Entry - void SetValue(std::string const & val) { Value = val; }; + // Contructors and Destructor are public. + ValEntry(DictEntry *e); + ValEntry(DocEntry *d); + + ~ValEntry(); + + // Other accessors are inherited from gdcm::ContentEntry + + void Print(std::ostream &os = std::cout, std::string const &indent = ""); - virtual void Print(std::ostream &os = std::cout); - virtual void Write(FILE *fp, FileType filetype); + void WriteContent(std::ofstream *fp, FileType filetype); + + /// Sets the value (string) of the current Dicom entry. + /// The size is updated + void SetValue(std::string const &val); + + + /// \brief returns the size threshold above which an element value + /// will NOT be *printed* in order no to polute the screen output + static long GetMaxSizePrintEntry() { return ValEntry::MaxSizePrintEntry; }; + + static void SetMaxSizePrintEntry(long); protected: private: -// Members : - - /// \brief Document Entry value, internaly represented as a std::string - /// The Value Representation (\ref gdcmVR) is independently used - /// in order to interpret (decode) this field. - std::string Value; + + /// \brief Size threshold above which an element val + /// By default, this upper bound is fixed to 64 bytes. + + static uint32_t MaxSizePrintEntry; + }; +} // end namespace gdcm + //----------------------------------------------------------------------------- #endif