summaryrefslogtreecommitdiff
path: root/synchronization.h
diff options
context:
space:
mode:
Diffstat (limited to 'synchronization.h')
-rw-r--r--synchronization.h159
1 files changed, 0 insertions, 159 deletions
diff --git a/synchronization.h b/synchronization.h
deleted file mode 100644
index bc6b79db..00000000
--- a/synchronization.h
+++ /dev/null
@@ -1,159 +0,0 @@
-// **************************************************************************
-// * This file is part of the FreeFileSync project. It is distributed under *
-// * GNU General Public License: http://www.gnu.org/licenses/gpl.html *
-// * Copyright (C) Zenju (zenju AT gmx DOT de) - All Rights Reserved *
-// **************************************************************************
-
-#ifndef SYNCHRONIZATION_H_INCLUDED
-#define SYNCHRONIZATION_H_INCLUDED
-
-#include <zen/time.h>
-#include "file_hierarchy.h"
-#include "lib/process_xml.h"
-#include "process_callback.h"
-
-
-namespace zen
-{
-class SyncStatistics //this class counts *logical* operations, (create, update, delete + bytes), *not* disk accesses!
-{
- //-> note the fundamental difference to counting disk accesses!
-public:
- SyncStatistics(const HierarchyObject& hierObj);
- SyncStatistics(const FolderComparison& folderCmp);
- SyncStatistics(const FilePair& fileObj);
-
- int getCreate() const;
- template <SelectedSide side> int getCreate() const;
-
- int getUpdate() const;
- template <SelectedSide side> int getUpdate() const;
-
- int getDelete() const;
- template <SelectedSide side> int getDelete() const;
-
- int getConflict() const { return static_cast<int>(conflictMsgs.size()); }
-
- typedef std::vector<std::pair<Zstring, std::wstring>> ConflictTexts; // Pair(filename/conflict text)
- const ConflictTexts& getConflictMessages() const { return conflictMsgs; }
-
- Int64 getDataToProcess() const { return dataToProcess; }
- size_t getRowCount() const { return rowsTotal; }
-
-private:
- void init();
-
- void recurse(const HierarchyObject& hierObj);
-
- void processFile(const FilePair& fileObj);
- void processLink(const SymlinkPair& linkObj);
- void processDir(const DirPair& dirObj);
-
- int createLeft, createRight;
- int updateLeft, updateRight;
- int deleteLeft, deleteRight;
- ConflictTexts conflictMsgs; //conflict texts to display as a warning message
- Int64 dataToProcess;
- size_t rowsTotal;
-};
-
-
-struct FolderPairSyncCfg
-{
- FolderPairSyncCfg(bool saveSyncDB,
- const DeletionPolicy handleDel,
- VersioningStyle versioningStyle,
- const Zstring& versioningDirFmt) :
- saveSyncDB_(saveSyncDB),
- handleDeletion(handleDel),
- versioningStyle_(versioningStyle),
- versioningFolder(versioningDirFmt) {}
-
- bool saveSyncDB_; //save database if in automatic mode or dection of moved files is active
- DeletionPolicy handleDeletion;
- VersioningStyle versioningStyle_;
- Zstring versioningFolder; //formatted directory name
-};
-std::vector<FolderPairSyncCfg> extractSyncCfg(const MainConfiguration& mainCfg);
-
-
-//FFS core routine:
-void synchronize(const TimeComp& timeStamp,
- xmlAccess::OptionalDialogs& warnings,
- bool verifyCopiedFiles,
- bool copyLockedFiles,
- bool copyFilePermissions,
- bool transactionalFileCopy,
- bool runWithBackgroundPriority,
-
- const std::vector<FolderPairSyncCfg>& syncConfig, //CONTRACT: syncConfig and folderCmp correspond row-wise!
- FolderComparison& folderCmp, //
- ProcessCallback& callback);
-
-
-
-
-
-
-
-
-
-
-// ----------- implementation ----------------
-template <> inline
-int SyncStatistics::getCreate<LEFT_SIDE>() const
-{
- return createLeft;
-}
-
-template <> inline
-int SyncStatistics::getCreate<RIGHT_SIDE>() const
-{
- return createRight;
-}
-
-inline
-int SyncStatistics::getCreate() const
-{
- return getCreate<LEFT_SIDE>() + getCreate<RIGHT_SIDE>();
-}
-
-template <> inline
-int SyncStatistics::getUpdate<LEFT_SIDE>() const
-{
- return updateLeft;
-}
-
-template <> inline
-int SyncStatistics::getUpdate<RIGHT_SIDE>() const
-{
- return updateRight;
-}
-
-inline
-int SyncStatistics::getUpdate() const
-{
- return getUpdate<LEFT_SIDE>() + getUpdate<RIGHT_SIDE>();
-}
-
-
-template <> inline
-int SyncStatistics::getDelete<LEFT_SIDE>() const
-{
- return deleteLeft;
-}
-
-template <> inline
-int SyncStatistics::getDelete<RIGHT_SIDE>() const
-{
- return deleteRight;
-}
-
-inline
-int SyncStatistics::getDelete() const
-{
- return getDelete<LEFT_SIDE>() + getDelete<RIGHT_SIDE>();
-}
-}
-
-#endif // SYNCHRONIZATION_H_INCLUDED
bgstack15