00001 /*========================================================================= 00002 00003 Program: gdcm 00004 Module: $RCSfile: gdcmContentEntry.h,v $ 00005 Language: C++ 00006 Date: $Date: 2005/02/02 16:18:48 $ 00007 Version: $Revision: 1.5 $ 00008 00009 Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de 00010 l'Image). All rights reserved. See Doc/License.txt or 00011 http://www.creatis.insa-lyon.fr/Public/Gdcm/License.html for details. 00012 00013 This software is distributed WITHOUT ANY WARRANTY; without even 00014 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00015 PURPOSE. See the above copyright notices for more information. 00016 00017 =========================================================================*/ 00018 00019 #ifndef GDCMCONTENTENTRY_H 00020 #define GDCMCONTENTENTRY_H 00021 00022 #include "gdcmDocEntry.h" 00023 00024 #include <iostream> 00025 00026 namespace gdcm 00027 { 00028 //----------------------------------------------------------------------------- 00037 class GDCM_EXPORT ContentEntry : public DocEntry 00038 { 00039 public: 00040 virtual void WriteContent(std::ofstream *fp, FileType filetype) = 0; 00041 00043 virtual void SetValue(std::string const &val) { Value = val; }; 00046 std::string const &GetValue() const { return Value; }; 00047 00048 void Copy(DocEntry *doc); 00049 00050 protected: 00051 // Contructors are protected, not to be invoked by end user. 00052 ContentEntry(DictEntry *e); 00053 ContentEntry(DocEntry *d); 00054 // Destructor is protected, not to be invoked by end user. 00055 ~ContentEntry(); 00056 00057 private: 00058 // Members : 00062 std::string Value; 00063 }; 00064 00065 } // end namespace gdcm 00066 00067 //----------------------------------------------------------------------------- 00068 #endif 00069