X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=src2%2FcreaImageIOGimmick.cpp;h=2ed5b0c72f115c9e4bbdb593b93e67cf57220c58;hb=f5399bbd662ec8584bfa8fe0c68985679d6c9c4c;hp=b30fbc18ba9a4fa5d9704fae24640b158b75cb1b;hpb=852af4a5c6e97a6fc349126cf3370e27f89fe067;p=creaImageIO.git diff --git a/src2/creaImageIOGimmick.cpp b/src2/creaImageIOGimmick.cpp index b30fbc1..2ed5b0c 100644 --- a/src2/creaImageIOGimmick.cpp +++ b/src2/creaImageIOGimmick.cpp @@ -13,6 +13,8 @@ namespace creaImageIO : mImageAdder(0) { RegisterGimmickMessageTypes(); + mSettings=0; + mSynchronizer=0; } //============================================================== @@ -21,9 +23,15 @@ namespace creaImageIO //============================================================== Gimmick::~Gimmick() { + if(mSettings!=0) + { mSettings->writeSettingsFile(); delete mSettings; + } + if(mSynchronizer!=0) + { delete mSynchronizer; + } } //============================================================== @@ -285,6 +293,7 @@ namespace creaImageIO { GimmickMessage(2,"Adding files to '"<RemoveNode("PATH",node); + mTimestampDatabase->RemoveNode("PATH",node,d); mImageAdder.RemoveFile(node); } //======================================================================== //======================================================================== - std::string Gimmick::Synchronize(bool repair, bool checkAttributes) + void Gimmick::CopyFiles(const std::vector& filenames, const std::string& d ) + { + TreeHandler * handler=GetTreeHandler(d); + mImageAdder.SetCurrentDatabase(d); + mImageAdder.SetTreeHandler(handler); + mImageAdder.SetTimestampHandler(mTimestampDatabase); + mImageAdder.SetSynchronizer(mSynchronizer); + mImageAdder.CopyFiles(filenames, mSettings->getValue(SETTINGS_COPY_PATH)); + } + + //======================================================================== + + std::string Gimmick::Synchronize(const std::string& d, bool repair, bool checkAttributes) { - TreeHandler * handler=GetTreeHandler("Local database"); + TreeHandler * handler=GetTreeHandler(d); + mImageAdder.SetCurrentDatabase(d); mImageAdder.SetTreeHandler(handler); mImageAdder.SetTimestampHandler(mTimestampDatabase); mImageAdder.SetSynchronizer(mSynchronizer);