Pith - whittle
#pragma once
#include "model/FileRecord.h"
#include "core/FilterSettings.h"
#include <QHash>
#include <QList>
#include <QSet>
#include <QString>

namespace whittle {

	struct DiffResult {
		QList<FileRecord> sourceRows;
		QList<FileRecord> usbOnlyRows;
		QList<FileRecord> mergeList;

		QSet<QString> diffPaths;
		QSet<QString> destNewerPaths;

		int newFileCount  = 0;
		int diffFileCount = 0;
		qint64 newBytes  = 0;
		qint64 diffBytes = 0;
	};

	class Comparator {
	public:
		static DiffResult compare(const QHash<QString, FileRecord>& source,
			const QHash<QString, FileRecord>& usb,
			const FilterSettings& f);
	};

}