1// UpdateProduce.h 2 3#ifndef __UPDATE_PRODUCE_H 4#define __UPDATE_PRODUCE_H 5 6#include "UpdatePair.h" 7 8struct CUpdatePair2 9{ 10 bool NewData; 11 bool NewProps; 12 bool IsAnti; 13 14 int DirIndex; 15 int ArcIndex; 16 int NewNameIndex; 17 18 bool ExistOnDisk() const { return DirIndex != -1; } 19 bool ExistInArchive() const { return ArcIndex != -1; } 20 21 CUpdatePair2(): IsAnti(false), DirIndex(-1), ArcIndex(-1), NewNameIndex(-1) {} 22}; 23 24struct IUpdateProduceCallback 25{ 26 virtual HRESULT ShowDeleteFile(int arcIndex) = 0; 27}; 28 29void UpdateProduce( 30 const CRecordVector<CUpdatePair> &updatePairs, 31 const NUpdateArchive::CActionSet &actionSet, 32 CRecordVector<CUpdatePair2> &operationChain, 33 IUpdateProduceCallback *callback); 34 35#endif 36