COOPY » Guide  version 0.6.5
/home/paulfitz/cvs/coopy_scm/coopy/src/libcoopy_core/include/coopy/SheetCompare.h
Go to the documentation of this file.
00001 #ifndef CSVSHEET_COMPARE_INC
00002 #define CSVSHEET_COMPARE_INC
00003 
00004 #include <coopy/DataSheet.h>
00005 #include <coopy/MergeOutput.h>
00006 #include <coopy/CompareFlags.h>
00007 #include <coopy/SheetView.h>
00008 #include <coopy/OrderResult.h>
00009 
00010 namespace coopy {
00011   namespace cmp {
00012     class SheetCompare;
00013   }
00014 }
00015 
00016 class coopy::cmp::SheetCompare {
00017 public:
00018   int compare(coopy::store::DataSheet& pivot, 
00019               coopy::store::DataSheet& local, 
00020               coopy::store::DataSheet& remote, 
00021               Patcher& output, const CompareFlags& flags,
00022               const char *output_name = 0/*NULL*/);
00023 
00024   void setVerbose(bool verbose);
00025 
00026 private:
00027 
00028   int homogeneousCompare(coopy::store::DataSheet& pivot, 
00029                          coopy::store::DataSheet& local, 
00030                          coopy::store::DataSheet& remote, 
00031                          Patcher& output, const CompareFlags& flags);
00032 
00033   void doRowMapping(coopy::cmp::OrderResult& p2l_row_order,
00034                     coopy::cmp::OrderResult& p2r_row_order,
00035                     const coopy::cmp::OrderResult& p2l_col_order,
00036                     const coopy::cmp::OrderResult& p2r_col_order,
00037                     const coopy::cmp::CompareFlags& flags,
00038                     const coopy::cmp::CompareFlags& eflags,
00039                     coopy::store::SheetView& vpivot,
00040                     coopy::store::SheetView& vlocal,
00041                     coopy::store::SheetView& vremote,
00042                     bool approx);
00043 
00044   void doColMapping(const coopy::cmp::OrderResult& p2l_row_order,
00045                     const coopy::cmp::OrderResult& p2r_row_order,
00046                     coopy::cmp::OrderResult& p2l_col_order,
00047                     coopy::cmp::OrderResult& p2r_col_order,
00048                     const coopy::cmp::CompareFlags& flags,
00049                     const coopy::cmp::CompareFlags& eflags,
00050                     coopy::store::SheetView& vpivot,
00051                     coopy::store::SheetView& vlocal,
00052                     coopy::store::SheetView& vremote);
00053 };
00054 
00055 #endif
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Defines