Program: gdcm
Module: $RCSfile: gdcmDicomDirMeta.cxx,v $
Language: C++
- Date: $Date: 2004/06/20 18:08:47 $
- Version: $Revision: 1.4 $
+ Date: $Date: 2005/01/24 16:10:52 $
+ Version: $Revision: 1.26 $
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.
+ 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
#include "gdcmDicomDirMeta.h"
#include "gdcmDocument.h"
+#include "gdcmDocEntry.h"
+#include "gdcmGlobal.h"
+
+namespace gdcm
+{
//-----------------------------------------------------------------------------
// Constructor / Destructor
/**
- * \ingroup gdcmMeta
* \brief Constructor
*/
-gdcmDicomDirMeta::gdcmDicomDirMeta(TagDocEntryHT *ptagHT):
- gdcmObject(ptagHT)
+DicomDirMeta::DicomDirMeta(bool empty):
+ DicomDirObject()
{
-
+ if( !empty )
+ {
+ ListDicomDirStudyElem const &elemList =
+ Global::GetDicomDirElements()->GetDicomDirMetaElements();
+ FillObject(elemList);
+ }
}
/**
- * \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 Indentation string to be prepended during printing
*/
-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 filetype type of the file (ACR, ImplicitVR, ExplicitVR, ...)
+ * @return
+ */
+void DicomDirMeta::WriteContent(std::ofstream *fp, FileType filetype)
+{
+ for (ListDocEntry::iterator i = DocEntries.begin();
+ i != DocEntries.end();
+ ++i)
+ {
+ (*i)->WriteContent(fp, filetype);
+ }
+}
+
//-----------------------------------------------------------------------------
// Protected
// Private
//-----------------------------------------------------------------------------
+} // end namespace gdcm