X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src2%2FcreaImageIOSynchron.cpp;h=136c29e7fcd190756e4edb5eeb226b132c50d355;hb=8b74b6a37dfc8b8a3ebb4f9f8e4b46429da0e4c7;hp=9ec4bae4d3fcf4b7b68469d0f88debe0158c16ec;hpb=67ba001e49dd897529b15024108831bdd4621edf;p=creaImageIO.git diff --git a/src2/creaImageIOSynchron.cpp b/src2/creaImageIOSynchron.cpp index 9ec4bae..136c29e 100644 --- a/src2/creaImageIOSynchron.cpp +++ b/src2/creaImageIOSynchron.cpp @@ -72,7 +72,7 @@ namespace creaImageIO } } // get the ADD operations List - UpdateAddList(); + //UpdateAddList(pathDB); } //===================================================================== @@ -87,6 +87,7 @@ namespace creaImageIO command += ",\nPATH text"; command += ",\nRECURSIVE boolean"; command += ",\nFILES_ADDED int"; + command += ",\nREFERENCEDDB text"; command += "\n)"; UPDATESYNCDB(command); @@ -117,9 +118,9 @@ namespace creaImageIO } //===================================================================== - void Synchronizer::GetFileList(std::vector & list) + void Synchronizer::GetFileList(std::vector & list, const std::string& refdb) { - CleanList(); + CleanList(refdb); list=mAddList; } @@ -130,9 +131,9 @@ namespace creaImageIO } //===================================================================== - void Synchronizer::UpdateAddList() + void Synchronizer::UpdateAddList(const std::string& refdb) { - std::string query = "SELECT * FROM ADD_OPS"; + std::string query = "SELECT * FROM ADD_OPS WHERE REFERENCEDDB = '"+refdb+"';"; CppSQLite3Query res; QUERYSYNCDB(query, res); while (!res.eof()) @@ -157,12 +158,13 @@ namespace creaImageIO ///////////////////////////////////////////////////////////////////////////////////////////////// // clean DataBase if an operation has no child anymore + // @param refdb: the database segement to clean // @result : - ///////////////////////////////////////////////////////////////////////////////////////////////// - void Synchronizer::CleanList() + void Synchronizer::CleanList(const std::string& refdb) { mAddList.clear(); - UpdateAddList(); + UpdateAddList(refdb); std::vector::iterator it_add = mAddList.begin(); for(;it_add