Add Dirk Luetjen's ssphys libraries and command-line tool
[vss2svn.git] / ssphys / SSLib / SSVersion.h
blob7b165c78a23d1db2cc90cd6d9f11e1ee0dc66039
1 // SSVersion.h: interface for the SSVersion class.
2 //
3 //////////////////////////////////////////////////////////////////////
5 #if !defined(AFX_SSVERSION_H__A783C194_B621_44E3_A58B_CE8E87BB85FF__INCLUDED_)
6 #define AFX_SSVERSION_H__A783C194_B621_44E3_A58B_CE8E87BB85FF__INCLUDED_
8 #if _MSC_VER > 1000
9 #pragma once
10 #endif // _MSC_VER > 1000
12 #include <SSPhysLib\SSVersionObject.h>
13 #include "SSItem.h"
15 class SSVersion;
16 typedef boost::shared_ptr<SSVersion> SSVersionPtr;
18 class SSVersion
20 public:
21 SSVersion();
22 virtual ~SSVersion();
24 // _bstr_t GetUsername ( );
25 std::string GetUsername ();
27 // long GetVersionNumber ( );
28 long GetVersionNumber ( );
30 // _bstr_t GetAction ( );
31 std::string GetAction ( );
33 // DATE GetDate ( );
34 // DATE GetDate ( );
36 // _bstr_t GetComment ( );
37 std::string GetComment ( );
39 // _bstr_t GetLabel ( );
40 std::string GetLabel ( );
42 // _bstr_t GetLabelComment ( );
43 std::string GetLabelComment ( );
45 // IVSSItemPtr GetVSSItem ( );
46 SSItemPtr GetVSSItem ( );
48 private:
49 SSVersionObject* m_pVersion;
52 class SSVersions
54 public:
55 SSVersions (SSItemPtr itemPtr, std::string physFile, long iFlags);
56 ~SSVersions ();
58 long GetCount () { return m_Items.size (); }
59 SSVersionPtr GetVersion (long i);
61 private:
63 std::vector<SSVersionPtr> m_Items;
67 #endif // !defined(AFX_SSVERSION_H__A783C194_B621_44E3_A58B_CE8E87BB85FF__INCLUDED_)