4 #include "TGitPath.h"
\r
7 #define LOG_INDEX_MAGIC 0x88445566
\r
8 #define LOG_DATA_MAGIC 0x99aa00FF
\r
9 #define LOG_DATA_ITEM_MAGIC 0x0F8899CC
\r
10 #define LOG_DATA_FILE_MAGIC 0x19999FFF
\r
11 #define LOG_INDEX_VERSION 0x1
\r
13 struct SLogCacheIndexHeader
\r
20 struct SLogCacheItem
\r
26 struct SLogCacheRevFileHeader
\r
32 struct SLogCacheRevItemHeader
\r
39 #define INDEX_FILE_NAME _T("tortoisegit.index")
\r
40 #define DATA_FILE_NAME _T("tortoisegit.data")
\r
41 #define LOCK_FILE_NAME _T("tortoisegit.lock")
\r
50 BOOL CheckHeader(SLogCacheIndexHeader &header)
\r
52 if(header.m_Magic != LOG_INDEX_MAGIC)
\r
55 if(header.m_Version != LOG_INDEX_VERSION)
\r
61 BOOL CheckHeader(SLogCacheRevFileHeader &header)
\r
63 if(header.m_Magic != LOG_DATA_MAGIC)
\r
66 if(header.m_Version != LOG_INDEX_VERSION)
\r
72 BOOL CheckHeader(SLogCacheRevItemHeader &header)
\r
74 if(header.m_Magic != LOG_DATA_ITEM_MAGIC)
\r
77 if(header.m_Version != LOG_INDEX_VERSION)
\r
83 int SaveOneItem(GitRev &Rev,ULONGLONG offset);
\r
84 int LoadOneItem(GitRev &Rev,ULONGLONG offset);
\r
86 int RebuildCacheFile();
\r
91 int FetchCacheIndex(CString GitDir);
\r
92 std::vector<GitRev> m_NewCacheEntry;
\r
93 std::map<CString, ULONGLONG> m_HashMapIndex;
\r
94 int GetCacheData(GitRev &Rev);
\r
95 int AddCacheEntry(GitRev &Rev);
\r