X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FgdcmObject.h;h=04363a85a1341179f5ad7e47df3f824b1f848278;hb=43d88e7ca1386013ee755c4eee3dc0519d335ec3;hp=f2f65c064ec6212ac2ad95a4a8a2711bf113da52;hpb=b0ab0e6b1085cf01026671066bcfe47a886cc752;p=gdcm.git diff --git a/src/gdcmObject.h b/src/gdcmObject.h index f2f65c06..04363a85 100644 --- a/src/gdcmObject.h +++ b/src/gdcmObject.h @@ -1,34 +1,65 @@ -// gdcmObject.h -//----------------------------------------------------------------------------- +/*========================================================================= + + Program: gdcm + Module: $RCSfile: gdcmObject.h,v $ + Language: C++ + Date: $Date: 2004/08/26 15:29:53 $ + Version: $Revision: 1.19 $ + + 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.htm 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. + +=========================================================================*/ + #ifndef GDCMOBJECT_H #define GDCMOBJECT_H #include #include #include "gdcmCommon.h" - +#include "gdcmDocEntry.h" +#include "gdcmDocument.h" +#include "gdcmDicomDirElement.h" +#include "gdcmSQItem.h" //----------------------------------------------------------------------------- - -typedef std::list lstring; +class gdcmObject; +typedef std::list ListContent; //----------------------------------------------------------------------------- - -class gdcmObject { +/** + * \ingroup gdcmObject + * \brief Base object + */ +class GDCM_EXPORT gdcmObject : public gdcmSQItem +{ public: - virtual std::string GetEntryByNumber(guint16 group, guint16 element)=0; - virtual std::string GetEntryByName(TagName name)=0; + gdcmObject(TagDocEntryHT *ptagHT, int depth = 0); + virtual ~gdcmObject(); + /** + * \brief Sets the print level for the Dicom Header + * \note 0 for Light Print; 1 for 'medium' Print, 2 for Heavy + */ + void SetPrintLevel(int level) { PrintLevel = level; }; + + TagDocEntryHT GetEntry(); + void FillObject(std::list elemList); protected: - //to modify (I don't know the list type) : both iterators (beginning and end) - lstring::iterator beginIter; - lstring::iterator endIter; - - //pointer to the data list - lstring *objectData; + // Constructor and destructor are protected to avoid end user to + // instanciate from this class. + // NO ! gdcmDicomDir needs to instanciate it! +// Members : + ///\brief detail level to be printed + int PrintLevel; }; //-----------------------------------------------------------------------------