From e56ce605dbcdbc8814b4a34f2138e616b358f887 Mon Sep 17 00:00:00 2001 From: Mark Vejvoda Date: Sat, 3 Apr 2010 02:28:49 +0000 Subject: [PATCH] Ported latest linux changes to win32 --- .../include/platform/win32/platform_util.h | 2 ++ .../sources/platform/win32/platform_util.cpp | 21 +++++++++++++++++++ 2 files changed, 23 insertions(+) diff --git a/source/shared_lib/include/platform/win32/platform_util.h b/source/shared_lib/include/platform/win32/platform_util.h index d9338f461..de75a9260 100755 --- a/source/shared_lib/include/platform/win32/platform_util.h +++ b/source/shared_lib/include/platform/win32/platform_util.h @@ -122,7 +122,9 @@ bool isdir(const char *path); void findDirs(const vector &paths, vector &results, bool errorOnNotFound=false); void findAll(const vector &paths, const string &fileFilter, vector &results, bool cutExtension=false, bool errorOnNotFound=true); void findAll(const string &path, vector &results, bool cutExtension=false, bool errorOnNotFound=true); +int32 getFolderTreeContentsCheckSumRecursively(vector paths, string pathSearchString, const string filterFileExt, Checksum *recursiveChecksum); int32 getFolderTreeContentsCheckSumRecursively(const string &path, const string &filterFileExt, Checksum *recursiveChecksum); +vector > getFolderTreeContentsCheckSumListRecursively(vector paths, string pathSearchString, const string filterFileExt, vector > *recursiveMap); vector > getFolderTreeContentsCheckSumListRecursively(const string &path, const string &filterFileExt, vector > *recursiveMap); void createDirectoryPaths(string Path); string extractDirectoryPathFromFile(string filename); diff --git a/source/shared_lib/sources/platform/win32/platform_util.cpp b/source/shared_lib/sources/platform/win32/platform_util.cpp index 7efde7ae6..f40b06aec 100644 --- a/source/shared_lib/sources/platform/win32/platform_util.cpp +++ b/source/shared_lib/sources/platform/win32/platform_util.cpp @@ -321,6 +321,17 @@ bool EndsWith(const string &str, const string& key) return result; } +//finds all filenames like path and gets their checksum of all files combined +int32 getFolderTreeContentsCheckSumRecursively(vector paths, string pathSearchString, const string filterFileExt, Checksum *recursiveChecksum) { + Checksum checksum = (recursiveChecksum == NULL ? Checksum() : *recursiveChecksum); + int count = paths.size(); + for(int idx = 0; idx < count; ++idx) { + string path = paths[idx] + pathSearchString; + getFolderTreeContentsCheckSumRecursively(path, filterFileExt, recursiveChecksum); + } + return checksum.getSum(); +} + //finds all filenames like path and gets their checksum of all files combined int32 getFolderTreeContentsCheckSumRecursively(const string &path, const string &filterFileExt, Checksum *recursiveChecksum) { @@ -402,6 +413,16 @@ int32 getFolderTreeContentsCheckSumRecursively(const string &path, const string return checksum.getSum(); } +vector > getFolderTreeContentsCheckSumListRecursively(vector paths, string pathSearchString, string filterFileExt, vector > *recursiveMap) { + vector > checksumFiles = (recursiveMap == NULL ? vector >() : *recursiveMap); + int count = paths.size(); + for(int idx = 0; idx < count; ++idx) { + string path = paths[idx] + pathSearchString; + getFolderTreeContentsCheckSumListRecursively(path, filterFileExt, &checksumFiles); + } + return checksumFiles; +} + //finds all filenames like path and gets the checksum of each file vector > getFolderTreeContentsCheckSumListRecursively(const string &path, const string &filterFileExt, vector > *recursiveMap) {