2 * @file Wrap_DiffUtils.h
4 * @brief Declaration of Wrap_DiffUtils class.
11 class SubstitutionList;
17 namespace CompareEngines
21 * @brief A class wrapping GNU diffutils as compare engine.
23 * This class needs to have all its data as local copies, not as pointers
24 * outside. Lifetime can vary certainly be different from unrelated classes.
25 * Filters list being an exception - pcre structs are too complex to easily
26 * copy so we'll only keep a pointer to external list.
34 void SetCodepage(int codepage);
35 void SetCompareOptions(const CompareOptions& options);
36 void SetFilterList(std::shared_ptr<FilterList> plist);
37 void ClearFilterList();
38 void SetSubstitutionList(std::shared_ptr<SubstitutionList> plist);
39 void ClearSubstitutionList();
41 int CompareFiles(DiffFileData* diffData);
42 bool Diff2Files(struct change ** diffs, DiffFileData *diffData,
43 int * bin_status, int * bin_file) const;
45 void GetDiffCounts(int & diffs, int & trivialDiffs) const;
48 int m_ndiffs; /**< Real diffs found. */
49 int m_ntrivialdiffs; /**< Ignored diffs found. */
50 std::unique_ptr<CDiffWrapper> m_pDiffWrapper;
54 } // namespace CompareEngines