]> Creatis software - gdcm.git/blobdiff - src/gdcmDicomDirMeta.cxx
The following methods
[gdcm.git] / src / gdcmDicomDirMeta.cxx
index 945847609147be8daf65a680e901b1f920acd210..43f2c0564efc983d2a0ec8983ac2c7f3999a780b 100644 (file)
@@ -1,44 +1,88 @@
-// gdcmDicomDirMeta.h
-//-----------------------------------------------------------------------------
+/*=========================================================================
+                                                                                
+  Program:   gdcm
+  Module:    $RCSfile: gdcmDicomDirMeta.cxx,v $
+  Language:  C++
+  Date:      $Date: 2005/01/18 14:28:32 $
+  Version:   $Revision: 1.23 $
+                                                                                
+  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.html 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.
+                                                                                
+=========================================================================*/
+
 #include "gdcmDicomDirMeta.h"
+#include "gdcmDocument.h"
+#include "gdcmDocEntry.h"
+
+namespace gdcm 
+{
 
 //-----------------------------------------------------------------------------
 // Constructor / Destructor
+
 /**
- * \ingroup gdcmDicomDirMeta
- * \brief   
- * @param   begin iterator of begin for the object
- * @param   end   iterator of end   for the object
- */
-gdcmDicomDirMeta::gdcmDicomDirMeta(ListTag::iterator begin,ListTag::iterator end):
-   gdcmObject(begin,end)
+ * \brief  Constructor
+ */ 
+DicomDirMeta::DicomDirMeta():
+   DicomDirObject()
 {
 }
 
 /**
- * \ingroup gdcmDicomDirMeta
  * \brief   Canonical destructor.
  */
-gdcmDicomDirMeta::~gdcmDicomDirMeta() 
+DicomDirMeta::~DicomDirMeta() 
 {
 }
 
 //-----------------------------------------------------------------------------
 // Print
 /**
- * \ingroup gdcmDicomDirMeta
- * \brief   Prints the Object
- * @return
+ * \brief   Prints the Meta Elements
+ * @param os ostream to write to 
+ * @param   indent indent
  */ 
-void gdcmDicomDirMeta::Print(std::ostream &os)
+void DicomDirMeta::Print(std::ostream &os, std::string const & )
 {
-   os<<"META"<<std::endl;
-   gdcmObject::Print(os);
+   os << "META" << std::endl;
+   // warning : META doesn't behave exactly like a Objet 
+   for (ListDocEntry::iterator i = DocEntries.begin();
+        i != DocEntries.end();
+        ++i)
+   {
+      (*i)->SetPrintLevel(PrintLevel);
+      (*i)->Print();
+      os << std::endl;
+   }
 }
 
+
 //-----------------------------------------------------------------------------
 // Public
 
+
+/**
+ * \brief   Writes the Meta Elements
+ * @param fp ofstream to write to
+ * @param t File Type 
+ * @return
+ */ 
+void DicomDirMeta::WriteContent(std::ofstream *fp, FileType t)
+{   
+   for (ListDocEntry::iterator i = DocEntries.begin();  
+                              i != DocEntries.end();
+                              ++i)
+   {
+      (*i)->WriteContent(fp, t);
+   }
+}
+
 //-----------------------------------------------------------------------------
 // Protected
 
@@ -46,3 +90,5 @@ void gdcmDicomDirMeta::Print(std::ostream &os)
 // Private
 
 //-----------------------------------------------------------------------------
+
+} // end namespace gdcm