4 * @brief Declaration file for FolderCmp
9 #include "DiffFileData.h"
10 #include "Wrap_DiffUtils.h"
11 #include "ByteCompare.h"
12 #include "BinaryCompare.h"
13 #include "TimeSizeCompare.h"
14 #include "ImageCompare.h"
15 #include "PathContext.h"
22 * @brief Holds plugin-related paths and information.
26 PathContext origFileName;
27 PathContext filepathUnpacked;
28 PathContext filepathTransformed;
29 PackingInfo * infoUnpacker;
30 PrediffingInfo * infoPrediffer;
34 * @brief Class implementing file compare for folder compare.
35 * This class implements (called from DirScan.cpp) compare of two files
36 * during folder compare. The class implements both diffutils compare and
42 explicit FolderCmp(CDiffContext *pCtxt);
44 bool RunPlugins(PluginsContext * plugCtxt, String &errStr);
45 void CleanupAfterPlugins(PluginsContext *plugCtxt);
46 int prepAndCompareFiles(DIFFITEM &di);
51 DiffFileData m_diffFileData;
52 CDiffContext *const m_pCtxt;
55 std::unique_ptr<CompareEngines::DiffUtils> m_pDiffUtilsEngine;
56 std::unique_ptr<CompareEngines::ByteCompare> m_pByteCompare;
57 std::unique_ptr<CompareEngines::BinaryCompare> m_pBinaryCompare;
58 std::unique_ptr<CompareEngines::TimeSizeCompare> m_pTimeSizeCompare;
59 std::unique_ptr<CompareEngines::ImageCompare> m_pImageCompare;