OSDN Git Service

Add Version Graph Tree Code but there are some problem
[tortoisegit/TortoiseGitJp.git] / src / Git / GitRev.h
1 #pragma once\r
2 #include "GitStatus.h"\r
3 #include "AtlTime.h"\r
4 \r
5 typedef std::vector<git_revnum_t> GIT_REV_LIST;\r
6 \r
7 #define LOG_REV_AUTHOR_NAME     _T('0')\r
8 #define LOG_REV_AUTHOR_EMAIL    _T('1')\r
9 #define LOG_REV_AUTHOR_DATE     _T('2')\r
10 #define LOG_REV_COMMIT_NAME     _T('3')\r
11 #define LOG_REV_COMMIT_EMAIL    _T('4')\r
12 #define LOG_REV_COMMIT_DATE             _T('5')\r
13 #define LOG_REV_COMMIT_SUBJECT  _T('6')\r
14 #define LOG_REV_COMMIT_BODY             _T('7')\r
15 #define LOG_REV_COMMIT_HASH             _T('8')\r
16 #define LOG_REV_COMMIT_PARENT   _T('9')\r
17 #define LOG_REV_COMMIT_FILE             _T('A')\r
18 #define LOG_REV_ITEM_BEGIN              _T('B')\r
19 #define LOG_REV_ITEM_END                _T('C')\r
20 \r
21 \r
22 \r
23 class GitRev\r
24 {\r
25 public:\r
26         GitRev(void);\r
27 //      GitRev(GitRev &rev);\r
28 //      GitRev &operator=(GitRev &rev);\r
29         ~GitRev(void);\r
30         enum\r
31         {\r
32                 REV_HEAD = -1,                  ///< head revision\r
33                 REV_BASE = -2,                  ///< base revision\r
34                 REV_WC = -3,                    ///< revision of the working copy\r
35                 REV_UNSPECIFIED = -4,   ///< unspecified revision\r
36         };\r
37         static CString GetHead(){return CString(_T("HEAD"));};\r
38         static CString GetWorkingCopy(){return CString(GIT_REV_ZERO);};\r
39         CString m_AuthorName;\r
40         CString m_AuthorEmail;\r
41         CTime   m_AuthorDate;\r
42         CString m_CommitterName;\r
43         CString m_CommitterEmail;\r
44         CTime m_CommitterDate;\r
45         CString m_Subject;\r
46         CString m_Body;\r
47         git_revnum_t m_CommitHash;\r
48         GIT_REV_LIST m_ParentHash;\r
49         CTGitPathList m_Files;\r
50         int     m_Action;\r
51         int ParserFromLog(CString &log);\r
52         CTime ConverFromString(CString input);\r
53         inline int ParentsCount(){return m_ParentHash.size();}\r
54         \r
55         //Show version tree Graphic\r
56         std::vector<int> m_Lanes;\r
57 };\r