X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src2%2FcreaImageIOTreeHandlerImageAdder.cpp;h=c4337bc0f2dfad358c0fac070070dbfe0f229016;hb=d650256e38052b06baf671b027b855a1ad27f578;hp=3f9d4aa8d32cb2512852cefeef2161d20b80e6f5;hpb=f2585049438c3630362b07e6029ddb0130a03818;p=creaImageIO.git diff --git a/src2/creaImageIOTreeHandlerImageAdder.cpp b/src2/creaImageIOTreeHandlerImageAdder.cpp index 3f9d4aa..c4337bc 100644 --- a/src2/creaImageIOTreeHandlerImageAdder.cpp +++ b/src2/creaImageIOTreeHandlerImageAdder.cpp @@ -1,9 +1,10 @@ #include -#include -#include -#include +#include +#include "boost/filesystem.hpp" -using namespace crea; +namespace fs = boost::filesystem; + +//using namespace crea; namespace creaImageIO { @@ -29,7 +30,7 @@ namespace creaImageIO //===================================================================== bool TreeHandlerImageAdder::IsHandledFile( const std::string& filename) { - return (mReader.CanRead(filename,"")); + return (mReader.CanRead(filename)); } //===================================================================== @@ -42,6 +43,7 @@ namespace creaImageIO std::vector::const_iterator i; for (i=filenames.begin();i!=filenames.end();++i) { + mProgress.IncNumberScannedFiles(); if (IsHandledFile(*i)) { @@ -60,16 +62,13 @@ namespace creaImageIO { mProgress.Reset(); AddDirectoryRecursor( directory, recurse ); + GimmickDebugMessage(3,mProgress< attr; mTreeHandler->GetTree().GetDescriptor().BuildAttributeMap(attr); @@ -87,53 +86,38 @@ namespace creaImageIO void TreeHandlerImageAdder::AddDirectoryRecursor(const std::string &dirpath, bool recursive) { + GimmickDebugMessage(4,"Scanning '"<status()) ) { - wxFileName wxffn(dir.GetName(),filename); - std::string ffn = wx2std(wxffn.GetFullPath()); - AddDirectoryRecursor( ffn, recursive); - cont = dir.GetNext(&filename); + if (recursive) AddDirectoryRecursor( itr->string(), recursive); } + else + { + mProgress.IncNumberScannedFiles(); + if (IsHandledFile(itr->string())) + { + mProgress.IncNumberHandledFiles(); + AddFile( itr->string() ); + } + mProgressSignal(mProgress); + if (mProgress.GetStop()) + { + itr = end_itr +// break; + } + } } - + } //=======================================================================