// -*- c++ -*- #pragma once #include <string> #include <list> #include <memory> #include "task.h" class BuildConfiguration; class Settings; std::list<std::shared_ptr<Task>> taskFactory(const BuildConfiguration& config, const Settings& settings, const std::string& sourceDir); std::shared_ptr<Task> getNextTask(const std::list<std::shared_ptr<Task>>& allTasks, std::list<std::shared_ptr<Task>>& dirtyTasks); std::list<std::shared_ptr<Task>> getTasks(const Settings& settings);