-// $Header: /cvs/public/gdcm/src/Attic/gdcmElValSet.h,v 1.16 2003/07/23 08:43:03 jpr Exp $
+// $Header: /cvs/public/gdcm/src/Attic/gdcmElValSet.h,v 1.20 2004/01/12 13:12:28 regrain Exp $
#ifndef GDCMELVALSET_H
#define GDCMELVALSET_H
-#include <stdio.h> // FIXME For FILE on GCC only
-#include <map>
#include "gdcmCommon.h"
#include "gdcmElValue.h"
-////////////////////////////////////////////////////////////////////////////
-// Container for a set of successfully parsed ElValues.
+#include <stdio.h>
+#include <map>
+#include <list> // for linking together *all* the Dicom Elements
-typedef std::map<TagKey, gdcmElValue*> TagElValueHT;
+/*
+ * Container for a set of successfully parsed ElValues.
+ */
+typedef std::map<TagKey, gdcmElValue*> TagElValueHT;
typedef std::map<std::string, gdcmElValue*> TagElValueNameHT;
+
+typedef std::string GroupKey;
+typedef std::map<GroupKey, int> GroupHT;
+
+typedef std::list<gdcmElValue*> ListTag; // for linking together the Elements
class GDCM_EXPORT gdcmElValSet {
TagElValueHT tagHt; // Both accesses with a TagKey or with a
TagElValueNameHT NameHt; // the DictEntry.Name are required.
-
- typedef std::string GroupKey;
- typedef std::map<GroupKey, int> GroupHT;
+ ListTag listElem;
+
public:
~gdcmElValSet();
void Add(gdcmElValue*);
std::string GetElValueByNumber(guint16 group, guint16 element);
std::string GetElValueByName (std::string);
- TagElValueHT & GetTagHt(void);
+ TagElValueHT & GetTagHt(void) {return tagHt;};
+ ListTag & GetListElem(void) {return listElem;};
int SetElValueByNumber(std::string content, guint16 group, guint16 element);
int SetElValueByName (std::string content, std::string TagName);