X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=sidebyside;f=src%2FgdcmObject.h;h=f236d5915ccabffb8924963a07f0774c03e53e18;hb=399e06b19e761cf5a296a4ac091d653bbf99abe1;hp=77c2aab19db24f81dc3f3c33d2ed84aa49a59499;hpb=76f7307f9485e39bba565423a91989f8c9c18c21;p=gdcm.git diff --git a/src/gdcmObject.h b/src/gdcmObject.h index 77c2aab1..f236d591 100644 --- a/src/gdcmObject.h +++ b/src/gdcmObject.h @@ -8,21 +8,84 @@ #include "gdcmCommon.h" #include "gdcmHeaderEntry.h" #include "gdcmParser.h" - +#include "gdcmDicomDirElement.h" //----------------------------------------------------------------------------- class gdcmObject; typedef std::list ListContent; //----------------------------------------------------------------------------- -class gdcmObject { +class GDCM_EXPORT gdcmObject +{ public: + gdcmObject(ListTag::iterator begin,ListTag::iterator end, + TagHeaderEntryHT *ptagHT, ListTag *plistEntries); + ~gdcmObject(void); + + void SetPrintLevel(int level) { printLevel = level; }; + virtual void Print(std::ostream &os = std::cout); + std::string GetEntryByNumber(guint16 group, guint16 element); std::string GetEntryByName(TagName name); + bool SetEntryByNumber(std::string val,guint16 group,guint16 element); + + TagHeaderEntryHT GetEntry(void); + ListTag GetListEntry(void); +/** + * \ingroup gdcmObject + * \brief returns an iterator on the first Header Entry (i.e Dicom Element), + * inside the DICOMDIR chained list, + * related to this 'Object' + * @return + */ + ListTag::iterator debut(void) + { return(beginObj);} +/** + * \ingroup gdcmObject + * \brief returns an iterator on the last Header Entry (i.e Dicom Element), + * inside the DICOMDIR chained list, + * related to this 'Object' + * @return + */ + ListTag::iterator fin (void) + { return(endObj); } + +protected: + +void FillObject(std::list elemList); +/** +* \brief iterator on the first Header Entry (i.e Dicom Element), +* inside the DICOMDIR chained list, +* related to this 'Object' +*/ ListTag::iterator beginObj; +/** +* \brief iterator on the last Header Entry (i.e Dicom Element), +* inside the DICOMDIR chained list, +* related to this 'Object' +*/ ListTag::iterator endObj; +/** +* \brief pointer to the HTable of the gdcmParser, +* (because we don't know it within any gdcmObject) +*/ + TagHeaderEntryHT *ptagHT; +/** +* \brief pointer to the Chained List of the gdcmParser, +* (because we don't know it within any gdcmObject) +*/ + ListTag *plistEntries; +/** +* \brief +*/ + int printLevel; -protected: +/// used to pass variables to FillObject function +/// Work as 'global' variables + std::list::iterator debInsertion, finInsertion, i,j; + +private: + }; //-----------------------------------------------------------------------------