+ ValEntry *InsertValEntry(std::string const &value,
+ uint16_t group, uint16_t elem,
+ TagName const &vr = GDCM_UNKNOWN);
+ BinEntry *InsertBinEntry(uint8_t *binArea, int lgth,
+ uint16_t group, uint16_t elem,
+ TagName const &vr = GDCM_UNKNOWN);
+ SeqEntry *InsertSeqEntry(uint16_t group, uint16_t elem);
+ /// tells us if the set contains no entry
+ virtual bool IsEmpty() = 0;
+ virtual bool CheckIfEntryExist(uint16_t group, uint16_t elem);
+
+// DocEntry related utilities
+ ValEntry *NewValEntry(uint16_t group,uint16_t elem,
+ TagName const &vr = GDCM_UNKNOWN);
+ BinEntry *NewBinEntry(uint16_t group, uint16_t elem,
+ TagName const &vr = GDCM_UNKNOWN);
+ SeqEntry *NewSeqEntry(uint16_t group, uint16_t elem);
+
+// DictEntry related utilities
+ DictEntry *NewVirtualDictEntry(uint16_t group,uint16_t elem,
+ TagName const &vr = GDCM_UNKNOWN,
+ TagName const &vm = GDCM_UNKNOWN,
+ TagName const &name = GDCM_UNKNOWN );