OLD | NEW |
| (Empty) |
1 // UpdateCallback.h | |
2 | |
3 #ifndef __UPDATECALLBACK_H | |
4 #define __UPDATECALLBACK_H | |
5 | |
6 #include "Common/MyCom.h" | |
7 #include "Common/MyString.h" | |
8 | |
9 #include "../../IPassword.h" | |
10 #include "../../ICoder.h" | |
11 | |
12 #include "../Common/UpdatePair.h" | |
13 #include "../Common/UpdateProduce.h" | |
14 | |
15 #define INTERFACE_IUpdateCallbackUI(x) \ | |
16 virtual HRESULT SetTotal(UInt64 size) x; \ | |
17 virtual HRESULT SetCompleted(const UInt64 *completeValue) x; \ | |
18 virtual HRESULT SetRatioInfo(const UInt64 *inSize, const UInt64 *outSize) x; \ | |
19 virtual HRESULT CheckBreak() x; \ | |
20 virtual HRESULT Finilize() x; \ | |
21 virtual HRESULT SetNumFiles(UInt64 numFiles) x; \ | |
22 virtual HRESULT GetStream(const wchar_t *name, bool isAnti) x; \ | |
23 virtual HRESULT OpenFileError(const wchar_t *name, DWORD systemError) x; \ | |
24 virtual HRESULT SetOperationResult(Int32 operationResult) x; \ | |
25 virtual HRESULT CryptoGetTextPassword2(Int32 *passwordIsDefined, BSTR *passwor
d) x; \ | |
26 // virtual HRESULT ShowDeleteFile(const wchar_t *name) x; \ | |
27 // virtual HRESULT CloseProgress() { return S_OK; }; | |
28 | |
29 struct IUpdateCallbackUI | |
30 { | |
31 INTERFACE_IUpdateCallbackUI(=0) | |
32 }; | |
33 | |
34 class CArchiveUpdateCallback: | |
35 public IArchiveUpdateCallback2, | |
36 public ICryptoGetTextPassword2, | |
37 public ICompressProgressInfo, | |
38 public CMyUnknownImp | |
39 { | |
40 public: | |
41 MY_UNKNOWN_IMP3( | |
42 IArchiveUpdateCallback2, | |
43 ICryptoGetTextPassword2, | |
44 ICompressProgressInfo) | |
45 | |
46 STDMETHOD(SetRatioInfo)(const UInt64 *inSize, const UInt64 *outSize); | |
47 | |
48 INTERFACE_IArchiveUpdateCallback2(;) | |
49 | |
50 STDMETHOD(CryptoGetTextPassword2)(Int32 *passwordIsDefined, BSTR *password); | |
51 | |
52 public: | |
53 CRecordVector<UInt64> VolumesSizes; | |
54 UString VolName; | |
55 UString VolExt; | |
56 | |
57 IUpdateCallbackUI *Callback; | |
58 | |
59 bool ShareForWrite; | |
60 bool StdInMode; | |
61 const CDirItems *DirItems; | |
62 const CObjectVector<CArcItem> *ArcItems; | |
63 const CRecordVector<CUpdatePair2> *UpdatePairs; | |
64 const UStringVector *NewNames; | |
65 CMyComPtr<IInArchive> Archive; | |
66 | |
67 CArchiveUpdateCallback(); | |
68 }; | |
69 | |
70 #endif | |
OLD | NEW |