]> Creatis software - creaImageIO.git/blobdiff - src/creaImageIOSimpleView.cpp
prepare (?) boost 1.46, V3
[creaImageIO.git] / src / creaImageIOSimpleView.cpp
index becdd41fe6519a4276611f92f39625c445e2b6e3..c3d22d4ee0d9d03c36d788c2eb6b7f27a72a1929 100644 (file)
@@ -1,8 +1,9 @@
 #include "creaImageIOSimpleView.h"
+#include "boost/filesystem/operations.hpp"
+#include "boost/filesystem/fstream.hpp"
 
 namespace creaImageIO
 {
-
        bool SimpleView::readFile(std::vector<std::string> i_filenames, std::vector<vtkImageData *> &i_img)
        {
                        bool bresult, bfinal = true;
@@ -21,15 +22,14 @@ namespace creaImageIO
                                }
                        }
                        delete mReader;
-                       return bfinal;
-                       
+                       return bfinal;  
        }
 
        bool SimpleView::readDirectory(const std::string i_pathname, std::vector<vtkImageData *> &i_imgs)
        {
                        bool bresult = true;
                        ImageReader *mReader = new ImageReader();
-
+                        std::vector<std::string> names;
                        bresult = boost::filesystem::exists( i_pathname );
                        if (bresult)
                        {
@@ -41,11 +41,18 @@ namespace creaImageIO
                                        {
                                                if( mReader->CanRead(itr->string()) )
                                                {
-                            std::cout << itr->filename().c_str() << std::endl;
-                                                       i_imgs.push_back( mReader->ReadImage(itr->string()) );  
+                                                       names.push_back(itr->string()); 
                                                }
                                        }
                                }
+                               std::sort (names.begin(), names.end()); // make sure names are in lexicographical order
+                               int lgr = names.size();
+                               
+                               for(int i=0; i<lgr; i++)
+                               {
+                                  std::cout << names[i] << std::endl;
+                                  i_imgs.push_back( mReader->ReadImage(names[i]) );  
+                               }                       
                        }
                        return bresult;
        }