#pragma once #include "ConfigFile.h" #include #include struct HFile { std::string filename; std::string directory; bool isProjectHFile; std::string filepath; HFile(const std::string& filename, const std::string& directory, bool isProjectHFile) : filename{filename}, directory{directory}, isProjectHFile{isProjectHFile}, filepath{directory+filename} {} friend bool operator<(const HFile& h1, const HFile& h2) { return h1.filename < h2.filename; } }; struct Utils { static std::string CommonPrefix(const std::string& s1, const std::string& s2); static void GetCppFiles(const ConfigFile& conf, std::set& cppFiles); static void GetCppAndHFiles(const ConfigFile& conf, std::set& hFiles, std::set& cppFiles); static void GetHFiles(const std::string& dependencyDir, const ConfigFile& conf, std::set& hFiles); };