Home | History | Annotate | Download | only in Common
      1 // UpdateProduce.h
      2 
      3 #ifndef __UPDATE_PRODUCE_H
      4 #define __UPDATE_PRODUCE_H
      5 
      6 #include "UpdatePair.h"
      7 
      8 struct 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 
     24 struct IUpdateProduceCallback
     25 {
     26   virtual HRESULT ShowDeleteFile(int arcIndex) = 0;
     27 };
     28 
     29 void UpdateProduce(
     30     const CRecordVector<CUpdatePair> &updatePairs,
     31     const NUpdateArchive::CActionSet &actionSet,
     32     CRecordVector<CUpdatePair2> &operationChain,
     33     IUpdateProduceCallback *callback);
     34 
     35 #endif
     36