-// gdcmValEntry.h
-//-----------------------------------------------------------------------------
-#ifndef GDCMValEntry_H
-#define GDCMValEntry_H
+/*=========================================================================
+
+ Program: gdcm
+ Module: $RCSfile: gdcmValEntry.h,v $
+ Language: C++
+ Date: $Date: 2005/01/06 20:03:28 $
+ Version: $Revision: 1.34 $
+
+ 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.html 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.
+
+=========================================================================*/
-#include <iostream>
-#include <stdio.h>
+#ifndef GDCMVALENTRY_H
+#define GDCMVALENTRY_H
#include "gdcmDocEntry.h"
+
+#include <iostream>
+
+namespace gdcm
+{
//-----------------------------------------------------------------------------
/**
- * \ingroup gdcmBinEntry
+ * \ingroup ValEntry
* \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 'non string' value
*/
-class GDCM_EXPORT gdcmValEntry : public gdcmDocEntry {
-
+class GDCM_EXPORT ValEntry : public DocEntry
+{
public:
-
- gdcmValEntry(gdcmDictEntry* e);
- ~gdcmValEntry(void);
+ ValEntry(DictEntry *e);
+ ValEntry(DocEntry *d);
+ ~ValEntry();
/// \brief Returns the 'Value' (e.g. "Dupond Marcel") converted into a
- /// 'string', if it's stored as an integer in the Dicom Header of the
- /// current Dicom Header Entry
- inline std::string GetValue(void) { return value; };
+ /// 'string', event if it's stored as an integer in the header of the
+ /// current Dicom Document Entry
+ std::string const &GetValue() const { return Value; };
- /// Sets the value (string) of the current Dicom Header Entry
- inline void SetValue(std::string val) { value = val; };
-
-protected:
-
-private:
+ /// Sets the value (string) of the current Dicom Document Entry.
+ /// The size is updated
+ virtual void SetValue(std::string const &val);
-// Variables
-
- /// \brief Header Entry value, stored as a std::string (VR will be used,
- /// later, to decode)
- std::string value;
+ virtual void Print(std::ostream &os = std::cout);
+ virtual void WriteContent(std::ofstream *fp, FileType filetype);
+protected:
+ /// Sets the value (string) of the current Dicom Document Entry
+ void SetValueOnly(std::string const &val) { Value = val; };
+
+private:
+// Members :
+
+ /// \brief Document Entry value, internaly represented as a std::string
+ /// The Value Representation (\ref VR) is independently used
+ /// in order to interpret (decode) this field.
+ std::string Value;
};
+} // end namespace gdcm
//-----------------------------------------------------------------------------
#endif