]> Creatis software - gdcm.git/blobdiff - src/gdcmDicomDirMeta.cxx
* Preparation of writing a gdcmHeader iterator: generalisation of gdcmTagKey
[gdcm.git] / src / gdcmDicomDirMeta.cxx
index 3d62dc360e98e0b1efed5905670dbf791130e9fd..e7202b02ed1847db51fa1318a0cc2a5b59debe68 100644 (file)
@@ -1,6 +1,23 @@
-// gdcmDicomDirMeta.h
-//-----------------------------------------------------------------------------
+/*=========================================================================
+                                                                                
+  Program:   gdcm
+  Module:    $RCSfile: gdcmDicomDirMeta.cxx,v $
+  Language:  C++
+  Date:      $Date: 2004/08/30 16:15:40 $
+  Version:   $Revision: 1.8 $
+                                                                                
+  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.
+                                                                                
+=========================================================================*/
+
 #include "gdcmDicomDirMeta.h"
+#include "gdcmDocument.h"
 
 //-----------------------------------------------------------------------------
 // Constructor / Destructor
 /**
  * \ingroup gdcmMeta
  * \brief  Constructor
- * @param  begin  iterator (inside the gdcmParser chained list)
- *                on the first Header Entry (i.e Dicom Element)
- *                related to the "META" part
- * @param  end  iterator  (inside the gdcmParser chained list)
- *              on the last Header Entry (i.e Dicom Element) 
- *              related to the 'META' part
- * @param ptagHT pointer to the HTable (gdcmObject needs it 
- *               to build the gdcmHeaderEntries)
- * @param plistEntries pointer to the chained List (gdcmObject needs it 
- *               to build the gdcmHeaderEntries)
  */ 
-gdcmDicomDirMeta::gdcmDicomDirMeta(ListTag::iterator begin,
-                                   ListTag::iterator end,
-                                  TagHeaderEntryHT *ptagHT, 
-                                  ListTag *plistEntries):
-   gdcmObject(begin,end,ptagHT,plistEntries)
+gdcmDicomDirMeta::gdcmDicomDirMeta(TagDocEntryHT *ptagHT):
+   gdcmObject(ptagHT)
 {
+
 }
 
 /**
@@ -33,24 +38,41 @@ gdcmDicomDirMeta::gdcmDicomDirMeta(ListTag::iterator begin,
  */
 gdcmDicomDirMeta::~gdcmDicomDirMeta() 
 {
+   
 }
 
 //-----------------------------------------------------------------------------
 // Print
 /**
- * \ingroup gdcmDicomDirMeta
- * \brief   Prints the Object
- * @return
+ * \brief   Prints the Meta Elements
  */ 
 void gdcmDicomDirMeta::Print(std::ostream &os)
 {
-   os<<"META"<<std::endl;
-   gdcmObject::Print(os);
+   os << "META" << std::endl;
+   // warning : META doesn't behave exactly like a gdcmObjet 
+   for (ListDocEntry::iterator i = docEntries.begin();  
+        i != docEntries.end();
+        ++i)
+      (*i)->Print();    
 }
 
+
 //-----------------------------------------------------------------------------
 // Public
 
+
+/**
+ * \brief   Writes the Meta Elements
+ * @return
+ */ 
+void gdcmDicomDirMeta::Write(FILE *fp, FileType t)
+{   
+   for (ListDocEntry::iterator i = docEntries.begin();  
+        i != docEntries.end();
+        ++i)
+      (*i)->Write(fp, t);   
+}
+
 //-----------------------------------------------------------------------------
 // Protected