+ Privates.clear();
+}
+
+/**
+ * \brief Remove all 'Images' in the serie
+ */
+void DicomDirSerie::ClearImage()
+{
+ for(ListDicomDirImage::iterator cc = Images.begin();
+ cc!= Images.end();
+ ++cc)
+ {
+ (*cc)->Delete();
+ }
+ Images.clear();
+}
+
+/**
+ * \brief Get the first entry while visiting the DicomDirImage
+ * \return The first DicomDirImage if DicomDirserie not empty, otherwhise NULL
+ */
+DicomDirImage *DicomDirSerie::GetFirstImage()
+{
+ ItImage = Images.begin();
+ if (ItImage != Images.end())
+ return *ItImage;
+ return NULL;
+}
+
+/**
+ * \brief Get the next entry while visiting the DicomDirImages
+ * \note : meaningfull only if GetFirstImage already called
+ * \return The next DicomDirImages if found, otherwhise NULL
+ */
+DicomDirImage *DicomDirSerie::GetNextImage()
+{
+ gdcmAssertMacro (ItImage != Images.end());
+
+ ++ItImage;
+ if (ItImage != Images.end())
+ return *ItImage;
+ return NULL;
+}
+
+/**
+ * \brief Get the first entry while visiting the DicomDirPrivate
+ * \return The first DicomDirPrivate if DicomDirserie not empty, otherwhise NULL
+ */
+DicomDirPrivate *DicomDirSerie::GetFirstPrivate()
+{
+ ItPrivate = Privates.begin();
+ if (ItPrivate != Privates.end())
+ return *ItPrivate;
+ return NULL;
+}
+
+/**
+ * \brief Get the next entry while visiting the DicomDirPrivates
+ * \note : meaningfull only if GetFirstPrivate already called
+ * \return The next DicomDirPrivates if found, otherwhise NULL
+ */
+DicomDirPrivate *DicomDirSerie::GetNextPrivate()
+{
+ gdcmAssertMacro (ItPrivate != Privates.end());
+
+ ++ItPrivate;
+ if (ItPrivate != Privates.end())
+ return *ItPrivate;
+ return NULL;