summaryrefslogtreecommitdiff
path: root/src/shared/directoryentry.h
diff options
context:
space:
mode:
authorisanae <14251494+isanae@users.noreply.github.com>2020-02-14 03:19:21 -0500
committerisanae <14251494+isanae@users.noreply.github.com>2020-02-18 17:25:03 -0500
commitfb3fbd34211a28b27214abe070c46951057258ca (patch)
tree62c1505014682af6f8b88c17f5c985716b0d40fc /src/shared/directoryentry.h
parent567fe019ac21ee78a07beae1a387ab5688e7f97b (diff)
removed lastAccessed from FileEntry, not used
FileRegister keeps a vector instead of a map
Diffstat (limited to 'src/shared/directoryentry.h')
-rw-r--r--src/shared/directoryentry.h25
1 files changed, 13 insertions, 12 deletions
diff --git a/src/shared/directoryentry.h b/src/shared/directoryentry.h
index 94ea068d..74d50625 100644
--- a/src/shared/directoryentry.h
+++ b/src/shared/directoryentry.h
@@ -64,6 +64,8 @@ class FileRegister;
struct DirectoryStats
{
+ static constexpr bool EnableInstrumentation = true;
+
std::string mod;
std::chrono::nanoseconds dirTimes;
@@ -127,11 +129,6 @@ public:
return m_Index;
}
- time_t lastAccessed() const
- {
- return m_LastAccessed;
- }
-
void addOrigin(
int origin, FILETIME fileTime, std::wstring_view archive, int order);
@@ -222,8 +219,6 @@ private:
uint64_t m_FileSize, m_CompressedFileSize;
mutable std::mutex m_OriginsMutex;
- time_t m_LastAccessed;
-
bool recurseParents(std::wstring &path, const DirectoryEntry *parent) const;
};
@@ -265,8 +260,8 @@ public:
std::vector<FileEntry::Ptr> getFiles() const;
FileEntry::Ptr findFile(FileEntry::Index index) const;
- void enable(bool enabled, DirectoryStats& stats, time_t notAfter = LONG_MAX);
- void enable(bool enabled, time_t notAfter = LONG_MAX);
+ void enable(bool enabled, DirectoryStats& stats);
+ void enable(bool enabled);
bool isDisabled() const
{
@@ -313,24 +308,30 @@ public:
FileEntry::Ptr getFile(FileEntry::Index index) const;
- size_t size() const
+ size_t highestCount() const
{
std::scoped_lock lock(m_Mutex);
return m_Files.size();
}
+ void reserve(std::size_t n)
+ {
+ m_Files.reserve(n);
+ }
+
bool removeFile(FileEntry::Index index);
void removeOrigin(FileEntry::Index index, int originID);
- void removeOriginMulti(std::set<FileEntry::Index> indices, int originID, time_t notAfter);
+ void removeOriginMulti(std::set<FileEntry::Index> indices, int originID);
void sortOrigins();
private:
- using FileMap = std::map<FileEntry::Index, FileEntry::Ptr>;
+ using FileMap = std::vector<FileEntry::Ptr>;
mutable std::mutex m_Mutex;
FileMap m_Files;
boost::shared_ptr<OriginConnection> m_OriginConnection;
+ std::atomic<FileEntry::Index> m_NextIndex;
void unregisterFile(FileEntry::Ptr file);
FileEntry::Index generateIndex();