From 4a74102736a20a6fa5bf9df9cc7716cbecb5b777 Mon Sep 17 00:00:00 2001 From: isanae <14251494+isanae@users.noreply.github.com> Date: Fri, 14 Feb 2020 08:01:27 -0500 Subject: moved dump() to DirectoryEntry static functions instead of lambdas --- src/shared/directoryentry.h | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) (limited to 'src/shared/directoryentry.h') diff --git a/src/shared/directoryentry.h b/src/shared/directoryentry.h index f406ced6..ce50da44 100644 --- a/src/shared/directoryentry.h +++ b/src/shared/directoryentry.h @@ -537,6 +537,8 @@ public: void removeFiles(const std::set &indices); + void dump(const std::wstring& file) const; + private: using FilesMap = std::map; using FilesLookup = std::unordered_map; @@ -556,9 +558,9 @@ private: std::set m_Origins; bool m_Populated; bool m_TopLevel; - std::mutex m_SubDirMutex; - std::mutex m_FilesMutex; - std::mutex m_OriginsMutex; + mutable std::mutex m_SubDirMutex; + mutable std::mutex m_FilesMutex; + mutable std::mutex m_OriginsMutex; DirectoryEntry(const DirectoryEntry &reference); @@ -600,6 +602,13 @@ private: void addFileToList(std::wstring fileNameLower, FileEntry::Index index); void removeFileFromList(FileEntry::Index index); void removeFilesFromList(const std::set& indices); + + struct Context; + static void onDirectoryStart(Context* cx, std::wstring_view path); + static void onDirectoryEnd(Context* cx, std::wstring_view path); + static void onFile(Context* cx, std::wstring_view path, FILETIME ft); + + void dump(std::FILE* f, const std::wstring& parentPath) const; }; } // namespace MOShared -- cgit v1.3.1