COOPY » Guide
version 0.6.5
|
00001 #ifndef COOPY_MERGEOUTPUTINDEX 00002 #define COOPY_MERGEOUTPUTINDEX 00003 00004 #include <coopy/MergeOutput.h> 00005 #include <coopy/PolySheet.h> 00006 #include <coopy/SheetSchema.h> 00007 00008 namespace coopy { 00009 namespace cmp { 00010 class MergeOutputIndex; 00011 } 00012 } 00013 00014 class coopy::cmp::MergeOutputIndex : public MergeOutput { 00015 private: 00016 void *implementation; 00017 00018 coopy::store::PolySheet links; 00019 coopy::store::PolySheet links_column; 00020 coopy::store::SimpleSheetSchema links_column_schema; 00021 coopy::store::PolySheet identity; 00022 bool pending_row, sheet_set; 00023 coopy::store::PolySheet pivot, local, remote; 00024 std::vector<int> ipivot, ilocal, iremote; 00025 std::string name; 00026 00027 public: 00028 MergeOutputIndex(); 00029 00030 virtual ~MergeOutputIndex(); 00031 00032 virtual bool wantDiff() { return false; } 00033 00034 virtual bool mergeStart(); 00035 00036 virtual bool mergeDone(); 00037 00038 virtual bool mergeAllDone(); 00039 00040 virtual bool setSheet(const char *name); 00041 00042 virtual bool declareLink(const LinkDeclare& decl); 00043 00044 virtual bool wantLinks() { return true; } 00045 00046 virtual bool needOutputBook() { 00047 return true; 00048 } 00049 }; 00050 00051 #endif