X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src%2FcreaImageIOTreeHandlerImageAdder.cpp;h=ae72e444a750219bc13bf1f75b4a23ab73dc63af;hb=1813f80def50d02057c58a83245739066f37f9f0;hp=4f3d452f793eb84b4fed86f11b87c941bd7f980f;hpb=2a8a9b27d2eba4985b76d2f0218fd4ba83784ca9;p=creaImageIO.git diff --git a/src/creaImageIOTreeHandlerImageAdder.cpp b/src/creaImageIOTreeHandlerImageAdder.cpp index 4f3d452..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 @@ -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(); @@ -269,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); @@ -325,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 @@ -349,7 +376,7 @@ namespace creaImageIO } if(!bfound && i_ignorefiles.size()>0 ) { - newfiles.push_back( itr->string() ); + newfiles.push_back( itr->path().string() ); } } } @@ -454,7 +481,7 @@ namespace creaImageIO AddFile(*i); } } - nf+=newFiles.size(); + nf+=(int)newFiles.size(); newFiles.clear(); }