#ifndef PACKAGEMANAGEMENT_RESOLVEBUILDORDER_H #define PACKAGEMANAGEMENT_RESOLVEBUILDORDER_H #include #include #include namespace RepoIndex { class Manager; class TaskInfo; class Dependency; class BuildOrderResolver { public: BuildOrderResolver(const Manager &manager); QStringList resolve(const ApplicationUtilities::StringVector &packages) const; static void printResults(const QStringList &results); private: void addDeps(QList &tasks, TaskInfo *task) const; void addDeps(QList &tasks, TaskInfo *task, const QList &dependencies) const; const Manager &m_manager; }; } // namespace PackageManagement #endif // PACKAGEMANAGEMENT_RESOLVEBUILDORDER_H