- bool 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)
- {
- boost::filesystem::directory_iterator itr(i_pathname);
- boost::filesystem::directory_iterator end_itr;
- for(;itr != end_itr; ++itr)
- {
- if (!boost::filesystem::is_directory(itr->status()))
- {
- if( mReader->CanRead(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;
- }