Program: gdcm
Module: $RCSfile: gdcmDirList.cxx,v $
Language: C++
- Date: $Date: 2006/05/12 09:36:09 $
- Version: $Revision: 1.59 $
+ Date: $Date: 2006/11/15 15:53:08 $
+ Version: $Revision: 1.60 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
}
}
+/**
+ * \brief Get the first entry while visiting Filenames
+ * \return The first if found, otherwhise ""
+ */
+std::string DirList::GetFirst()
+{
+ ItDirList = Filenames.begin();
+ if (ItDirList != Filenames.end())
+ return *ItDirList;
+ return "";
+}
+
+/**
+ * \brief Get the next entry while visiting Filenames
+ * \return The next if found, otherwhise ""
+ */
+std::string DirList::GetNext()
+{
+ gdcmAssertMacro (ItDirList != Filenames.end())
+ {
+ ++ItDirList;
+ if (ItDirList != Filenames.end())
+ return *ItDirList;
+ }
+ return "";
+}
+
//-----------------------------------------------------------------------------
// Protected
Program: gdcm
Module: $RCSfile: gdcmDirList.h,v $
Language: C++
- Date: $Date: 2006/02/16 20:06:14 $
- Version: $Revision: 1.31 $
+ Date: $Date: 2006/11/15 15:53:08 $
+ Version: $Revision: 1.32 $
Copyright (c) CREATIS (Centre de Recherche et d'Applications en Traitement de
l'Image). All rights reserved. See Doc/License.txt or
#include <vector>
#include <iostream>
-namespace gdcm
+namespace gdcm
{
typedef std::vector<std::string> DirListType;
class GDCM_EXPORT DirList : public Base
{
public :
- DirList(std::string const &dirName, bool recursive=false);
+ DirList(std::string const &dirName, bool recursive);
~DirList();
void Print(std::ostream &os = std::cout, std::string const &indent = "" );
/// Return the file names
DirListType const &GetFilenames() const { return Filenames; }
+
+ /// Return the number of Files
+ int GetSize() const { return Filenames.size(); }
static bool IsDirectory(std::string const &dirName);
-
+
+ std::string GetFirst();
+ std::string GetNext();
+
private :
int Explore(std::string const &dirName, bool recursive=false);
DirListType Filenames;
/// name of the root directory to explore
std::string DirName;
+
+ /// iterator on the SQItems of the current SeqEntry
+ DirListType::iterator ItDirList;
+
};
} // end namespace gdcm
//-----------------------------------------------------------------------------