Program: gdcm
Module: $RCSfile: gdcmDicomDirImage.cxx,v $
Language: C++
- Date: $Date: 2004/10/25 03:35:19 $
- Version: $Revision: 1.13 $
+ Date: $Date: 2007/05/23 14:18:08 $
+ Version: $Revision: 1.25 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
=========================================================================*/
#include "gdcmDicomDirImage.h"
-#include "gdcmValEntry.h"
+#include "gdcmGlobal.h"
+#include "gdcmDataEntry.h"
-namespace gdcm
+namespace GDCM_NAME_SPACE
{
//-----------------------------------------------------------------------------
// Constructor / Destructor
-
/**
- * \ingroup DicomDirImage
* \brief Constructor
- * @param s SQ Item holding the elements
- * @param ptagHT pointer to the HTable (DicomDirObject needs it
- * to build the DocEntries)
+ * \note End user must use : DicomDirSerie::NewImage()
*/
-DicomDirImage::DicomDirImage(SQItem *s, TagDocEntryHT *ptagHT):
- DicomDirObject(ptagHT)
+DicomDirImage::DicomDirImage(bool empty):
+ DicomDirObject()
{
- DocEntries = s->GetDocEntries();
+ if ( !empty )
+ {
+ ListDicomDirImageElem const &elemList =
+ Global::GetDicomDirElements()->GetDicomDirImageElements();
+ FillObject(elemList);
+ }
}
/**
- * \ingroup DicomDirImage
- * \brief Constructor
- * @param ptagHT pointer to the HTable (DicomDirObject needs it
- * to build the DocEntries)
- */
-DicomDirImage::DicomDirImage(TagDocEntryHT *ptagHT):
- DicomDirObject(ptagHT)
-{
-}
-/**
- * \ingroup DicomDirImage
* \brief Canonical destructor.
*/
DicomDirImage::~DicomDirImage()
{
}
+//-----------------------------------------------------------------------------
+// Public
+
+//-----------------------------------------------------------------------------
+// Protected
+
+//-----------------------------------------------------------------------------
+// Private
+
//-----------------------------------------------------------------------------
// Print
/**
- * \ingroup DicomDirImage
* \brief Prints the Object
+ * @param os ostream to write to
+ * @param indent Indentation string to be prepended during printing
* @return
*/
-void DicomDirImage::Print(std::ostream &os)
+void DicomDirImage::Print(std::ostream &os, std::string const & )
{
os << "IMAGE : ";
for(ListDocEntry::iterator i = DocEntries.begin();
i!= DocEntries.end();
++i)
{
- if( (*i)->GetGroup() == 0x0004 && (*i)->GetElement() == 0x1500 )
+ if ( (*i)->GetGroup() == 0x0004 && (*i)->GetElement() == 0x1500 )
{
- os << ((ValEntry *)(*i))->GetValue(); //FIXME
+ if( dynamic_cast<DataEntry *>(*i) )
+ os << (dynamic_cast<DataEntry *>(*i))->GetString();
}
}
os << std::endl;
DicomDirObject::Print(os);
}
-//-----------------------------------------------------------------------------
-// Public
-
-//-----------------------------------------------------------------------------
-// Protected
-
-//-----------------------------------------------------------------------------
-// Private
-
//-----------------------------------------------------------------------------
} // end namespace gdcm