X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FcreaImageIOTreeHandlerImageAdder.cpp;h=ae72e444a750219bc13bf1f75b4a23ab73dc63af;hb=refs%2Fheads%2FchangestoITK3and4;hp=ce619c3424fd943e928f40ad8c7920f1a09030df;hpb=bc6c883d5af385d9fb3878364a42ca1c272f16c5;p=creaImageIO.git diff --git a/src/creaImageIOTreeHandlerImageAdder.cpp b/src/creaImageIOTreeHandlerImageAdder.cpp index ce619c3..ae72e44 100644 --- a/src/creaImageIOTreeHandlerImageAdder.cpp +++ b/src/creaImageIOTreeHandlerImageAdder.cpp @@ -1,3 +1,30 @@ +/* +# --------------------------------------------------------------------- +# +# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image +# pour la Santé) +# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton +# Previous Authors : Laurent Guigues, Jean-Pierre Roux +# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil +# +# This software is governed by the CeCILL-B license under French law and +# abiding by the rules of distribution of free software. You can use, +# modify and/ or redistribute the software under the terms of the CeCILL-B +# license as circulated by CEA, CNRS and INRIA at the following URL +# http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html +# or in the file LICENSE.txt. +# +# As a counterpart to the access to the source code and rights to copy, +# modify and redistribute granted by the license, users are provided only +# with a limited warranty and the software's author, the holder of the +# economic rights, and the successive licensors have only limited +# liability. +# +# The fact that you are presently reading this means that you have had +# knowledge of the CeCILL-B license and that you accept its terms. +# ------------------------------------------------------------------------ +*/ + #include #include #include @@ -47,9 +74,9 @@ namespace creaImageIO { mProgress.Reset(); - unsigned int nbf = filenames.size(); + //unsigned int nbf = filenames.size(); std::vector::const_iterator i; - mSynchronizer->GetList(mCurrentDB); + mSynchronizer->GetList(mCurrentDB); for (i=filenames.begin();i!=filenames.end();++i) { @@ -212,20 +239,20 @@ namespace creaImageIO { if (recursive) { - AddDirectoryRecursorScanner( itr->string(), recursive, addKey, i_sc, true); + AddDirectoryRecursorScanner( itr->path().string(), recursive, addKey, i_sc, true); } } else { std::string parent_id; // tTest if directory (and only it) exists or not. - bool valid = mSynchronizer->isIndexed(itr->string());//true;//=mTimestampHandler->AddDirectory(dirpath, itr->string(), lastModif, time(0),mCurrentDB); + bool valid = mSynchronizer->isIndexed(itr->path().string());//true;//=mTimestampHandler->AddDirectory(dirpath, itr->string(), lastModif, time(0),mCurrentDB); if(valid) { - std::string path(itr->string()); + std::string path(itr->path().string()); mProgress.IncNumberScannedFiles(); boost::algorithm::replace_all( path,INVALID_FILE_SEPARATOR,VALID_FILE_SEPARATOR); - i_sc.ReadAttributes(itr->string(),attr); + i_sc.ReadAttributes(itr->path().string(),attr); // mTreeHandler->GetTopLevelNodeId("FullFileName",itr->string(),parent_id); mTreeHandler->AddBranch(attr); mProgress.IncNumberHandledFiles(); @@ -255,9 +282,10 @@ namespace creaImageIO mProgress.IncNumberScannedDirs(); if ( !fs::exists( dirpath ) ) return; - time_t lastModif=fs::last_write_time(dirpath); + + /// \TODO fix warning: unused variable lastModif + time_t lastModif=fs::last_write_time(dirpath); - fs::directory_iterator end_itr; // default construction yields past-the-end for ( fs::directory_iterator itr( dirpath ); itr != end_itr; @@ -268,25 +296,25 @@ namespace creaImageIO { if (recursive) { - AddDirectoryRecursor( itr->string(), recursive, addKey); + AddDirectoryRecursor( itr->path().string(), recursive, addKey); } } else { std::string parent_id; // tTest if directory (and only it) exists or not. - bool valid = mSynchronizer->isIndexed(itr->string());//true;//=mTimestampHandler->AddDirectory(dirpath, itr->string(), lastModif, time(0),mCurrentDB); + bool valid = mSynchronizer->isIndexed(itr->path().string());//true;//=mTimestampHandler->AddDirectory(dirpath, itr->string(), lastModif, time(0),mCurrentDB); if(valid) { mProgress.IncNumberScannedFiles(); - if (IsHandledFile(itr->string())) + if (IsHandledFile(itr->path().string())) { mProgress.IncNumberHandledFiles(); - AddFile( itr->string() ); + AddFile( itr->path().string() ); //mTreeHandler->GetTopLevelNodeId("FullFileName",itr->string(),parent_id); std::stringstream removedOn; removedOn<InsertIgnoreFile(addKey, itr->string(),"0",removedOn.str(),mCurrentDB); + mSynchronizer->InsertIgnoreFile(addKey, itr->path().string(),"0",removedOn.str(),mCurrentDB); } mProgressSignal(mProgress); @@ -324,17 +352,17 @@ namespace creaImageIO { if (recursive) { - CheckSyncDirectory( itr->string(), recursive, repair, checkAttributes, i_ignorefiles, attsModified, newfiles); + CheckSyncDirectory( itr->path().string(), recursive, repair, checkAttributes, i_ignorefiles, attsModified, newfiles); } } else { - if (IsHandledFile(itr->string())) + if (IsHandledFile(itr->path().string())) { bool bfound = false; for(std::vector::iterator it_new = i_ignorefiles.begin(); it_new < i_ignorefiles.end(); ++it_new) { - if((*it_new) == itr->string()) + if((*it_new) == itr->path().string()) { bfound = true; //Additional checking of attributes @@ -348,7 +376,7 @@ namespace creaImageIO } if(!bfound && i_ignorefiles.size()>0 ) { - newfiles.push_back( itr->string() ); + newfiles.push_back( itr->path().string() ); } } } @@ -453,7 +481,7 @@ namespace creaImageIO AddFile(*i); } } - nf+=newFiles.size(); + nf+=(int)newFiles.size(); newFiles.clear(); }